VTK
/Users/kitware/Dashboards/MyTests/VTK_BLD_Release_docs/Utilities/Doxygen/dox/Filters/Parallel/vtkTransmitStructuredDataPiece.h
Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   Visualization Toolkit
00004   Module:    vtkTransmitStructuredDataPiece.h
00005 
00006   Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
00007   All rights reserved.
00008   See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
00009 
00010      This software is distributed WITHOUT ANY WARRANTY; without even
00011      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
00012      PURPOSE.  See the above copyright notice for more information.
00013 
00014 =========================================================================*/
00025 #ifndef vtkTransmitStructuredDataPiece_h
00026 #define vtkTransmitStructuredDataPiece_h
00027 
00028 #include "vtkFiltersParallelModule.h" // For export macro
00029 #include "vtkDataSetAlgorithm.h"
00030 
00031 class vtkMultiProcessController;
00032 
00033 class VTKFILTERSPARALLEL_EXPORT vtkTransmitStructuredDataPiece : public vtkDataSetAlgorithm
00034 {
00035 public:
00036   static vtkTransmitStructuredDataPiece *New();
00037   vtkTypeMacro(vtkTransmitStructuredDataPiece, vtkDataSetAlgorithm);
00038   void PrintSelf(ostream& os, vtkIndent indent);
00039 
00041 
00043   virtual void SetController(vtkMultiProcessController*);
00044   vtkGetObjectMacro(Controller, vtkMultiProcessController);
00046 
00048 
00049   vtkSetMacro(CreateGhostCells, int);
00050   vtkGetMacro(CreateGhostCells, int);
00051   vtkBooleanMacro(CreateGhostCells, int);
00053 
00054 protected:
00055   vtkTransmitStructuredDataPiece();
00056   ~vtkTransmitStructuredDataPiece();
00057 
00058   // Data generation method
00059   virtual int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *);
00060   void RootExecute(vtkDataSet *input, vtkDataSet *output,
00061                    vtkInformation *outInfo);
00062   void SatelliteExecute(int procId, vtkDataSet *output,
00063                         vtkInformation *outInfo);
00064   virtual int RequestInformation(vtkInformation *, vtkInformationVector **, vtkInformationVector *);
00065   virtual int RequestUpdateExtent(vtkInformation *, vtkInformationVector **, vtkInformationVector *);
00066 
00067   int CreateGhostCells;
00068   vtkMultiProcessController *Controller;
00069 
00070 private:
00071   vtkTransmitStructuredDataPiece(const vtkTransmitStructuredDataPiece&); // Not implemented
00072   void operator=(const vtkTransmitStructuredDataPiece&); // Not implemented
00073 };
00074 
00075 #endif