small changes
[c11tester.git] / clockvector.h
index 82f1e3774608229f33f1379e9037e37fff5b87a2..1a36a39dc040838f2c37b8166a8faf9b9a6a80fd 100644 (file)
@@ -5,24 +5,22 @@
 #ifndef __CLOCKVECTOR_H__
 #define __CLOCKVECTOR_H__
 
-#include "threads.h"
 #include "mymemory.h"
-
-typedef unsigned int modelclock_t;
-/* Forward declaration */
-class ModelAction;
+#include "modeltypes.h"
+#include "classlist.h"
 
 class ClockVector {
 public:
-       ClockVector(ClockVector *parent = NULL, ModelAction *act = NULL);
+       ClockVector(ClockVector *parent = NULL, const ModelAction *act = NULL);
        ~ClockVector();
-       void merge(ClockVector *cv);
-       bool synchronized_since(ModelAction *act) const;
+       bool merge(const ClockVector *cv);
+       bool minmerge(const ClockVector *cv);
+       bool synchronized_since(const ModelAction *act) const;
 
        void print() const;
        modelclock_t getClock(thread_id_t thread);
 
-       MEMALLOC
+       SNAPSHOTALLOC
 private:
        /** @brief Holds the actual clock data, as an array. */
        modelclock_t *clock;
@@ -31,4 +29,4 @@ private:
        int num_threads;
 };
 
-#endif /* __CLOCKVECTOR_H__ */
+#endif /* __CLOCKVECTOR_H__ */