VTK  9.3.20240328
Public Member Functions | List of all members
vtkMultiProcessStream Class Reference

stream used to pass data across processes using vtkMultiProcessController. More...

#include <vtkMultiProcessStream.h>

Public Member Functions

 vtkMultiProcessStream ()
 
 vtkMultiProcessStream (const vtkMultiProcessStream &)
 
 ~vtkMultiProcessStream ()
 
vtkMultiProcessStreamoperator= (const vtkMultiProcessStream &)
 
void Reset ()
 Clears everything in the stream. More...
 
int Size ()
 Returns the size of the stream. More...
 
int RawSize ()
 Returns the size of the raw data returned by GetRawData. More...
 
bool Empty ()
 Returns true iff the stream is empty. More...
 
vtkMultiProcessStreamoperator<< (double value)
 Add-to-stream operators. More...
 
vtkMultiProcessStreamoperator<< (float value)
 Add-to-stream operators. More...
 
vtkMultiProcessStreamoperator<< (int value)
 Add-to-stream operators. More...
 
vtkMultiProcessStreamoperator<< (char value)
 Add-to-stream operators. More...
 
vtkMultiProcessStreamoperator<< (bool value)
 Add-to-stream operators. More...
 
vtkMultiProcessStreamoperator<< (unsigned int value)
 Add-to-stream operators. More...
 
vtkMultiProcessStreamoperator<< (unsigned char value)
 Add-to-stream operators. More...
 
vtkMultiProcessStreamoperator<< (vtkTypeInt64 value)
 Add-to-stream operators. More...
 
vtkMultiProcessStreamoperator<< (vtkTypeUInt64 value)
 Add-to-stream operators. More...
 
vtkMultiProcessStreamoperator<< (const std::string &value)
 Add-to-stream operators. More...
 
vtkMultiProcessStreamoperator<< (const char *value)
 Add-to-stream operators. More...
 
vtkMultiProcessStreamoperator<< (const vtkMultiProcessStream &)
 Add-to-stream operators. More...
 
vtkMultiProcessStreamoperator>> (double &value)
 Remove-from-stream operators. More...
 
vtkMultiProcessStreamoperator>> (float &value)
 Remove-from-stream operators. More...
 
vtkMultiProcessStreamoperator>> (int &value)
 Remove-from-stream operators. More...
 
vtkMultiProcessStreamoperator>> (char &value)
 Remove-from-stream operators. More...
 
vtkMultiProcessStreamoperator>> (bool &value)
 Remove-from-stream operators. More...
 
vtkMultiProcessStreamoperator>> (unsigned int &value)
 Remove-from-stream operators. More...
 
vtkMultiProcessStreamoperator>> (unsigned char &value)
 Remove-from-stream operators. More...
 
vtkMultiProcessStreamoperator>> (vtkTypeInt64 &value)
 Remove-from-stream operators. More...
 
vtkMultiProcessStreamoperator>> (vtkTypeUInt64 &value)
 Remove-from-stream operators. More...
 
vtkMultiProcessStreamoperator>> (std::string &value)
 Remove-from-stream operators. More...
 
vtkMultiProcessStreamoperator>> (vtkMultiProcessStream &)
 Remove-from-stream operators. More...
 
void Push (double array[], unsigned int size)
 Add-array-to-stream methods. More...
 
void Push (float array[], unsigned int size)
 Add-array-to-stream methods. More...
 
void Push (int array[], unsigned int size)
 Add-array-to-stream methods. More...
 
void Push (char array[], unsigned int size)
 Add-array-to-stream methods. More...
 
void Push (unsigned int array[], unsigned int size)
 Add-array-to-stream methods. More...
 
void Push (unsigned char array[], unsigned int size)
 Add-array-to-stream methods. More...
 
void Push (vtkTypeInt64 array[], unsigned int size)
 Add-array-to-stream methods. More...
 
void Push (vtkTypeUInt64 array[], unsigned int size)
 Add-array-to-stream methods. More...
 
void Pop (double *&array, unsigned int &size)
 Remove-array-to-stream methods. More...
 
void Pop (float *&array, unsigned int &size)
 Remove-array-to-stream methods. More...
 
void Pop (int *&array, unsigned int &size)
 Remove-array-to-stream methods. More...
 
void Pop (char *&array, unsigned int &size)
 Remove-array-to-stream methods. More...
 
