start of new file
[IRC.git] / Robust / src / Analysis / TaskStateAnalysis / TaskIndex.java
1 package Analysis.TaskStateAnalysis;
2 import IR.TaskDescriptor;
3
4 public class TaskIndex {
5     TaskDescriptor td;
6     int index;
7     boolean runtime;
8     public TaskIndex(TaskDescriptor td, int index) {
9         this.td=td;
10         this.index=index;
11         runtime=false;
12     }
13
14     public TaskIndex() {
15         runtime=true;
16     }
17
18     public boolean isRuntime() {
19         return runtime;
20     }
21
22     public int hashCode() {
23         if (runtime)
24             return 71;
25         return td.hashCode()^index;
26     }
27
28     public boolean equals(Object o) {
29         if (o instanceof TaskIndex) {
30             TaskIndex ti=(TaskIndex) o;
31             if (ti.runtime==runtime)
32                 return true;
33
34             if (ti.index==index && ti.td==td)
35                 return true;
36         }
37         return false;
38     }
39
40     public TaskDescriptor getTask() {
41         return td;
42     }
43     public int getIndex() {
44         return index;
45     }
46 }