VTK
|
00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: vtkAMRToMultiBlockFilter.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 VTKAMRTOMULTIBLOCKFILTER_H_ 00026 #define VTKAMRTOMULTIBLOCKFILTER_H_ 00027 00028 #include "vtkFiltersAMRModule.h" // For export macro 00029 #include "vtkMultiBlockDataSetAlgorithm.h" 00030 00031 class vtkInformation; 00032 class vtkInformationVector; 00033 class vtkIndent; 00034 class vtkMultiProcessController; 00035 class vtkOverlappingAMR; 00036 class vtkMultiBlockDataSet; 00037 00038 class VTKFILTERSAMR_EXPORT vtkAMRToMultiBlockFilter : 00039 public vtkMultiBlockDataSetAlgorithm 00040 { 00041 public: 00042 static vtkAMRToMultiBlockFilter* New(); 00043 vtkTypeMacro(vtkAMRToMultiBlockFilter, vtkMultiBlockDataSetAlgorithm ); 00044 void PrintSelf(ostream &oss, vtkIndent indent ); 00045 00047 00049 vtkSetMacro( Controller, vtkMultiProcessController* ); 00050 vtkGetMacro( Controller, vtkMultiProcessController* ); 00052 00053 // Standard pipeline routines 00054 00055 virtual int FillInputPortInformation(int port, vtkInformation *info); 00056 virtual int FillOutputPortInformation(int port, vtkInformation *info); 00057 virtual int RequestData( 00058 vtkInformation*, vtkInformationVector**, vtkInformationVector* ); 00059 00060 protected: 00061 vtkAMRToMultiBlockFilter(); 00062 virtual ~vtkAMRToMultiBlockFilter(); 00063 00065 00066 void CopyAMRToMultiBlock( 00067 vtkOverlappingAMR *amr, vtkMultiBlockDataSet *mbds); 00068 vtkMultiProcessController *Controller; 00070 00071 private: 00072 vtkAMRToMultiBlockFilter(const vtkAMRToMultiBlockFilter& ); // Not implemented 00073 void operator=(const vtkAMRToMultiBlockFilter& ); // Not implemented 00074 }; 00075 00076 #endif /* VTKAMRTOMULTIBLOCKFILTER_H_ */