/usr/include/paraview/vtkClientServerMoveData.h is in paraview-dev 5.0.1+dfsg1-4.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 | /*=========================================================================
Program: Visualization Toolkit
Module: vtkClientServerMoveData.h
Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
All rights reserved.
See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
This software is distributed WITHOUT ANY WARRANTY; without even
the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
PURPOSE. See the above copyright notice for more information.
=========================================================================*/
// .NAME vtkClientServerMoveData - Moves data from the server root node
// to the client.
// .SECTION Description
// This class moves all the input data available at the input on the root
// server node to the client node. If not in server-client mode,
// this filter behaves as a simple pass-through filter.
// This can work with any data type, the application does not need to set
// the output type before hand.
// .SECTION Warning
// This filter may change the output in RequestData().
#ifndef vtkClientServerMoveData_h
#define vtkClientServerMoveData_h
#include "vtkPVClientServerCoreRenderingModule.h" //needed for exports
#include "vtkDataObjectAlgorithm.h"
class vtkMultiProcessController;
class vtkMultiProcessController;
class VTKPVCLIENTSERVERCORERENDERING_EXPORT vtkClientServerMoveData : public vtkDataObjectAlgorithm
{
public:
static vtkClientServerMoveData* New();
vtkTypeMacro(vtkClientServerMoveData, vtkDataObjectAlgorithm);
void PrintSelf(ostream& os, vtkIndent indent);
// Description:
// Controls the output type. This is required because processes receiving
// data cannot know their output type in RequestDataObject without
// communicating with other processes. Since communicating with other
// processes in RequestDataObject is dangerous (can cause deadlock because
// it may happen out-of-sync), the application has to set the output
// type. The default is VTK_POLY_DATA. Make sure to call this before any
// pipeline updates occur.
vtkSetMacro(OutputDataType, int);
vtkGetMacro(OutputDataType, int);
// Description:
// Controls the output WHOLE_EXTENT. This is required because processes
// receiving data cannot know their WHOLE_EXTENT in RequestInformation
// without communicating with other processes. Since communicating with
// other processes in RequestInformation is dangerous (can cause deadlock
// because it may happen out-of-sync), the application has to set the
// output type. Make sure to call this before any pipeline updates occur.
vtkSetVector6Macro(WholeExtent, int);
vtkGetVector6Macro(WholeExtent, int);
// Description:
// Optionally, set the process type. If set to AUTO, then the process type is
// tried to be determined using the active connection.
vtkSetMacro(ProcessType, int);
vtkGetMacro(ProcessType, int);
// Description:
// Get/Set the controller to use. This is optional and needed only when
// ProcessType is set to something other than AUTO. If AUTO, then the
// controller is obtained from the active session.
void SetController(vtkMultiProcessController*);
vtkGetObjectMacro(Controller, vtkMultiProcessController);
//BTX
enum ProcessTypes
{
AUTO=0,
SERVER=1,
CLIENT=2
};
protected:
vtkClientServerMoveData();
~vtkClientServerMoveData();
// Overridden to mark input as optional, since input data may
// not be available on all processes that this filter is instantiated.
virtual int FillInputPortInformation(int port, vtkInformation *info);
virtual int RequestData(vtkInformation* request,
vtkInformationVector** inputVector,
vtkInformationVector* outputVector);
// Create an output of the type defined by OutputDataType
virtual int RequestDataObject(vtkInformation* request,
vtkInformationVector** inputVector,
vtkInformationVector* outputVector);
// If there is an input call superclass' RequestInformation
// otherwise set the output WHOLE_EXTENT() to be WholeExtent
virtual int RequestInformation(vtkInformation* request,
vtkInformationVector** inputVector,
vtkInformationVector* outputVector);
virtual int SendData(vtkDataObject*, vtkMultiProcessController*);
virtual vtkDataObject* ReceiveData(vtkMultiProcessController*);
enum Tags {
TRANSMIT_DATA_OBJECT = 23483
};
int OutputDataType;
int WholeExtent[6];
int ProcessType;
vtkMultiProcessController* Controller;
private:
vtkClientServerMoveData(const vtkClientServerMoveData&); // Not implemented.
void operator=(const vtkClientServerMoveData&); // Not implemented.
//ETX
};
#endif
|