24 #if defined(__cplusplus)
25 # error "This should be included only by a .c file."
37 #define VTK_XMLWRITERF_MAX 256
46 #if !defined(VTK_FORTRAN_NAME)
47 # define VTK_FORTRAN_NAME(name, NAME) name##__
49 #if !defined(VTK_FORTRAN_ARG_STRING_POINTER)
50 # define VTK_FORTRAN_ARG_STRING_POINTER(name) const char* name##_ptr_arg
52 #if !defined(VTK_FORTRAN_ARG_STRING_LENGTH)
53 # define VTK_FORTRAN_ARG_STRING_LENGTH(name) , const long int name##_len_arg
55 #if !defined(VTK_FORTRAN_REF_STRING_POINTER)
56 # define VTK_FORTRAN_REF_STRING_POINTER(name) name##_ptr_arg
58 #if !defined(VTK_FORTRAN_REF_STRING_LENGTH)
59 # define VTK_FORTRAN_REF_STRING_LENGTH(name) ((int)name##_len_arg)
106 "vtkXMLWriterF_Delete called with invalid id %d.\n",
116 void VTK_FORTRAN_NAME(vtkxmlwriterf_setdatamodetype, VTKXMLWRITERF_SETDATAMODETYPE)(
117 const int*
self,
const int* objType
127 "vtkXMLWriterF_SetDataModeType called with invalid id %d.\n",
134 void VTK_FORTRAN_NAME(vtkxmlwriterf_setdataobjecttype, VTKXMLWRITERF_SETDATAOBJECTTYPE)(
135 const int*
self,
const int* objType
145 "vtkXMLWriterF_SetDataObjectType called with invalid id %d.\n",
153 const int*
self,
int extent[6]
163 "vtkXMLWriterF_SetExtent called with invalid id %d.\n",
171 const int*
self,
const int* dataType,
183 "vtkXMLWriterF_SetPoints called with invalid id %d.\n",
191 const int*
self,
double origin[3]
201 "vtkXMLWriterF_SetOrigin called with invalid id %d.\n",
209 const int*
self,
double spacing[3]
219 "vtkXMLWriterF_SetSpacing called with invalid id %d.\n",
226 void VTK_FORTRAN_NAME(vtkxmlwriterf_setcoordinates, VTKXMLWRITERF_SETCOORDINATES)(
227 const int*
self,
const int* axis,
const int* dataType,
void*
data,
234 *dataType, data, *numCoordinates);
239 "vtkXMLWriterF_SetCoordinates called with invalid id %d.\n",
246 void VTK_FORTRAN_NAME(vtkxmlwriterf_setcellswithtype, VTKXMLWRITERF_SETCELLSWITHTYPE)(
254 *ncells, cells, *cellsSize);
259 "vtkXMLWriterF_SetCellsWithType called with invalid id %d.\n",
266 void VTK_FORTRAN_NAME(vtkxmlwriterf_setcellswithtypes, VTKXMLWRITERF_SETCELLSWITHTYPES)(
267 const int*
self,
int* cellTypes,
const vtkIdType* ncells,
274 *ncells, cells, *cellsSize);
279 "vtkXMLWriterF_SetCellsWithTypes called with invalid id %d.\n",
286 void VTK_FORTRAN_NAME(vtkxmlwriterf_setpointdata, VTKXMLWRITERF_SETPOINTDATA)(
299 char* name_buffer = malloc(name_length+1);
302 char* role_buffer = malloc(role_length+1);
303 if(!name_buffer || !role_buffer)
306 "vtkXMLWriterF_SetPointData failed to allocate name or role.\n");
307 if(name_buffer) { free(name_buffer); }
308 if(role_buffer) { free(role_buffer); }
311 memcpy(name_buffer, name_ptr, name_length);
312 name_buffer[name_length] = 0;
313 memcpy(role_buffer, role_ptr, role_length);
314 role_buffer[role_length] = 0;
318 *dataType, data, *numTuples, *numComponents,
328 "vtkXMLWriterF_SetPointData called with invalid id %d.\n",
335 void VTK_FORTRAN_NAME(vtkxmlwriterf_setcelldata, VTKXMLWRITERF_SETCELLDATA)(
348 char* name_buffer = malloc(name_length+1);
351 char* role_buffer = malloc(role_length+1);
352 if(!name_buffer || !role_buffer)
355 "vtkXMLWriterF_SetCellData failed to allocate name or role.\n");
356 if(name_buffer) { free(name_buffer); }
357 if(role_buffer) { free(role_buffer); }
360 memcpy(name_buffer, name_ptr, name_length);
361 name_buffer[name_length] = 0;
362 memcpy(role_buffer, role_ptr, role_length);
363 role_buffer[role_length] = 0;
367 *dataType, data, *numTuples, *numComponents,
377 "vtkXMLWriterF_SetCellData called with invalid id %d.\n",
384 void VTK_FORTRAN_NAME(vtkxmlwriterf_setfilename, VTKXMLWRITERF_SETFILENAME)(
394 char* name_buffer = malloc(name_length+1);
398 "vtkXMLWriterF_SetFileName failed to allocate name.\n");
401 memcpy(name_buffer, name_ptr, name_length);
402 name_buffer[name_length] = 0;
413 "vtkXMLWriterF_SetFileName called with invalid id %d.\n",
421 const int*
self,
int* success
431 "vtkXMLWriterF_Write called with invalid id %d.\n",
438 void VTK_FORTRAN_NAME(vtkxmlwriterf_setnumberoftimesteps, VTKXMLWRITERF_SETNUMBEROFTIMESTEPS)(
439 const int*
self,
const int* numTimeSteps
450 "vtkXMLWriterF_SetNumberOfTimeSteps called with invalid id %d.\n",
468 "vtkXMLWriterF_Start called with invalid id %d.\n",
475 void VTK_FORTRAN_NAME(vtkxmlwriterf_writenexttimestep, VTKXMLWRITERF_WRITENEXTTIMESTEP)(
476 const int*
self,
const double* timeValue
486 "vtkXMLWriterF_WriteNextTimeStep called with invalid id %d.\n",
504 "vtkXMLWriterF_Stop called with invalid id %d.\n",
struct vtkXMLWriterC_s vtkXMLWriterC
vtkXMLWriterC is an opaque structure holding the state of an individual writer object.
#define VTK_FORTRAN_REF_STRING_LENGTH(name)
VTKIOXML_EXPORT void vtkXMLWriterC_SetCellsWithTypes(vtkXMLWriterC *self, int *cellTypes, vtkIdType ncells, vtkIdType *cells, vtkIdType cellsSize)
Set a cell array on the data object to be written.
VTKIOXML_EXPORT void vtkXMLWriterC_SetPointData(vtkXMLWriterC *self, const char *name, int dataType, void *data, vtkIdType numTuples, int numComponents, const char *role)
Set a point or cell data array by name.
VTKIOXML_EXPORT void vtkXMLWriterC_SetCellsWithType(vtkXMLWriterC *self, int cellType, vtkIdType ncells, vtkIdType *cells, vtkIdType cellsSize)
Set a cell array on the data object to be written.
#define VTK_FORTRAN_ARG_STRING_POINTER(name)
VTKIOXML_EXPORT void vtkXMLWriterC_Delete(vtkXMLWriterC *self)
Delete the writer object.
#define VTK_XMLWRITERF_MAX
VTKIOXML_EXPORT void vtkXMLWriterC_SetPoints(vtkXMLWriterC *self, int dataType, void *data, vtkIdType numPoints)
Set the points of a point data set.
#define VTK_FORTRAN_NAME(name, NAME)
VTKIOXML_EXPORT void vtkXMLWriterC_Start(vtkXMLWriterC *self)
Start writing a time-series to the output file.
VTKIOXML_EXPORT void vtkXMLWriterC_SetNumberOfTimeSteps(vtkXMLWriterC *self, int numTimeSteps)
Set the number of time steps that will be written between upcoming Start and Stop calls...
VTKIOXML_EXPORT void vtkXMLWriterC_SetOrigin(vtkXMLWriterC *self, double origin[3])
Set the origin of an image data set.
VTKIOXML_EXPORT void vtkXMLWriterC_SetDataObjectType(vtkXMLWriterC *self, int objType)
Set the VTK data object type that will be written.
VTKIOXML_EXPORT void vtkXMLWriterC_SetCoordinates(vtkXMLWriterC *self, int axis, int dataType, void *data, vtkIdType numCoordinates)
Set the coordinates along one axis of a rectilinear grid data set.
#define VTK_FORTRAN_ARG_STRING_LENGTH(name)
VTKIOXML_EXPORT void vtkXMLWriterC_SetDataModeType(vtkXMLWriterC *self, int datamodetype)
Set the VTK writer data mode to either:
VTKIOXML_EXPORT int vtkXMLWriterC_Write(vtkXMLWriterC *self)
Write the data to a file immediately.
VTKIOXML_EXPORT void vtkXMLWriterC_SetSpacing(vtkXMLWriterC *self, double spacing[3])
Set the spacing of an image data set.
VTKIOXML_EXPORT void vtkXMLWriterC_SetFileName(vtkXMLWriterC *self, const char *fileName)
Set the name of the file into which the data are to be written.
#define VTK_FORTRAN_REF_STRING_POINTER(name)
static vtkXMLWriterC * vtkXMLWriterF_Table[VTK_XMLWRITERF_MAX+1]
VTKIOXML_EXPORT vtkXMLWriterC * vtkXMLWriterC_New()
Create a new instance of vtkXMLWriterC.
CellTypeInDataSet cellType(vtkDataSet *input)
VTKIOXML_EXPORT void vtkXMLWriterC_WriteNextTimeStep(vtkXMLWriterC *self, double timeValue)
Write one time step of a time-series to the output file.
VTKIOXML_EXPORT void vtkXMLWriterC_SetExtent(vtkXMLWriterC *self, int extent[6])
Set the extent of a structured data set.
VTKIOXML_EXPORT void vtkXMLWriterC_SetCellData(vtkXMLWriterC *self, const char *name, int dataType, void *data, vtkIdType numTuples, int numComponents, const char *role)
VTKIOXML_EXPORT void vtkXMLWriterC_Stop(vtkXMLWriterC *self)
Stop writing a time-series to the output file.