OpenDaVINCI  4.16.0
InterruptibleModule.h
Go to the documentation of this file.
1 
20 #ifndef OPENDAVINCI_CORE_BASE_MODULE_INTERRUPTIBLEMODULE_H_
21 #define OPENDAVINCI_CORE_BASE_MODULE_INTERRUPTIBLEMODULE_H_
22 
26 #include "opendavinci/generated/odcore/data/dmcp/ModuleExitCodeMessage.h"
27 
28 namespace odcore {
29  namespace base {
30  namespace module {
31 
32 class Breakpoint;
33 
34  using namespace std;
35 
41  protected:
46 
47  private:
54 
60  InterruptibleModule& operator=(const InterruptibleModule&);
61 
62  public:
63  virtual ~InterruptibleModule();
64 
71  void setBreakpoint(Breakpoint *bp);
72 
76  virtual odcore::data::dmcp::ModuleExitCodeMessage::ModuleExitCode runModule() = 0;
77 
78  private:
79  virtual void calledGetModuleState();
80 
81  private:
82  Mutex m_breakpointMutex;
83  Breakpoint *m_breakpoint;
84  };
85 
86  }
87  }
88 } // odcore::base::module
89 
90 #endif /*OPENDAVINCI_CORE_BASE_MODULE_INTERRUPTIBLEMODULE_H_*/
Definition: base/Mutex.h:49
#define OPENDAVINCI_API
Definition: opendavinci.h:67
Definition: Breakpoint.h:33
Definition: AbstractModule.h:41
Definition: InterruptibleModule.h:40