1 #ifndef _det_Detector_h_
2 #define _det_Detector_h_
4 #include <det/VManager.h>
5 #include <det/ManagerRegister.h>
6 #include <utl/TimeStamp.h>
7 #include <utl/AugerException.h>
8 #include <utl/Singleton.h>
9 #include <utl/config.h>
11 #ifdef AUGER_SQLITE_ENABLED
12 # include <det/VSQLManager_SQLite.h>
14 # include <det/VSQLManager_MySQL.h>
22 #include <sdet/SManagerRegister.h>
23 #include <fdet/FManagerRegister.h>
24 #include <mdet/MManagerRegister.h>
25 #include <cdet/CManagerRegister.h>
26 #include <atm/AManagerRegister.h>
27 #include <atm/Atmosphere.h>
28 #include <utl/CoordinateSystemPtr.h>
30 #include <rdet/RManagerRegister.h>
61 class ParametricGeoMagneticField;
88 {
return sdet::SManagerRegister::GetInstance(); }
94 {
return fdet::FManagerRegister::GetInstance(); }
100 {
return rdet::RManagerRegister::GetInstance(); }
105 {
return mdet::MManagerRegister::GetInstance(); }
110 {
return cdet::CManagerRegister::GetInstance(); }
117 {
return atm::AManagerRegister::GetInstance(); }
131 void Update(
const utl::TimeStamp& time,
const bool invData =
true,
const bool invComp =
true,
const bool forceRadio =
false);
void Update(const utl::TimeStamp &time, const bool invData=true, const bool invComp=true, const bool forceRadio=false)
Update detector: deletes currently constructed stations and sets new time.
Top of the interface to Atmosphere information.
ManagerRegister & GetRManagerRegister() const
Detector description interface for CDetector-related data.
ManagerRegister & GetMManagerRegister() const
utl::TimeStamp GetTime() const
Get time pertaining to the detector description.
ManagerRegister & GetFManagerRegister() const
const mdet::MDetector & GetMDetector() const
utl::CoordinateSystemPtr fReferenceCoordinateSystem
const cdet::CDetector & GetCDetector() const
utl::Vector GetGeoMagneticFieldAt(const utl::Point &location)
utl::CoordinateSystemPtr GetSiteCoordinateSystem() const
Get the coordinate system for the site.
sdet::SDetector * fSDetector
fdet::FDetector * fFDetector
Detector associated to muon detector hierarchy.
Detector description interface for FDetector-related data.
A TimeStamp holds GPS second and nanosecond for some event.
Detector description interface for RDetector-related data.
const atm::Atmosphere & GetAtmosphere() const
boost::shared_ptr< const CoordinateTransformer > CoordinateSystemPtr
Shared pointer for coordinate systems.
utl::CoordinateSystemPtr fSiteReferenceSystem
ManagerRegister & GetAManagerRegister() const
Top of the hierarchy of the detector description interface.
const sdet::SDetector & GetSDetector() const
Detector operator=(const Detector &detector)
const fdet::FDetector & GetFDetector() const
atm::Atmosphere fAtmosphere
Spherical harmonics parametrisation of geomagnetic field.
rdet::RDetector * fRDetector
fwk::ParametricGeoMagneticField & GetGeoMagneticField()
ManagerRegister & GetSManagerRegister() const
utl::CoordinateSystemPtr GetReferenceCoordinateSystem() const
Get the reference coordinate system used for analysis (usually PampaAmarilla for Auger) ...
Register for detector description managers.
Detector description interface for SDetector-related data.
mdet::MDetector * fMDetector
const rdet::RDetector & GetRDetector() const
fwk::ParametricGeoMagneticField * fGeoMagneticField
ManagerRegister & GetCManagerRegister() const
Curiously Recurring Template Pattern (CRTP) for Meyers singleton.
cdet::CDetector * fCDetector