#ifndef __GLOBMEM__ #define __GLOBMEM__ #ifndef _WIN32 #include #include #include #include #include #include #include #else #include #include #include #endif #include #include #include #include "glob/SingletonTemplate.h" #include "glob/HSConfig.h" #include "glob/ConfigMag.h" using namespace std; class GlobMem : public SingletonTemplate { friend class SingletonTemplate; protected: GlobMem(); virtual ~GlobMem(); private: // static map tablemap; // static map blockmap; map m_tablemap; map m_blockmap; void *globmmap_ix_g; size_t globmmap_size; public: void *GetTablePtr(const string &); private: size_t OpenMap(int *fd, const string &path, size_t size); size_t ResizeMap(int *fd, size_t size); void *CreateMmap(int fd, size_t size); void *OpenMap(const string &path, const string &mapname, size_t size); }; #endif