COVISE Core
Public Member Functions | Static Public Member Functions | Static Public Attributes | Private Types | Private Attributes | Static Private Attributes | Friends | List of all members
covise::SharedMemory Class Reference

#include <covise_shm.h>

Collaboration diagram for covise::SharedMemory:
Collaboration graph
[legend]

Public Member Functions

 SharedMemory ()
 
 SharedMemory (int shm_key, shmSizeType shm_size, int noDelete=0)
 
 SharedMemory (int *shm_key, shmSizeType shm_size)
 
 ~SharedMemory ()
 
voidget_pointer (int no)
 
voidget_pointer ()
 
SharedMemoryget_next_shm ()
 
int get_seq_no ()
 
int is_attached ()
 
int detach ()
 
int get_key ()
 
shmSizeType get_size ()
 
void get_shmlist (int *)
 
void print ()
 

Static Public Member Functions

static int num_attached ()
 

Static Public Attributes

static shmCallbackshmC = NULL
 

Private Types

enum  state { attached , detached , invalid , valid }
 

Private Attributes

class SharedMemorynext
 
int shmfd
 
int shmid
 
shmSizeType size
 
char * data
 
state shmstate
 
int key
 
int seq_no
 
int noDelete
 

Static Private Attributes

static class SharedMemory ** shm_array = 0L
 
static List< SharedMemory > * shmlist = 0L
 
static int global_seq_no = 0
 

Friends

class DataManagerProcess
 
SHMEXPORT SharedMemoryget_shared_memory ()
 

Member Enumeration Documentation

◆ state

Enumerator
attached 
detached 
invalid 
valid 

Constructor & Destructor Documentation

◆ SharedMemory() [1/3]

covise::SharedMemory::SharedMemory ( )
inline

◆ SharedMemory() [2/3]

SharedMemory::SharedMemory ( int  shm_key,
shmSizeType  shm_size,
int  noDelete = 0 
)

◆ SharedMemory() [3/3]

SharedMemory::SharedMemory ( int *  shm_key,
shmSizeType  shm_size 
)

◆ ~SharedMemory()

SharedMemory::~SharedMemory ( )

Member Function Documentation

◆ detach()

int SharedMemory::detach ( )

◆ get_key()

int covise::SharedMemory::get_key ( )
inline

◆ get_next_shm()

SharedMemory * covise::SharedMemory::get_next_shm ( )
inline

◆ get_pointer() [1/2]

void * covise::SharedMemory::get_pointer ( )
inline

◆ get_pointer() [2/2]

void * covise::SharedMemory::get_pointer ( int  no)
inline

◆ get_seq_no()

int covise::SharedMemory::get_seq_no ( )
inline

◆ get_shmlist()

void SharedMemory::get_shmlist ( int *  ptr)

◆ get_size()

shmSizeType covise::SharedMemory::get_size ( )
inline

◆ is_attached()

int covise::SharedMemory::is_attached ( )
inline

◆ num_attached()

static int covise::SharedMemory::num_attached ( )
inlinestatic

◆ print()

void covise::SharedMemory::print ( )
inline

Friends And Related Function Documentation

◆ DataManagerProcess

friend class DataManagerProcess
friend

◆ get_shared_memory

SHMEXPORT SharedMemory * get_shared_memory ( )
friend

Member Data Documentation

◆ data

char* covise::SharedMemory::data
private

◆ global_seq_no

int SharedMemory::global_seq_no = 0
staticprivate

◆ key

int covise::SharedMemory::key
private

◆ next

class SharedMemory* covise::SharedMemory::next
private

◆ noDelete

int covise::SharedMemory::noDelete
private

◆ seq_no

int covise::SharedMemory::seq_no
private

◆ shm_array

SharedMemory ** SharedMemory::shm_array = 0L
staticprivate

◆ shmC

shmCallback * SharedMemory::shmC = NULL
static

◆ shmfd

int covise::SharedMemory::shmfd
private

◆ shmid

int covise::SharedMemory::shmid
private

◆ shmlist

List< SharedMemory > * SharedMemory::shmlist = 0L
staticprivate

◆ shmstate

state covise::SharedMemory::shmstate
private

◆ size

shmSizeType covise::SharedMemory::size
private

The documentation for this class was generated from the following files: