vtkLocator.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00062 #ifndef __vtkLocator_h
00063 #define __vtkLocator_h
00064
00065 #include "vtkObject.h"
00066
00067 class vtkDataSet;
00068 class vtkPolyData;
00069
00070 class VTK_FILTERING_EXPORT vtkLocator : public vtkObject
00071 {
00072 public:
00073 vtkTypeRevisionMacro(vtkLocator,vtkObject);
00074 void PrintSelf(ostream& os, vtkIndent indent);
00075
00077
00078 virtual void SetDataSet(vtkDataSet*);
00079 vtkGetObjectMacro(DataSet,vtkDataSet);
00081
00083
00085 vtkSetClampMacro(MaxLevel,int,0,VTK_LARGE_INTEGER);
00086 vtkGetMacro(MaxLevel,int);
00088
00090
00093 vtkGetMacro(Level,int);
00095
00097
00101 vtkSetMacro(Automatic,int);
00102 vtkGetMacro(Automatic,int);
00103 vtkBooleanMacro(Automatic,int);
00105
00107
00109 vtkSetClampMacro(Tolerance,double,0.0,VTK_DOUBLE_MAX);
00110 vtkGetMacro(Tolerance,double);
00112
00114
00118 vtkSetMacro(RetainCellLists,int);
00119 vtkGetMacro(RetainCellLists,int);
00120 vtkBooleanMacro(RetainCellLists,int);
00122
00125 virtual void Update();
00126
00128 virtual void Initialize();
00129
00131 virtual void BuildLocator() = 0;
00132
00134 virtual void FreeSearchStructure() = 0;
00135
00140 virtual void GenerateRepresentation(int level, vtkPolyData *pd) = 0;
00141
00143
00144 vtkGetMacro(BuildTime, unsigned long);
00146
00148 virtual void UnRegister(vtkObjectBase *o);
00149 protected:
00150 vtkLocator();
00151 ~vtkLocator();
00152
00153 vtkDataSet *DataSet;
00154 int Automatic;
00155 double Tolerance;
00156 int MaxLevel;
00157 int Level;
00158 int RetainCellLists;
00159
00160 vtkTimeStamp BuildTime;
00161
00162 virtual void ReportReferences(vtkGarbageCollector*);
00163 virtual void GarbageCollectionStarting();
00164 virtual void RemoveReferences();
00165 int GarbageCollecting;
00166 private:
00167 vtkLocator(const vtkLocator&);
00168 void operator=(const vtkLocator&);
00169 };
00170
00171 #endif
00172
00173