~CycleGraph();
void addEdge(const ModelAction *from, const ModelAction *to);
bool checkForCycles();
+ void addRMWEdge(const ModelAction *from, const ModelAction *to);
private:
CycleNode * getNode(const ModelAction *);
CycleNode(const ModelAction *action);
void addEdge(CycleNode * node);
std::vector<CycleNode *> * getEdges();
+ bool setRMW();
private:
const ModelAction *action;
std::vector<CycleNode *> edges;
+ bool hasRMW;
};
#endif