Main Page | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Class Members | File Members | Related Pages

vtkHierarchicalDataExtractDataSets.h

Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   Visualization Toolkit
00004   Module:    $RCSfile: vtkHierarchicalDataExtractDataSets.h,v $
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 __vtkHierarchicalDataExtractDataSets_h
00026 #define __vtkHierarchicalDataExtractDataSets_h
00027 
00028 #include "vtkHierarchicalDataSetAlgorithm.h"
00029 
00030 //BTX
00031 struct vtkHierarchicalDataExtractDataSetsInternals;
00032 //ETX
00033 
00034 class VTK_GRAPHICS_EXPORT vtkHierarchicalDataExtractDataSets : public vtkHierarchicalDataSetAlgorithm 
00035 {
00036 public:
00037   vtkTypeRevisionMacro(vtkHierarchicalDataExtractDataSets,vtkHierarchicalDataSetAlgorithm);
00038   void PrintSelf(ostream& os, vtkIndent indent);
00039   static vtkHierarchicalDataExtractDataSets *New();
00040 
00042   void AddDataSet(unsigned int level, unsigned int idx);
00043 
00045   void ClearDataSetList();
00046 
00047 protected:
00048   vtkHierarchicalDataExtractDataSets();
00049   ~vtkHierarchicalDataExtractDataSets();
00050 
00051   virtual int RequestDataObject(vtkInformation* request, 
00052                                 vtkInformationVector** inputVector, 
00053                                 vtkInformationVector* outputVector);
00054   virtual int RequestInformation(vtkInformation *, 
00055                                  vtkInformationVector **, 
00056                                  vtkInformationVector *);
00057   virtual int RequestData(vtkInformation *, 
00058                           vtkInformationVector **, 
00059                           vtkInformationVector *);
00060 
00061   unsigned int ComputeOutputLevels(unsigned int inputNumLevels);
00062 
00063 //BTX
00064   friend struct vtkHierarchicalDataExtractDataSetsInternals;
00065 
00066   struct DataSetNode
00067   {
00068     unsigned int Level;
00069     unsigned int DataSetId;
00070     int Initialized;
00071     
00072     DataSetNode() : Initialized(0) {}
00073     DataSetNode(unsigned int level, unsigned int dsid) : 
00074       Level(level), DataSetId(dsid), Initialized(1)  {}
00075   };
00076 //ETX
00077 
00078 private:
00079   vtkHierarchicalDataExtractDataSetsInternals* Internal;
00080 
00081   vtkHierarchicalDataExtractDataSets(const vtkHierarchicalDataExtractDataSets&);  // Not implemented.
00082   void operator=(const vtkHierarchicalDataExtractDataSets&);  // Not implemented.
00083 };
00084 
00085 #endif
00086 
00087 

Generated on Mon Jan 21 23:07:25 2008 for VTK by  doxygen 1.4.3-20050530