1#ifndef ROSE_BinaryAnalysis_ModelChecker_Periodic_H
2#define ROSE_BinaryAnalysis_ModelChecker_Periodic_H
3#include <featureTests.h>
4#ifdef ROSE_ENABLE_MODEL_CHECKER
6#include <Rose/BinaryAnalysis/ModelChecker/BasicTypes.h>
7#include <condition_variable>
12namespace BinaryAnalysis {
13namespace ModelChecker {
23 using Ptr = PeriodicPtr;
27 bool stopping_ =
false;
28 std::condition_variable cv_;
34 void start(
const EnginePtr&, std::chrono::duration<double> period);
42 virtual void step(
const EnginePtr&) = 0;
45 void run(
const EnginePtr&, std::chrono::duration<double> period);
Sawyer::SharedPointer< Node > Ptr
Reference counting pointer.