Cloned library of VTK-5.0.0 with extra build files for internal package management.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

75 lines
2.6 KiB

/*=========================================================================
Program: Visualization Toolkit
Module: $RCSfile: vtkBranchExtentTranslator.h,v $
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 vtkBranchExtentTranslator - Uses alternative source for whole extent.
// .SECTION Description
// vtkBranchExtentTranslator is like extent translator, but it uses an
// alternative source as a whole extent. The whole extent passed is assumed
// to be a subextent of the original source. we simply take the intersection
// of the split extent and the whole extdent passed in. We are attempting to
// make branching pipelines request consistent extents with the same piece
// requests.
// .SECTION Caveats
// This object is still under development.
#ifndef __vtkBranchExtentTranslator_h
#define __vtkBranchExtentTranslator_h
#include "vtkExtentTranslator.h"
class vtkImageData;
class VTK_PARALLEL_EXPORT vtkBranchExtentTranslator : public vtkExtentTranslator
{
public:
static vtkBranchExtentTranslator *New();
vtkTypeRevisionMacro(vtkBranchExtentTranslator,vtkExtentTranslator);
void PrintSelf(ostream& os, vtkIndent indent);
// Description:
// This is the original upstream image source.
virtual void SetOriginalSource(vtkImageData*);
vtkGetObjectMacro(OriginalSource,vtkImageData);
// Description:
// Generates the extent from the pieces.
int PieceToExtent();
// Description:
// This unstructured extent/piece is store here for the users convenience.
// It is not used internally. The intent was to let an "assignment" be made
// when the translator/first source is created. The translator/assignment
// can be used for any new filter that uses the original source as output.
// Branches will then have the same assignment.
vtkSetMacro(AssignedPiece, int);
vtkGetMacro(AssignedPiece, int);
vtkSetMacro(AssignedNumberOfPieces, int);
vtkGetMacro(AssignedNumberOfPieces, int);
protected:
vtkBranchExtentTranslator();
~vtkBranchExtentTranslator();
vtkImageData *OriginalSource;
int AssignedPiece;
int AssignedNumberOfPieces;
private:
vtkBranchExtentTranslator(const vtkBranchExtentTranslator&); // Not implemented.
void operator=(const vtkBranchExtentTranslator&); // Not implemented.
};
#endif