void Pop (unsigned int *&array, unsigned int &size)
 Remove-array-to-stream methods. More...
 
void Pop (unsigned char *&array, unsigned int &size)
 Remove-array-to-stream methods. More...
 
void Pop (vtkTypeInt64 *&array, unsigned int &size)
 Remove-array-to-stream methods. More...
 
void Pop (vtkTypeUInt64 *&array, unsigned int &size)
 Remove-array-to-stream methods. More...
 
void GetRawData (std::vector< unsigned char > &data) const
 Serialization methods used to save/restore the stream to/from raw data. More...
 
void GetRawData (unsigned char *&data, unsigned int &size)
 Serialization methods used to save/restore the stream to/from raw data. More...
 
void SetRawData (const std::vector< unsigned char > &data)
 Serialization methods used to save/restore the stream to/from raw data. More...
 
void SetRawData (const unsigned char *, unsigned int size)
 Serialization methods used to save/restore the stream to/from raw data. More...
 
std::vector< unsigned char > GetRawData () const
 Serialization methods used to save/restore the stream to/from raw data. More...
 

Detailed Description

stream used to pass data across processes using vtkMultiProcessController.

vtkMultiProcessStream is used to pass data across processes. Using vtkMultiProcessStream it is possible to send data whose length is not known at the receiving end.

Warning
Note, stream operators cannot be combined with the Push/Pop array operators. For example, if you push an array to the stream,
Tests:
vtkMultiProcessStream (Tests)

Definition at line 29 of file vtkMultiProcessStream.h.

Constructor & Destructor Documentation

◆ vtkMultiProcessStream() [1/2]

vtkMultiProcessStream::vtkMultiProcessStream ( )

◆ vtkMultiProcessStream() [2/2]

vtkMultiProcessStream::vtkMultiProcessStream ( const vtkMultiProcessStream )

◆ ~vtkMultiProcessStream()

vtkMultiProcessStream::~vtkMultiProcessStream ( )

Member Function Documentation

◆ operator=()

vtkMultiProcessStream& vtkMultiProcessStream::operator= ( const vtkMultiProcessStream )

◆ operator<<() [1/12]

vtkMultiProcessStream& vtkMultiProcessStream::operator<< ( double  value)

Add-to-stream operators.

Adds to the end of the stream.

◆ operator<<() [2/12]

vtkMultiProcessStream& vtkMultiProcessStream::operator<< ( float  value)

Add-to-stream operators.

Adds to the end of the stream.

◆ operator<<() [3/12]

vtkMultiProcessStream& vtkMultiProcessStream::operator<< ( int  value)

Add-to-stream operators.

Adds to the end of the stream.

◆ operator<<() [4/12]

vtkMultiProcessStream& vtkMultiProcessStream::operator<< ( char  value)

Add-to-stream operators.

Adds to the end of the stream.

◆ operator<<() [5/12]

vtkMultiProcessStream& vtkMultiProcessStream::operator<< ( bool  value)

Add-to-stream operators.

Adds to the end of the stream.

◆ operator<<() [6/12]

vtkMultiProcessStream& vtkMultiProcessStream::operator<< ( unsigned int  value)

Add-to-stream operators.

Adds to the end of the stream.

◆ operator<<() [7/12]

vtkMultiProcessStream& vtkMultiProcessStream::operator<< ( unsigned char  value)

Add-to-stream operators.

Adds to the end of the stream.

◆ operator<<() [8/12]

vtkMultiProcessStream& vtkMultiProcessStream::operator<< ( vtkTypeInt64  value)

Add-to-stream operators.

Adds to the end of the stream.

◆ operator<<() [9/12]

vtkMultiProcessStream& vtkMultiProcessStream::operator<< ( vtkTypeUInt64  value)

Add-to-stream operators.

Adds to the end of the stream.

◆ operator<<() [10/12]

vtkMultiProcessStream& vtkMultiProcessStream::operator<< ( const std::string &  value)

Add-to-stream operators.

Adds to the end of the stream.

◆ operator<<() [11/12]

vtkMultiProcessStream& vtkMultiProcessStream::operator<< ( const char *  value)

Add-to-stream operators.

Adds to the end of the stream.

◆ operator<<() [12/12]

vtkMultiProcessStream& vtkMultiProcessStream::operator<< ( const vtkMultiProcessStream )

