00001 // -*- Mode: C++; tab-width: 2; -*- 00002 // vi: set ts=2: 00003 // 00004 // $Id:$ 00005 // 00006 00007 #ifndef BALL_VIEW_DATATYPE_RAYTRACEABLEGRID_H 00008 #define BALL_VIEW_DATATYPE_RAYTRACEABLEGRID_H 00009 00010 #ifndef BALL_DATATYPE_REGULARDATA3D_H 00011 # include <BALL/DATATYPE/regularData3D.h> 00012 #endif 00013 00014 namespace BALL 00015 { 00016 namespace VIEW 00017 { 00018 class BALL_VIEW_EXPORT RaytraceableGrid 00019 { 00020 public: 00021 RaytraceableGrid() 00022 { 00023 grid_ = 0; 00024 } 00025 00026 RaytraceableGrid(RegularData3D* grid) 00027 { 00028 grid_ = grid; 00029 } 00030 00031 // Note: the grid_ - ptr is handled by the calling classes and we must not destroy it! 00032 virtual ~RaytraceableGrid() 00033 {} 00034 00035 00036 float getGridMinValue(); 00037 00038 float getGridMaxValue(); 00039 00040 void binaryWrite(const String& filename) const throw(Exception::FileNotFound); 00041 00042 protected: 00043 RegularData3D* grid_; 00044 }; 00045 } 00046 } 00047 #endif 00048