00001 #ifndef _MY_MonitorWells_ 00002 #define _MY_MonitorWells_ 00003 #include <fstream> 00004 #include "globals.h" 00008 class TransportBase; 00009 class DynamicBase; 00010 00011 class MonitorWells 00012 { 00013 public: 00014 struct _NodeWell 00015 { 00016 Point3D P; 00017 Index cell_index; 00018 }; 00019 00020 00021 protected: 00022 std::vector<_NodeWell> _wells; 00023 std::ofstream _out; 00024 00025 public: 00026 00027 std::vector<_NodeWell>& getWells(){return _wells;} 00028 const std::vector<_NodeWell>& getWells() const{return _wells;} 00029 00030 void printSelf(std::ostream &out); 00031 void outputData(double time,DynamicBase &dyn,TransportBase &trans); 00032 void openFileName(std::string fileName); 00033 00034 00035 MonitorWells(); 00036 ~MonitorWells(); 00037 00038 }; 00039 00040 #endif