20 #ifndef vtkMultiProcessStream_h
21 #define vtkMultiProcessStream_h
24 #include "vtkParallelCoreModule.h"
28 VTK_ABI_NAMESPACE_BEGIN
31 struct vtkMultiProcessStreamPushArray;
32 struct vtkMultiProcessStreamPopArray;
92 void Push(
char array[],
unsigned int size);
93 void Push(
signed char array[],
unsigned int size);
94 void Push(
unsigned char array[],
unsigned int size);
95 void Push(
short array[],
unsigned int size);
96 void Push(
unsigned short array[],
unsigned int size);
97 void Push(
int array[],
unsigned int size);
98 void Push(
unsigned int array[],
unsigned int size);
99 void Push(
long array[],
unsigned int size);
100 void Push(
unsigned long array[],
unsigned int size);
101 void Push(
long long array[],
unsigned int size);
102 void Push(
unsigned long long array[],
unsigned int size);
103 void Push(
float array[],
unsigned int size);
104 void Push(
double array[],
unsigned int size);
117 void Pop(
char*& array,
unsigned int& size);
118 void Pop(
signed char*& array,
unsigned int& size);
119 void Pop(
unsigned char*& array,
unsigned int& size);
120 void Pop(
short*& array,
unsigned int& size);
121 void Pop(
unsigned short*& array,
unsigned int& size);
122 void Pop(
int*& array,
unsigned int& size);
123 void Pop(
unsigned int*& array,
unsigned int& size);
124 void Pop(
long*& array,
unsigned int& size);
125 void Pop(
unsigned long*& array,
unsigned int& size);
126 void Pop(
long long*& array,
unsigned int& size);
127 void Pop(
unsigned long long*& array,
unsigned int& size);
128 void Pop(
float*& array,
unsigned int& size);
129 void Pop(
double*& array,
unsigned int& size);
160 void GetRawData(std::vector<unsigned char>&
data)
const;
161 void GetRawData(
unsigned char*&
data,
unsigned int& size);
162 void SetRawData(
const std::vector<unsigned char>&
data);
163 void SetRawData(
const unsigned char*,
unsigned int size);
164 std::vector<unsigned char> GetRawData()
const;
169 vtkInternals* Internals;
176 friend struct vtkMultiProcessStreamPushArray;
177 friend struct vtkMultiProcessStreamPopArray;
179 template <
typename T>
180 inline void PushArray(T array[],
unsigned int size);
181 template <
typename T>
182 inline void PopArray(T*& array,
unsigned int& size);
183 template <
typename T>
185 template <
typename T>
189 VTK_ABI_NAMESPACE_END
stream used to pass data across processes using vtkMultiProcessController.
a vtkAbstractArray subclass for strings
abstract superclass for arrays of numeric data
VTKCOMMONCORE_EXPORT ostream & operator<<(ostream &os, const vtkIndent &o)
vtkMultiProcessStream & operator>>(vtkMultiProcessStream &stream, T &value)
int RawSize()
Returns the size of the raw data returned by GetRawData.