Main Page   Class Hierarchy   Compound List   File List   Compound Members  

CAVERNnet_extendedParallelTcp_c.hxx

00001 /******************************************************************
00002  * CAVERNsoft
00003  * Copyright (C) 1994-2000 Electronic Visualization Laboratory,
00004  * all rights reserved
00005  * By Jason Leigh, Yong-joo Cho, Naveen Krishnaprasad, Chris Scharver,
00006  * Stuart Bailey, Atul Nayak, Shalini Venkataraman
00007  * University of Illinois at Chicago
00008  * 
00009  * This publication and its text and code may not be copied for commercial 
00010  * use without the express written permission of the University of Illinois
00011  * at Chicago.
00012  * The contributors disclaim any representation of warranty: use this
00013  * code at your own risk.
00014  * Direct questions, comments etc to cavern@evl.uic.edu
00015  ******************************************************************/
00016  
00017 #ifndef _CAVERNPLUS_EPARALLEL_TCP_C
00018 #define _CAVERNPLUS_EPARALLEL_TCP_C
00019 
00020 #include "CAVERNnet_parallelTcp_c.hxx"
00021 
00037 class CAVERNnet_extendedParallelTcpClient_c : public CAVERNnet_parallelTcpClient_c 
00038 {
00039 public:
00040         CAVERNnet_extendedParallelTcpClient_c();
00041         virtual ~CAVERNnet_extendedParallelTcpClient_c();
00042 
00046         int readChar(char& value);
00047 
00051         int writeChar(char value);
00052         
00056         int readInt(int& value);
00057         
00062         int readIntArray(int* intArray, int size);
00063         
00067         int writeInt(int value);
00068         
00073         int writeIntArray(int* intArray, int size);
00074         
00078         int readInt32(int32& value);
00079         
00084         int readInt32Array(int32* int32Array, int size);
00085         
00089         int writeInt32(int32 value);
00090         
00095         int writeInt32Array(int32* int32Array, int size);
00096         
00100         int readInt64(int64& value);
00101         
00106         int readInt64Array(int64* int64Array, int size);
00107         
00111         int writeInt64(int64 value);
00112         
00117         int writeInt64Array(int64* int64Array, int size);
00118         
00122         int readLong(long& value);
00123         
00128         int readLongArray(long* longArray, int size);
00129         
00133         int writeLong(long value);
00134         
00139         int writeLongArray(long* longArray, int size);
00140         
00144         int readFloat(float& value);
00145         
00150         int readFloatArray(float* floatArray, int size);
00151         
00155         int writeFloat(float value);
00156         
00161         int writeFloatArray(float* floatArray, int size);
00162         
00166         int readDouble(double& value);
00167         
00172         int readDoubleArray(double* doubleArray, int size);
00173         
00177         int writeDouble(double value);
00178         
00183         int writeDoubleArray(double* doubleArray, int size);
00184 
00185 private:
00186         int int_size;
00187         int char_size;
00188         int int32_size;
00189         int int64_size; 
00190         int long_size;
00191         int float_size;
00192         int double_size;
00193 
00194         char* int_buffer;
00195         char* int32_buffer;
00196         char* int64_buffer;
00197         char* long_buffer;
00198         char* float_buffer;
00199         char* double_buffer;
00200 };
00201 
00204 class CAVERNnet_extendedParallelTcpServer_c : public CAVERNnet_parallelTcpServer_c
00205 {
00206 public:
00211         CAVERNnet_extendedParallelTcpClient_c *checkForNewConnections();
00212 };
00213 
00214 #endif
00215 

Generated at Mon Jul 2 14:24:42 2001 for CAVERNsoft by doxygen1.2.8-20010617 written by Dimitri van Heesch, © 1997-2001