Add-to-stream operators.

Adds to the end of the stream.

◆ operator>>() [1/11]

vtkMultiProcessStream& vtkMultiProcessStream::operator>> ( double &  value)

Remove-from-stream operators.

Removes from the head of the stream.

◆ operator>>() [2/11]

vtkMultiProcessStream& vtkMultiProcessStream::operator>> ( float &  value)

Remove-from-stream operators.

Removes from the head of the stream.

◆ operator>>() [3/11]

vtkMultiProcessStream& vtkMultiProcessStream::operator>> ( int &  value)

Remove-from-stream operators.

Removes from the head of the stream.

◆ operator>>() [4/11]

vtkMultiProcessStream& vtkMultiProcessStream::operator>> ( char &  value)

Remove-from-stream operators.

Removes from the head of the stream.

◆ operator>>() [5/11]

vtkMultiProcessStream& vtkMultiProcessStream::operator>> ( bool &  value)

Remove-from-stream operators.

Removes from the head of the stream.

◆ operator>>() [6/11]

vtkMultiProcessStream& vtkMultiProcessStream::operator>> ( unsigned int &  value)

Remove-from-stream operators.

Removes from the head of the stream.

◆ operator>>() [7/11]

vtkMultiProcessStream& vtkMultiProcessStream::operator>> ( unsigned char &  value)

Remove-from-stream operators.

Removes from the head of the stream.

◆ operator>>() [8/11]

vtkMultiProcessStream& vtkMultiProcessStream::operator>> ( vtkTypeInt64 &  value)

Remove-from-stream operators.

Removes from the head of the stream.

◆ operator>>() [9/11]

vtkMultiProcessStream& vtkMultiProcessStream::operator>> ( vtkTypeUInt64 &  value)

Remove-from-stream operators.

Removes from the head of the stream.

◆ operator>>() [10/11]

vtkMultiProcessStream& vtkMultiProcessStream::operator>> ( std::string &  value)

Remove-from-stream operators.

Removes from the head of the stream.

◆ operator>>() [11/11]

vtkMultiProcessStream& vtkMultiProcessStream::operator>> ( vtkMultiProcessStream )

Remove-from-stream operators.

Removes from the head of the stream.

◆ Push() [1/8]

void vtkMultiProcessStream::Push ( double  array[],
unsigned int  size 
)

Add-array-to-stream methods.

Adds to the end of the stream

◆ Push() [2/8]

void vtkMultiProcessStream::Push ( float  array[],
unsigned int  size 
)

Add-array-to-stream methods.

Adds to the end of the stream

◆ Push() [3/8]

void vtkMultiProcessStream::Push ( int  array[],
unsigned int  size 
)

Add-array-to-stream methods.

Adds to the end of the stream

◆ Push() [4/8]

void vtkMultiProcessStream::Push ( char  array[],
unsigned int  size 
)

Add-array-to-stream methods.

Adds to the end of the stream

◆ Push() [5/8]

void vtkMultiProcessStream::Push ( unsigned int  array[],
unsigned int  size 
)

Add-array-to-stream methods.

Adds to the end of the stream

◆ Push() [6/8]

void vtkMultiProcessStream::Push ( unsigned char  array[],
unsigned int  size 
)

Add-array-to-stream methods.

Adds to the end of the stream

◆ Push() [7/8]

void vtkMultiProcessStream::Push ( vtkTypeInt64  array[],
unsigned int  size 
)

Add-array-to-stream methods.

Adds to the end of the stream

◆ Push() [8/8]

void vtkMultiProcessStream::Push ( vtkTypeUInt64  array[],
unsigned int  size 
)

Add-array-to-stream methods.

Adds to the end of the stream

◆ Pop() [1/8]

void vtkMultiProcessStream::Pop ( double *&  array,
unsigned int &  size 
)

Remove-array-to-stream methods.

Removes from the head of the stream. Note: If the input array is nullptr, the array will be allocated internally and the calling application is responsible for properly de-allocating it. If the input array is not nullptr, it is expected to match the size of the data internally, and this method would just fill in the data.

◆ Pop() [2/8]

void vtkMultiProcessStream::Pop ( float *&  array,
unsigned int &  size 
)

Remove-array-to-stream methods.

Removes from the head of the stream. Note: If the input array is nullptr, the array will be allocated internally and the calling application is responsible for properly de-allocating it. If the input array is not nullptr, it is expected to match the size of the data internally, and this method would just fill in the data.

