Go to the documentation of this file.
39 #ifndef vtkSocketCommunicator_h
40 #define vtkSocketCommunicator_h
47 #ifdef VTK_WORDS_BIGENDIAN
48 # define vtkSwap4 vtkByteSwap::Swap4LE
49 # define vtkSwap4Range vtkByteSwap::Swap4LERange
50 # define vtkSwap8 vtkByteSwap::Swap8LE
51 # define vtkSwap8Range vtkByteSwap::Swap8LERange
53 # define vtkSwap4 vtkByteSwap::Swap4BE
54 # define vtkSwap4Range vtkByteSwap::Swap4BERange
55 # define vtkSwap8 vtkByteSwap::Swap8BE
56 # define vtkSwap8Range vtkByteSwap::Swap8BERange
74 unsigned long msec = 0);
100 int remoteHandle,
int tag);
102 int remoteHandle,
int tag);
133 int operation,
int destProcessId);
136 Operation *operation,
int destProcessId);
213 { this->BufferMessage =
true; }
239 const char* logName);
241 const char* logName);
243 const char* logName);
246 void*
data,
int wordSize,
int numWords,
int tag,
const char* logName);
253 int tag,
const char* logName);
260 int SelectSocket(
int socket,
unsigned long msec);
272 int TagMessageLength;
275 class vtkMessageBuffer;
276 vtkMessageBuffer* ReceivedMessageBuffer;
virtual int LogToFile(const char *name)
virtual int ReduceVoidArray(const void *sendBuffer, void *recvBuffer, vtkIdType length, int type, Operation *operation, int destProcessId)
GLsizei GLsizei GLenum GLenum const GLvoid * data
#define vtkGetObjectMacro(name, type)
static vtkSocketCommunicator * New()
virtual int ScatterVoidArray(const void *sendBuffer, void *recvBuffer, vtkIdType length, int type, int srcProcessId)
Used to send/receive messages in a multiprocess environment.
Process communication using Sockets.
virtual int LogToFile(const char *name, int append)
virtual int AllReduceVoidArray(const void *sendBuffer, void *recvBuffer, vtkIdType length, int type, Operation *operation)
#define vtkTypeMacro(thisClass, superclass)
int CheckForErrorInternal(int id)
virtual int SendVoidArray(const void *data, vtkIdType length, int type, int remoteHandle, int tag)
GLuint GLsizei GLsizei * length
virtual ostream * GetLogStream()
void SetSocket(vtkClientSocket *)
int ReceiveTagged(void *data, int wordSize, int numWords, int tag, const char *logName)
virtual int ReduceVoidArray(const void *sendBuffer, void *recvBuffer, vtkIdType length, int type, int operation, int destProcessId)
#define vtkSetClampMacro(name, type, min, max)
GLuint const GLchar * name
virtual int ConnectTo(const char *hostName, int port)
int ReceivePartialTagged(void *data, int wordSize, int numWords, int tag, const char *logName)
virtual int WaitForConnection(int port)
bool HasBufferredMessages()
Encapsulate a socket that accepts connections.
virtual int ReceiveVoidArray(void *data, vtkIdType length, int type, int remoteHandle, int tag)
int ReceivedTaggedFromBuffer(void *data, int wordSize, int numWords, int tag, const char *logName)
void FixByteOrder(void *data, int wordSize, int numWords)
a simple class to control print indentation
#define VTKPARALLELCORE_EXPORT
int SendTagged(const void *data, int wordSize, int numWords, int tag, const char *logName)
#define vtkGetMacro(name, type)
int SwapBytesInReceivedData
vtkBooleanMacro(IgnoreDriverBugs, bool)
virtual void SetLogStream(ostream *stream)
vtkSetMacro(IgnoreDriverBugs, bool)
virtual int AllReduceVoidArray(const void *sendBuffer, void *recvBuffer, vtkIdType length, int type, int operation)
Encapsulates a client socket.
virtual int AllGatherVVoidArray(const void *sendBuffer, void *recvBuffer, vtkIdType sendLength, vtkIdType *recvLengths, vtkIdType *offsets, int type)
virtual int GatherVoidArray(const void *sendBuffer, void *recvBuffer, vtkIdType length, int type, int destProcessId)
virtual int ScatterVVoidArray(const void *sendBuffer, void *recvBuffer, vtkIdType *sendLengths, vtkIdType *offsets, vtkIdType recvLength, int type, int srcProcessId)
int ClientSideHandshake()
void BufferCurrentMessage()
virtual int GatherVVoidArray(const void *sendBuffer, void *recvBuffer, vtkIdType sendLength, vtkIdType *recvLengths, vtkIdType *offsets, int type, int destProcessId)
virtual void CloseConnection()
virtual void SetNumberOfProcesses(int num)
virtual int BroadcastVoidArray(void *data, vtkIdType length, int type, int srcProcessId)
virtual int AllGatherVoidArray(const void *sendBuffer, void *recvBuffer, vtkIdType length, int type)
int ServerSideHandshake()
GLuint GLuint GLsizei GLenum type
void PrintSelf(ostream &os, vtkIndent indent)
void LogTagged(const char *name, const void *data, int wordSize, int numWords, int tag, const char *logName)
virtual int WaitForConnection(vtkServerSocket *socket, unsigned long msec=0)