X-Git-Url: http://plrg.eecs.uci.edu/git/?p=model-checker.git;a=blobdiff_plain;f=clockvector.h;h=f2716dbd90497c9f260b1730bee9d25bc9c622fd;hp=470914b1ae2b08b19248b5aba29142c990232b4f;hb=adccaa0225ce474d5d7a8e0833c11d0c0fdf944d;hpb=9b784333e1a62ed6d258e96502a5733041389c8f diff --git a/clockvector.h b/clockvector.h index 470914b..f2716db 100644 --- a/clockvector.h +++ b/clockvector.h @@ -8,6 +8,7 @@ #include "threads.h" #include "mymemory.h" +typedef unsigned int modelclock_t; /* Forward declaration */ class ModelAction; @@ -15,16 +16,17 @@ class ClockVector { public: ClockVector(ClockVector *parent = NULL, ModelAction *act = NULL); ~ClockVector(); - void merge(ClockVector *cv); - bool synchronized_since(ModelAction *act) const; + void merge(const ClockVector *cv); + bool synchronized_since(const ModelAction *act) const; + bool has_synchronized_with(const ClockVector *cv) const; void print() const; - int getClock(thread_id_t thread); + modelclock_t getClock(thread_id_t thread); MEMALLOC private: /** @brief Holds the actual clock data, as an array. */ - int *clock; + modelclock_t *clock; /** @brief The number of threads recorded in clock (i.e., its length). */ int num_threads;