source: pacpusframework/trunk/include/Pacpus/PacpusTools/PosixShMem.h

Last change on this file was 350, checked in by nguyenhu, 9 years ago

add Zoe types and shared memory for linux

  • Property svn:executable set to *
File size: 1.4 KB
Line 
1// %pacpus:license{
2// This file is part of the PACPUS framework distributed under the
3// CECILL-C License, Version 1.0.
4// %pacpus:license}
5/// @file
6/// @author Firstname Surname <firstname.surname@utc.fr>
7/// @date Month, Year
8/// @version $Id: PosixShMem.h 76 2013-01-10 17:05:10Z kurdejma $
9/// @copyright Copyright (c) UTC/CNRS Heudiasyc 2006 - 2013. All rights reserved.
10/// @brief Brief description.
11///
12/// Detailed description.
13
14#ifndef DEF_PACPUS_POSIXSHMEM_H
15#define DEF_PACPUS_POSIXSHMEM_H
16
17#include <QSharedMemory>
18#include <QSystemSemaphore>
19
20#include "ShMemBase.h"
21#include "PacpusToolsConfig.h"
22
23/// @todo Documentation
24class PACPUSTOOLS_API PosixShMem
25 : public ShMemBase
26{
27public:
28 /// @todo Documentation
29 PosixShMem(const char * name, int size);
30 /// @todo Documentation
31 virtual ~PosixShMem();
32
33 /// @todo Documentation
34 virtual void *read();
35 /// @todo Documentation
36 virtual void read(void * mem, int size);
37 /// @todo Documentation
38 virtual void write(void *data, int size, unsigned long offset = 0);
39 /// @todo Documentation
40 virtual bool wait(unsigned long timeout = 0);
41 /// @todo Documentation
42 virtual void lockMemory();
43 /// @todo Documentation
44 virtual void unlockMemory();
45
46private:
47 QSystemSemaphore * event_;
48 QSharedMemory * memory_;
49};
50
51#endif // DEF_PACPUS_POSIXSHMEM_H
Note: See TracBrowser for help on using the repository browser.