00001 // ParameterReader.cpp: implementation of the ParameterReader class. 00002 // 00004 00005 #include "ParameterReader.h" 00006 00008 // Construction/Destruction 00010 00011 ParameterReader::ParameterReader(std::string fileName, char commentChar) 00012 { 00013 _commentChar = commentChar; 00014 _parameterFileStream = new ifstream; 00015 _parameterFileStream->open(fileName.c_str()); 00016 assert(_parameterFileStream); 00017 } 00018 00019 ParameterReader::~ParameterReader() 00020 { 00021 _parameterFileStream->close(); 00022 delete _parameterFileStream; 00023 } 00024 00026 // Reads and returns the next parameter in the file 00028 00029 double ParameterReader::ReadParameter() 00030 { 00031 double parameter = 0.0; 00032 // throws out comment lines 00033 while(_parameterFileStream->getline(_lineBuffer,sizeof(_lineBuffer))) 00034 { 00035 if(_lineBuffer[0] != _commentChar) break; 00036 } 00037 00038 std::istringstream dataStream(_lineBuffer); 00039 dataStream >> parameter; 00040 00041 return parameter; 00042 } 00043 00045 // Checks to see if we've hit EOF 00047 00048 bool ParameterReader::IsFileGood() 00049 { 00050 if(_parameterFileStream->good()) 00051 { 00052 return true; 00053 } 00054 else 00055 { 00056 return false; 00057 } 00058 } 00059 00060 void ParameterReader::Reset() 00061 { 00062 00063 }