X-Git-Url: http://demsky.eecs.uci.edu/git/?a=blobdiff_plain;f=scanalysis.h;h=0cd2d67e704d942c93fdf93404c8d63010e490ed;hb=49e01b46a51804ca1aef3e4c260d832b38d40bdc;hp=79f78f1c00d630b6a1557015d2c5e4683f231879;hpb=38cb7400c16ad0a04355ec77af2bf5da2dbfaad5;p=model-checker.git diff --git a/scanalysis.h b/scanalysis.h index 79f78f1..0cd2d67 100644 --- a/scanalysis.h +++ b/scanalysis.h @@ -3,9 +3,9 @@ #include "traceanalysis.h" #include "hashtable.h" -class SCAnalysis : public Trace_Analysis { +class SCAnalysis : public TraceAnalysis { public: - SCAnalysis(); + SCAnalysis(const ModelExecution *execution); ~SCAnalysis(); virtual void analyze(action_list_t *); @@ -18,8 +18,11 @@ class SCAnalysis : public Trace_Analysis { action_list_t * generateSC(action_list_t *); bool processRead(ModelAction *read, ClockVector *cv); ModelAction * getNextAction(); + bool merge(ClockVector *cv, const ModelAction *act, ClockVector *cv2); int maxthreads; - HashTable * cvmap; - SnapVector * threadlists; + HashTable *cvmap; + HashTable *cycleset; + SnapVector *threadlists; + const ModelExecution *execution; }; #endif