#ifndef __CDYSHM_H #define __CDYSHM_H #ifdef _WINDOWS64 #ifdef PUB_TOOLS_EXPORTS #define PUB_TOOLS_API __declspec(dllexport) #else #define PUB_TOOLS_API __declspec(dllimport) #endif #else #define PUB_TOOLS_API #endif #include #ifndef _WINDOWS64 #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #else #include #include #include #include #include #include #include #endif class PUB_TOOLS_API CDyShm { public: CDyShm(); ~CDyShm(); private: int m_TotalShmSize; char* m_pShm; public: #ifndef _WINDOWS64 int InitShm(key_t key, int size); #else int InitShm(const char* file_name, const int size); #endif int SetShmSize(int nSize); int GetShmSize(int &nSize); int WriteShm(char * inShm, int inSize, int ptrOffset); int ReadShm(char * &outShm, int outSize, int ptrOffset); char* MapFile(const char* file_name, const int stab_total_size); }; #endif