238 if (debug) { std::cerr <<
"DEBUG (STAT::read):" << std::endl; }
241 std::getline(fis, theline);
243 if (debug) { std::cerr << theline << std::endl; }
244 std::string lineID=theline.substr(0,4);
245 if (debug) { std::cerr << lineID << std::endl; }
246 if (!helper::IDmatch<STAT>(lineID))
throw 247 GSE2::Terror(
"ERROR (STAT::read): missing STAT ID!");
249 double inlibversion=atof(theline.substr(5,7).c_str());
252 std::cerr <<
"ERROR (STAT::read): " 253 <<
"data file has format version " 254 << inlibversion << std::endl;
255 std::cerr <<
"ERROR (STAT::read): " 256 <<
"library can decode formats up to version " 259 GSE2::Terror(
"ERROR (STAT::read): file library version too large!");
267 std::cerr <<
"ERROR (STAT::read): " 268 <<
"data file has format version " 269 << inlibversion << std::endl;
270 std::cerr <<
"ERROR (STAT::read): " 271 <<
"library can decode formats from version " 276 GSE2::Terror(
"ERROR (STAT::read): incompatible SFF version!");
281 std::string code=theline.substr(27,10);
283 this->
hasfree=(code.find(
'F')!=std::string::npos);
284 this->
hassrce=(code.find(
'S')!=std::string::npos);
288 { std::cerr <<
"DEBUG (STAT::read): has FREE block" << std::endl; }
290 { std::cerr <<
"DEBUG (STAT::read): has SRCE line" << std::endl; }
291 std::cerr <<
"DEBUG (STAT::read): finished" << std::endl;
static const double decode_libversion
static const double libversion
Fortran library version (to ensure compatibility)