00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034 #ifndef WIN32
00035
00036
00037
00038
00039 #ifdef G4VIS_BUILD_VRML_DRIVER
00040
00041
00042
00043 #include <stdio.h>
00044 #include "G4FRClient.hh"
00045 #include "FRClient.h"
00046
00047 G4FRClient::G4FRClient()
00048 {
00049 fFRClient = NULL;
00050 fPort = -1;
00051 connected = false;
00052 }
00053
00054 G4FRClient::~G4FRClient()
00055 {
00056 if (connected)
00057 this->close();
00058 }
00059
00060 G4bool G4FRClient::connect(const char *hostname, G4int port)
00061 {
00062 if (connected)
00063 return false;
00064
00065 delete fFRClient;
00066 fFRClient = new FRClient();
00067
00068 fPort = port;
00069 connected = (fFRClient->connect(hostname, port) < 0) ? false : true ;
00070
00071 return connected;
00072 }
00073
00074 void G4FRClient::close()
00075 {
00076 delete fFRClient;
00077 fFRClient = NULL;
00078 connected = false;
00079 }
00080
00081 G4int G4FRClient::getPort() const
00082 {
00083 return fPort;
00084 }
00085
00086 G4FRClient& G4FRClient::operator << (G4int val)
00087 {
00088 char buf[64];
00089 sprintf(buf, "%d", val);
00090 fFRClient->send(buf);
00091 return *this;
00092 }
00093
00094 G4FRClient& G4FRClient::operator << (G4double val)
00095 {
00096 char buf[64];
00097 sprintf(buf, "%g", val);
00098 fFRClient->send(buf);
00099 return *this;
00100 }
00101
00102 G4FRClient& G4FRClient::operator << (const char *pval)
00103 {
00104 fFRClient->send(pval);
00105 return *this;
00106 }
00107
00108 G4FRClient& G4FRClient::operator << (G4FRClient& (*func)(G4FRClient&))
00109 {
00110 return func(*this);
00111 }
00112
00115
00116
00117
00118
00120
00121 #endif //G4VIS_BUILD_VRML_DRIVER
00122
00123 #endif //WIN32
00124