VTK
|
00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: vtkGeoAlignedImageRepresentation.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 =========================================================================*/ 00015 /*------------------------------------------------------------------------- 00016 Copyright 2008 Sandia Corporation. 00017 Under the terms of Contract DE-AC04-94AL85000 with Sandia Corporation, 00018 the U.S. Government retains certain rights in this software. 00019 -------------------------------------------------------------------------*/ 00033 #ifndef __vtkGeoAlignedImageRepresentation_h 00034 #define __vtkGeoAlignedImageRepresentation_h 00035 00036 #include "vtkGeovisCoreModule.h" // For export macro 00037 #include "vtkDataRepresentation.h" 00038 00039 class vtkGeoImageNode; 00040 class vtkGeoSource; 00041 class vtkGeoTreeNodeCache; 00042 00043 class VTKGEOVISCORE_EXPORT vtkGeoAlignedImageRepresentation : public vtkDataRepresentation 00044 { 00045 public: 00046 static vtkGeoAlignedImageRepresentation *New(); 00047 vtkTypeMacro(vtkGeoAlignedImageRepresentation,vtkDataRepresentation); 00048 void PrintSelf(ostream& os, vtkIndent indent); 00049 00052 virtual vtkGeoImageNode* GetBestImageForBounds(double bounds[4]); 00053 00055 00057 virtual vtkGeoSource* GetSource() 00058 { return this->GeoSource; } 00059 virtual void SetSource(vtkGeoSource* source); 00061 00066 void SaveDatabase(const char* path); 00067 00068 protected: 00069 vtkGeoAlignedImageRepresentation(); 00070 ~vtkGeoAlignedImageRepresentation(); 00071 00073 00074 void SetGeoSource(vtkGeoSource* source); 00075 vtkGeoSource* GeoSource; 00077 00079 vtkGeoImageNode* Root; 00080 00082 void Initialize(); 00083 00085 void PrintTree(ostream& os, vtkIndent indent, vtkGeoImageNode* root); 00086 00087 vtkGeoTreeNodeCache* Cache; 00088 00089 private: 00090 vtkGeoAlignedImageRepresentation(const vtkGeoAlignedImageRepresentation&); // Not implemented 00091 void operator=(const vtkGeoAlignedImageRepresentation&); // Not implemented 00092 }; 00093 00094 #endif