00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00024 #ifndef __vtkTransmitUnstructuredGridPiece_h
00025 #define __vtkTransmitUnstructuredGridPiece_h
00026
00027 #include "vtkUnstructuredGridAlgorithm.h"
00028
00029 class vtkMultiProcessController;
00030
00031 class VTK_PARALLEL_EXPORT vtkTransmitUnstructuredGridPiece : public vtkUnstructuredGridAlgorithm
00032 {
00033 public:
00034 static vtkTransmitUnstructuredGridPiece *New();
00035 vtkTypeMacro(vtkTransmitUnstructuredGridPiece, vtkUnstructuredGridAlgorithm);
00036 void PrintSelf(ostream& os, vtkIndent indent);
00037
00039
00041 virtual void SetController(vtkMultiProcessController*);
00042 vtkGetObjectMacro(Controller, vtkMultiProcessController);
00044
00046
00047 vtkSetMacro(CreateGhostCells, int);
00048 vtkGetMacro(CreateGhostCells, int);
00049 vtkBooleanMacro(CreateGhostCells, int);
00051
00052 protected:
00053 vtkTransmitUnstructuredGridPiece();
00054 ~vtkTransmitUnstructuredGridPiece();
00055
00056
00057 virtual int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *);
00058 void RootExecute(vtkUnstructuredGrid *input, vtkUnstructuredGrid *output,
00059 vtkInformation *outInfo);
00060 void SatelliteExecute(int procId, vtkUnstructuredGrid *output,
00061 vtkInformation *outInfo);
00062 virtual int RequestInformation(vtkInformation *, vtkInformationVector **, vtkInformationVector *);
00063 virtual int RequestUpdateExtent(vtkInformation *, vtkInformationVector **, vtkInformationVector *);
00064
00065 int CreateGhostCells;
00066 vtkMultiProcessController *Controller;
00067
00068 private:
00069 vtkTransmitUnstructuredGridPiece(const vtkTransmitUnstructuredGridPiece&);
00070 void operator=(const vtkTransmitUnstructuredGridPiece&);
00071 };
00072
00073 #endif