OpenDaVINCI  4.15.3
AbstractConferenceClientModule.h
Go to the documentation of this file.
1 
20 #ifndef OPENDAVINCI_BASE_ABSTRACTCONFERENCECLIENTMODULE_H_
21 #define OPENDAVINCI_BASE_ABSTRACTCONFERENCECLIENTMODULE_H_
22 
23 #include <string>
24 
29 #include "opendavinci/generated/odcore/data/LogMessage.h"
30 #include "opendavinci/generated/odcore/data/dmcp/ModuleExitCodeMessage.h"
31 
32 namespace odcore { namespace data { class Container; } }
33 namespace odcore { namespace io { namespace conference { class ContainerConference; } } }
34 
35 namespace odcore {
36  namespace base {
37  namespace module {
38 
39  using namespace std;
40 
51  private:
58 
65 
66  public:
75  AbstractConferenceClientModule(const int32_t &argc, char **argv, const string &name) throw (odcore::exceptions::InvalidArgumentException);
76 
78 
85 
86  protected:
87  virtual void setUp() = 0;
88 
89  virtual void tearDown() = 0;
90 
91  virtual odcore::data::dmcp::ModuleExitCodeMessage::ModuleExitCode body() = 0;
92 
93  public:
100  void toLogger(const odcore::data::LogMessage::LogLevel &logLevel, const string &msg);
101 
102  private:
103  odcore::base::Mutex m_loggerInitializedMutex;
104  bool m_loggerInitialized;
105  };
106 
107  }
108  }
109 } // odcore::base::module
110 
111 #endif /*OPENDAVINCI_BASE_ABSTRACTCONFERENCECLIENTMODULE_H_*/
Definition: base/Mutex.h:49
Definition: AbstractConferenceClientModule.h:50
#define OPENDAVINCI_API
Definition: opendavinci.h:67
Definition: ManagedClientModule.h:52
Definition: ContainerConference.h:43