ivmodule.h 965 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. #ifndef IVMODULE_H
  2. #define IVMODULE_H
  3. #include <thread>
  4. #include "modulecomm.h"
  5. namespace iv {
  6. class ivmodule
  7. {
  8. public:
  9. ivmodule();
  10. ~ivmodule();
  11. public:
  12. void start();
  13. virtual void modulerun();
  14. void setmodulename(const char * strmodulename);
  15. #ifdef USE_PLUS_MODULECOMM
  16. void setdefaultcommtype(iv::modulecomm::ModuleComm_TYPE xtype);
  17. iv::modulecomm::ModuleComm_TYPE getdefefaultcommtype();
  18. #endif
  19. public:
  20. public:
  21. bool mbrun = true;
  22. private:
  23. std::thread * mpthread;
  24. #ifdef USE_PLUS_MODULECOMM
  25. #ifdef MODULECOMM_DEFAULT_USE_INTER
  26. iv::modulecomm::ModuleComm_TYPE mdefcommtype = iv::modulecomm::ModuleComm_INTERIOR;
  27. #else
  28. #ifdef MODULECOMM_DEFAULT_USE_FASTRTPS
  29. iv::modulecomm::ModuleComm_TYPE mdefcommtype = iv::modulecomm::ModuleComm_FASTRTPS;
  30. #else
  31. iv::modulecomm::ModuleComm_TYPE mdefcommtype = iv::modulecomm::ModuleComm_SHAREMEM;
  32. #endif
  33. #endif
  34. #endif
  35. char mstrmodulename[256];
  36. };
  37. }
  38. #endif // IVMODULE_H