#ifndef IVMODULE_H #define IVMODULE_H #include #include "modulecomm.h" namespace iv { class ivmodule { public: ivmodule(); ~ivmodule(); public: void start(); virtual void modulerun(); void setmodulename(const char * strmodulename); #ifdef USE_PLUS_MODULECOMM void setdefaultcommtype(iv::modulecomm::ModuleComm_TYPE xtype); iv::modulecomm::ModuleComm_TYPE getdefefaultcommtype(); #endif public: public: bool mbrun = true; private: std::thread * mpthread; #ifdef USE_PLUS_MODULECOMM #ifdef MODULECOMM_DEFAULT_USE_INTER iv::modulecomm::ModuleComm_TYPE mdefcommtype = iv::modulecomm::ModuleComm_INTERIOR; #else #ifdef MODULECOMM_DEFAULT_USE_FASTRTPS iv::modulecomm::ModuleComm_TYPE mdefcommtype = iv::modulecomm::ModuleComm_FASTRTPS; #else iv::modulecomm::ModuleComm_TYPE mdefcommtype = iv::modulecomm::ModuleComm_SHAREMEM; #endif #endif #endif char mstrmodulename[256]; }; } #endif // IVMODULE_H