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