#ifndef POSIXSHMEM_H #define POSIXSHMEM_H #include #include #include "ShMemBase.h" /* union semun{ int val ; struct semid_ds * buf; unsigned short array[1]; }; */ class PosixShMem : public ShMemBase { public: PosixShMem(const char * name, int size); virtual ~PosixShMem(); virtual void *read(); virtual void write(void *data, int size, unsigned long offset = 0); virtual bool wait(unsigned long timeout = 0); virtual void lockMemory(); virtual void unlockMemory(); protected: private: // int shMemHandle_; // int semaphore_id; // semun sem_arg_ctl; QSystemSemaphore * event_; QSharedMemory * memory_; }; #endif // POSIXSHMEM_H