00001 #ifndef __filescanner_h 00002 #define __filescanner_h 00003 00004 #include "dataformathandler.h" 00005 #include "paramfile.h" 00006 00007 /***************************************************/ 00008 00009 namespace Gascoigne 00010 { 00011 class FileScanner 00012 { 00013 DataFormatHandler& DH; 00014 std::string blocksymbol; 00015 bool complain; 00016 00017 00018 void FormatToValue(const std::vector<std::string>& words); 00019 void print(const std::string& blockname) const; 00020 void _assert(bool b, const std::vector<std::string>& words) const; 00021 00022 public: 00023 00024 int _i_defaultvalues_level; 00025 00026 FileScanner(DataFormatHandler& D, const ParamFile* pf, const std::string& b=""); 00027 FileScanner(DataFormatHandler& D); 00028 void readfile(const ParamFile* pf, const std::string& blockname); 00029 void NoComplain() { complain=0; } 00030 }; 00031 } 00032 00033 /***************************************************/ 00034 00035 #endif