3 #include <boost/lexical_cast.hpp>
5 #include <det/Detector.h>
6 #include <utl/ErrorLogger.h>
7 #include <utl/AugerException.h>
8 #include <atm/Atmosphere.h>
9 #include <atm/MolecularZone.h>
10 #include <atm/MolecularDB.h>
21 "Malargue January model",
22 "Malargue February model",
23 "Malargue March model",
24 "Malargue April model",
26 "Malargue June model",
27 "Malargue July model",
28 "Malargue August model",
29 "Malargue September model",
30 "Malargue October model",
31 "Malargue November model",
32 "Malargue December model",
44 Detector::GetInstance().GetAManagerRegister().GetManager(
"AMolecularSQLManager");
49 string profileTypeIdString;
51 manager.
GetData(profileTypeIdString,
"profile_type",
"profile_type_id", profileIndexMap);
52 if (stat1 == VManager::eNotFound) {
54 msg <<
"Request for table 'profile_type' with profile_type_name '"
55 << profileIndexMap[
"profile_type_name"] <<
"' not found.";
61 molecularIndexMap[
"profile_type_id"] = profileTypeIdString;
67 if (stat2 == VManager::eNotFound) {
69 msg <<
"Request for table 'molecular' with profile_type_id '"
70 << molecularIndexMap[
"profile_type_id"] <<
"' turned up with no data "
71 "for time: " << Detector::GetInstance().GetTime() <<
". "
92 ERROR(
"Call to CacheZones with non-empty fZoneMap. This is a bug .. please report it.");
97 Detector::GetInstance().GetAManagerRegister().GetManager(
"AMolecularSQLManager");
109 manager.
GetData(zoneIdString,
"zone",
"zone_id", indexMap);
110 if (stat == VManager::eNotFound)
112 boost::lexical_cast<string>(Detector::GetInstance().GetTime()));
115 zoneNameIndexMap[
"zone_id"] = zoneIdString;
118 manager.
GetData(zoneName,
"zone",
"name", zoneNameIndexMap);
121 manager.
GetData(zoneNorthing,
"zone",
"northing", zoneNameIndexMap);
124 manager.
GetData(zoneEasting,
"zone",
"easting", zoneNameIndexMap);
128 zoneName, zoneNorthing, zoneEasting);
std::vector< std::string > fMolecularIdStrings
static const std::string fgProfileNameLookup[MolecularIds::eLast+1]
InternalZoneMap::const_iterator InternalZoneIterator
Interface for detector managers.
virtual Status GetData(double &returnData, const std::string &componentProperty, const std::string &componentName, const IndexMap &componentIndex) const =0
Exception to use in case requested data not found in the database with detailed printout.
ProfileId
Monitoring profiles:
class describing a molecular zone.
#define WARNING(message)
Macro for logging warning messages.
std::map< std::string, std::string > IndexMap
#define ERROR(message)
Macro for logging error messages.
Status
Specifies success or (eventually) various possible failure modes.