source: pacpusframework/branches/2.0-beta1/include/Pacpus/PacpusTools/PosixShMem.h@ 92

Last change on this file since 92 was 89, checked in by morasjul, 12 years ago

PACPUS 2.0 Beta deployed in new branch

Major changes:
-Add communication interface between components
-Add examples for communications interface (TestComponents)
-Move to Qt5 support

  • Property svn:executable set to *
File size: 1.3 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 <Pacpus/PacpusTools/ShMemBase.h>
21
22/// @todo Documentation
23class PosixShMem
24 : public ShMemBase
25{
26public:
27 /// @todo Documentation
28 PosixShMem(const char * name, int size);
29 /// @todo Documentation
30 virtual ~PosixShMem();
31
32 /// @todo Documentation
33 virtual void *read();
34 /// @todo Documentation
35 virtual void write(void *data, int size, unsigned long offset = 0);
36 /// @todo Documentation
37 virtual bool wait(unsigned long timeout = 0);
38 /// @todo Documentation
39 virtual void lockMemory();
40 /// @todo Documentation
41 virtual void unlockMemory();
42
43private:
44 QSystemSemaphore * event_;
45 QSharedMemory * memory_;
46};
47
48#endif // DEF_PACPUS_POSIXSHMEM_H
Note: See TracBrowser for help on using the repository browser.