Main Page   Class Hierarchy   Alphabetical List   Data Structures   File List   Data Fields   Globals  

locmem.hh

Go to the documentation of this file.
00001 /************************************************************************
00002 File: locmem.hh
00003 Purpose: Defines LOCMEM which is a derived class of CMS that serves primarily
00004 to provide addresses that match when matching buffer names are passed to
00005 the constructor. It is useful in allowing control modules to use the
00006 same inteface to communicate as would be required if they were not
00007 running in the same process even though to use LOCMEM they must be.
00008 **********************************************************************/
00009 
00010 #ifndef LOCMEM_HH
00011 #define LOCMEM_HH
00012 
00013 
00014 
00015 #include "cms.hh"               // class CMS
00016 #include "linklist.hh"          // class RCS_LINKED_LIST
00017 
00018 struct BUFFERS_LIST_NODE
00019 {
00020   void *addr;
00021   long size;
00022   char name[64];
00023 };
00024 
00025 class LOCMEM:public CMS
00026 {
00027 public:
00028   LOCMEM (char *bufline, char *procline, int set_to_server =
00029           0, int set_to_master = 0);
00030     virtual ~ LOCMEM ();
00031   CMS_STATUS main_access (void *_local);
00032 
00033 protected:
00034   void *lm_addr;
00035   int buffer_id;
00036   BUFFERS_LIST_NODE *my_node;
00037   static RCS_LINKED_LIST *buffers_list;
00038 };
00039 
00040 
00041 
00042 
00043 
00044 
00045 
00046 
00047 
00048 
00049 
00050 
00051 
00052 
00053 
00054 
00055 #endif

Generated on Sun Dec 2 15:56:50 2001 for rcslib by doxygen1.2.11.1 written by Dimitri van Heesch, © 1997-2001