1 #ifndef _rdet_RDetector_h_
2 #define _rdet_RDetector_h_
9 #include <boost/iterator/transform_iterator.hpp>
11 #include <rdet/Station.h>
13 #include <utl/TimeStamp.h>
14 #include <utl/Validated.h>
15 #include <utl/AugerException.h>
23 class NonExistentComponentException;
24 class TabulatedFunctionComplexLgAmpPhase;
54 {
return *pair.second; }
59 typedef boost::transform_iterator<InternalStationFunctor,
104 const std::
string& property,
105 const std::
string& component,
106 const std::
string& errorMsg,
107 const det::VManager::IndexMap& indexMap = det::VManager::IndexMap())
110 if (!requestedData) {
111 requestedData =
new T;
113 const det::VManager& manager = det::Detector::GetInstance().GetRManagerRegister();
115 manager.
GetData(*requestedData, property, component, indexMap);
118 std::ostringstream err;
119 err <<
"Did not find requested component: " << errorMsg;
boost::transform_iterator< InternalStationFunctor, InternalStationIterator, const Station & > StationIterator
StationIterator returns a pointer to a station.
double GetTemperature(const std::string &site) const
double GetBeaconReferencePhase(const int stationId, const double beaconFreq) const
Get beacon reference phases for one station.
InternalStationMap fFullStationMap
internal map of station id and station object
Detector description interface for Station-related data.
const rdet::Station & operator()(const InternalStationMap::value_type &pair) const
StationIterator StationsEnd() const
End of the collection of pointers to commissioned stations.
StationIterator StationsBegin() const
Beginning of the collection of pointers to commissioned stations.
RDetector & operator=(const RDetector &rdetector)
const std::vector< int > & GetFullStationList() const
Get list of ID's for all stations available in the database or configuration file.
Base class for exceptions trying to access non-existing components.
InternalStationMap::const_iterator InternalStationIterator
Interface for detector managers.
unsigned long long int GetBadStationReason(const int stationId) const
utl::Validated< std::vector< int > > fFullStationList
HardwareResponseProfileMap fHardwareResponseProfileMap
Wrapper class for initially unset data.
const std::vector< double > & GetBeaconFrequencies() const
Get vector of Beacon Frequencies for given detector-time from Manager.
Detector description interface for RDetector-related data.
virtual Status GetData(double &returnData, const std::string &componentProperty, const std::string &componentName, const IndexMap &componentIndex) const =0
int GetRdSdStationIdLink() const
Get Rd - Sd Station Id link.
const utl::TabulatedFunctionComplexLgAmpPhase & GetHardwareResponseProfile(const std::string &identifier) const
Get the response (TabulatedFunctionComplexLgAmpPhase) which corresponds to a hardware profile identif...
utl::Validated< bool > fAddStationListFromSManager
std::vector< double > * fBeaconFreq
Top of the hierarchy of the detector description interface.
std::map< int, const rdet::Station * > InternalStationMap
#define OFFLINE_MAKE_CONST_ITERATOR_RANGE(_ConstIterator_, _NamePrefix_)
double * fBeaconReferencePhase
void GetDetectorData(T *&requestedData, const std::string &property, const std::string &component, const std::string &errorMsg, const det::VManager::IndexMap &indexMap=det::VManager::IndexMap()) const
bool AddStationListFromSManager() const
#define ERROR(message)
Macro for logging error messages.
const Station & GetStation(const int stationId) const
Get station by Station Id.
Status
Specifies success or (eventually) various possible failure modes.
const std::string fRDetectorName
std::map< std::string, const utl::TabulatedFunctionComplexLgAmpPhase * > HardwareResponseProfileMap