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

rpcmem.hh

Go to the documentation of this file.
00001 /*************************************************************************
00002 * File:rpcmem.hh                                                         *
00003 * Authors: Fred Proctor, Will Shackleford                                *
00004 * Purpose: C++ Header file for RPC client that reads and writes          *
00005 *          to a local NML buffer for remote processes.                   *
00006 * Includes:                                                              *
00007 *          1. class RPCMEM                                               *
00008 *************************************************************************/
00009 
00010 #ifndef RPCMEM_HH
00011 #define RPCMEM_HH
00012 
00013 #include "rcs_defs.hh"          /* RCS_EXPORT, EXTERN_C_STD_HEADERS */
00014 
00015 #ifdef EXTERN_C_STD_HEADERS
00016 extern "C"
00017 {
00018 #endif
00019 
00020 #include <stdio.h>              /* NULL */
00021 #include <stddef.h>             /* size_t */
00022 #if 0
00023 //#include <rpc/rpc.h>          /* Needed by other RPC headers on some plats.*/
00024 //#include <rpc/clnt.h>         /* struct CLIENT, enum clnt_stat */
00025 #if defined(VXWORKS)
00026 #include <systime.h>            /* struct timeval */
00027 #elif defined(__MSDOS__)
00028 #include <sys/nfs_time.h>       /* struct timeval */
00029 #else
00030 #include <sys/time.h>           /* struct timeval */
00031 #endif
00032 #endif
00033 
00034 #ifdef EXTERN_C_STD_HEADERS
00035 }
00036 #endif
00037 
00038 #include "cms.hh"               /* class CMS */
00039 //#include "rpc_host.hh"                /* class RPC_HOST */
00040 
00041 class RCS_EXPORT RPCMEM:public CMS
00042 {
00043 public:
00044   RPCMEM (char *bufline, char *procline);
00045     virtual ~ RPCMEM ();
00046 
00047   /* Overloaded CMS functions. */
00048   CMS_STATUS clear ();
00049   int check_if_read ();
00050   CMS_STATUS read ();
00051   CMS_STATUS peek ();
00052   CMS_STATUS write (void *data);
00053   CMS_STATUS write_if_read (void *data);
00054   int login (const char *, const char *);
00055 
00056 private:
00057 
00058   //RPC_HOST *rpc_host;         /* pointer to info about remote host */
00059   void *clnt;                   /* Structure passed to clnt_ functions. */
00060   void *timeval_time_out;       /* Time in seconds and microsec for time_out */
00061   int remport;                  /* Port number of remote server returned by */
00062   /* clnttcp_create */
00063   int open ();                  /* initialize clnt & connect to remote server */
00064   int close ();                 /* disconnect from remote server  */
00065 };
00066 
00067 #endif

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