#ifndef INSTALL_SHM_H | |
#define INSTALL_SHM_H | |
#ifdef UNICODE | |
#define createSharedData createSharedDataW | |
#define destroySharedData destroySharedDataW | |
#define getSharedData getSharedDataW | |
#define setSharedData setSharedDataW | |
#endif | |
/* Shared memory utilities */ | |
/** | |
* Creates and initializes a shared memory segment | |
* with the specified size in bytes. The id for the | |
* shared memory segment is stored in the id argument | |
* and can be used from any process. It must be freed | |
* with free(). | |
* | |
* Returns 0 if success. | |
*/ | |
extern int createSharedData(_TCHAR** id, int size); | |
/** | |
* Destroy the shared memory segment specified by the | |
* id argument. The id is the same as the one return | |
* by createSharedData(). This function must be called | |
* by the same process that created the segment. | |
* | |
* Returns 0 if success. | |
*/ | |
extern int destroySharedData(_TCHAR* id); | |
/** | |
* Gets a copy of the shared memory segment specified | |
* by the id argument. The copy is stored in the data | |
* argument as a null terminated string and must be | |
* freed by free(). | |
* | |
* Returns 0 if success. | |
*/ | |
extern int getSharedData(_TCHAR* id, _TCHAR** data); | |
/** | |
* Sets the shared memory segment specified by the id | |
* argument with a null terminated string specified by | |
* data. | |
* | |
* Returns 0 if sucess. | |
*/ | |
extern int setSharedData(_TCHAR* id, _TCHAR* data); | |
#endif /* INSTALL_SHM_H */ | |