◆ Pop() [3/8]

void vtkMultiProcessStream::Pop ( int *&  array,
unsigned int &  size 
)

Remove-array-to-stream methods.

Removes from the head of the stream. Note: If the input array is nullptr, the array will be allocated internally and the calling application is responsible for properly de-allocating it. If the input array is not nullptr, it is expected to match the size of the data internally, and this method would just fill in the data.

◆ Pop() [4/8]

void vtkMultiProcessStream::Pop ( char *&  array,
unsigned int &  size 
)

Remove-array-to-stream methods.

Removes from the head of the stream. Note: If the input array is nullptr, the array will be allocated internally and the calling application is responsible for properly de-allocating it. If the input array is not nullptr, it is expected to match the size of the data internally, and this method would just fill in the data.

◆ Pop() [5/8]

void vtkMultiProcessStream::Pop ( unsigned int *&  array,
unsigned int &  size 
)

Remove-array-to-stream methods.

Removes from the head of the stream. Note: If the input array is nullptr, the array will be allocated internally and the calling application is responsible for properly de-allocating it. If the input array is not nullptr, it is expected to match the size of the data internally, and this method would just fill in the data.

◆ Pop() [6/8]

void vtkMultiProcessStream::Pop ( unsigned char *&  array,
unsigned int &  size 
)

Remove-array-to-stream methods.

Removes from the head of the stream. Note: If the input array is nullptr, the array will be allocated internally and the calling application is responsible for properly de-allocating it. If the input array is not nullptr, it is expected to match the size of the data internally, and this method would just fill in the data.

◆ Pop() [7/8]

void vtkMultiProcessStream::Pop ( vtkTypeInt64 *&  array,
unsigned int &  size 
)

Remove-array-to-stream methods.

Removes from the head of the stream. Note: If the input array is nullptr, the array will be allocated internally and the calling application is responsible for properly de-allocating it. If the input array is not nullptr, it is expected to match the size of the data internally, and this method would just fill in the data.

◆ Pop() [8/8]

void vtkMultiProcessStream::Pop ( vtkTypeUInt64 *&  array,
unsigned int &  size 
)

Remove-array-to-stream methods.

Removes from the head of the stream. Note: If the input array is nullptr, the array will be allocated internally and the calling application is responsible for properly de-allocating it. If the input array is not nullptr, it is expected to match the size of the data internally, and this method would just fill in the data.

◆ Reset()

void vtkMultiProcessStream::Reset ( )

Clears everything in the stream.

◆ Size()

int vtkMultiProcessStream::Size ( )

Returns the size of the stream.

◆ RawSize()

int vtkMultiProcessStream::RawSize ( )
inline

Returns the size of the raw data returned by GetRawData.

This includes 1 byte to store the endian type.

Definition at line 120 of file vtkMultiProcessStream.h.

◆ Empty()

bool vtkMultiProcessStream::Empty ( )

Returns true iff the stream is empty.

◆ GetRawData() [1/3]

void vtkMultiProcessStream::GetRawData ( std::vector< unsigned char > &  data) const

Serialization methods used to save/restore the stream to/from raw data.

Note: The 1st byte of the raw data buffer consists of the endian type.

◆ GetRawData() [2/3]

void vtkMultiProcessStream::GetRawData ( unsigned char *&  data,
unsigned int &  size 
)

Serialization methods used to save/restore the stream to/from raw data.

Note: The 1st byte of the raw data buffer consists of the endian type.

◆ SetRawData() [1/2]

void vtkMultiProcessStream::SetRawData ( const std::vector< unsigned char > &  data)

Serialization methods used to save/restore the stream to/from raw data.

Note: The 1st byte of the raw data buffer consists of the endian type.

◆ SetRawData() [2/2]

void vtkMultiProcessStream::SetRawData ( const unsigned char *  ,
unsigned int  size 
)

Serialization methods used to save/restore the stream to/from raw data.

Note: The 1st byte of the raw data buffer consists of the endian type.

◆ GetRawData() [3/3]

std::vector<unsigned char> vtkMultiProcessStream::GetRawData ( ) const

Serialization methods used to save/restore the stream to/from raw data.

Note: The 1st byte of the raw data buffer consists of the endian type.


The documentation for this class was generated from the following file: