00001
00002 #ifndef SHAREDMEM_HH
00003 #define SHAREDMEM_HH
00004
00005 #include "rcs_defs.hh"
00006
00007 extern "C"
00008 {
00009 #ifndef UNDER_CE
00010 #include <sys/types.h>
00011 #include <stddef.h>
00012 #endif
00013 #include "_shm.h"
00014 }
00015
00016 #define RCS_SHAREDMEM_NOCREATE 0x00
00017 #define RCS_SHAREDMEM_CREATE 0x01
00018
00019 class RCS_EXPORT RCS_SHAREDMEM
00020 {
00021 public:
00022 RCS_SHAREDMEM (key_t key, size_t size, int oflag, int mode = 0);
00023 ~RCS_SHAREDMEM ();
00024 int nattch ();
00025 int create_errno;
00026 void *addr;
00027 int delete_totally;
00028
00029 private:
00030 shm_t * shm;
00031 public:
00032 int created;
00033
00034 private:
00035 RCS_SHAREDMEM (RCS_SHAREDMEM & shm);
00036 };
00037
00038 #endif