00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: $RCSfile: vtkBranchExtentTranslator.h,v $ 00005 Language: C++ 00006 00007 Copyright (c) 1993-2002 Ken Martin, Will Schroeder, Bill Lorensen 00008 All rights reserved. 00009 See Copyright.txt or http://www.kitware.com/Copyright.htm for details. 00010 00011 This software is distributed WITHOUT ANY WARRANTY; without even 00012 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 00013 PURPOSE. See the above copyright notice for more information. 00014 00015 =========================================================================*/ 00046 #ifndef __vtkBranchExtentTranslator_h 00047 #define __vtkBranchExtentTranslator_h 00048 00049 #include "vtkExtentTranslator.h" 00050 00051 class vtkImageData; 00052 00053 class VTK_PARALLEL_EXPORT vtkBranchExtentTranslator : public vtkExtentTranslator 00054 { 00055 public: 00056 static vtkBranchExtentTranslator *New(); 00057 00058 vtkTypeRevisionMacro(vtkBranchExtentTranslator,vtkExtentTranslator); 00059 void PrintSelf(ostream& os, vtkIndent indent); 00060 00062 00063 virtual void SetOriginalSource(vtkImageData*); 00064 vtkGetObjectMacro(OriginalSource,vtkImageData); 00066 00068 int PieceToExtent(); 00069 00071 00077 vtkSetMacro(AssignedPiece, int); 00078 vtkGetMacro(AssignedPiece, int); 00079 vtkSetMacro(AssignedNumberOfPieces, int); 00080 vtkGetMacro(AssignedNumberOfPieces, int); 00082 00083 protected: 00084 vtkBranchExtentTranslator(); 00085 ~vtkBranchExtentTranslator(); 00086 00087 vtkImageData *OriginalSource; 00088 int AssignedPiece; 00089 int AssignedNumberOfPieces; 00090 private: 00091 vtkBranchExtentTranslator(const vtkBranchExtentTranslator&); // Not implemented. 00092 void operator=(const vtkBranchExtentTranslator&); // Not implemented. 00093 }; 00094 00095 #endif 00096