EventStationPositionsManager.h
Go to the documentation of this file.
1 #ifndef _sdet_EventStationPositionsManager_h_
2 #define _sdet_EventStationPositionsManager_h_
3 
4 #include <det/VManager.h>
5 #include <utl/ErrorLogger.h>
6 #include <IoSdData.h>
7 
8 
9 class IoSdStation;
10 
11 namespace sdet {
12 
29 
30  public:
31  virtual ~EventStationPositionsManager() = default;
32 
33  virtual void Init(const std::string& configLink);
34 
38  VMANAGER_GETDATA_CALL(CheckGetData, std::vector<int>)
39  VMANAGER_GETDATA_CALL(CheckGetData, std::vector<bool>)
40 
41  VMANAGER_GETDATA_NOTFOUND(std::vector<std::vector<int> >)
42 
43  //
44  //VMANAGER_GETDATA_NOTFOUND(unsigned long long int)
45  VMANAGER_GETDATA_NOTFOUND(std::list<int>)
46  VMANAGER_GETDATA_NOTFOUND(std::vector<double>)
47  VMANAGER_GETDATA_NOTFOUND(std::vector<std::string>)
48  VMANAGER_GETDATA_NOTFOUND(std::list<double>)
49  VMANAGER_GETDATA_NOTFOUND(std::list<std::string>)
50  VMANAGER_GETDATA_NOTFOUND(std::list<std::pair<int, int> >)
53  VMANAGER_GETDATA_NOTFOUND(std::map<int, utl::TabulatedFunction>)
54  VMANAGER_GETDATA_NOTFOUND(std::map<std::string, double>)
55 
56  private:
57  template<typename T>
58  Status
59  CheckGetData(T& returnData,
60  const std::string& componentProperty,
61  const std::string& componentName,
62  const IndexMap& componentIndex)
63  const
64  {
65  if (componentName != "stationList")
66  return eNotFound;
67  return GetStationData(returnData, componentProperty, componentName,
68  componentIndex);
69  }
70 
71  // specialize for "int", "double", "string", "vector<int>"
72  template<typename T>
73  Status GetStationData(T& returnData,
74  const std::string& componentProperty,
75  const std::string& componentName,
76  const IndexMap& componentIndex) const;
77 
78  const IoSdStation* FindStation(const int id) const;
79 
80  const IoSdStation* FindStation(const IndexMap& componentIndex) const
81  { return FindStation(FindComponent<int>("stationId", componentIndex)); }
82 
84 
85  std::string fBand;
86  std::string fEllipsoid;
87  std::string fCommission;
88  std::string fCommissionUUB;
89  std::string fDecommission;
90  int fZone = 0;
91  int fIsUUB = 0;
92 
93  };
94 
95 }
96 
97 
98 #endif
VMANAGER_GETDATA_HANDLE_DENIED std::string fBand
Manager to retrieve station positions from the raw event.
const IoSdStation * FindStation(const IndexMap &componentIndex) const
virtual ~EventStationPositionsManager()=default
Class to hold collection (x,y) points and provide interpolation between them.
Status GetStationData(T &returnData, const std::string &componentProperty, const std::string &componentName, const IndexMap &componentIndex) const
Interface for detector managers.
Definition: VManager.h:115
virtual void Init(const std::string &configLink)
Manager Initialization. configLink is the CentralConfig hook for the configuration file...
#define VMANAGER_GETDATA_CALL(_GetData_, _T_...)
Definition: VManager.h:59
const IoSdStation * FindStation(const int id) const
Class to hold collection (x,y) points and provide interpolation between them, where y are complex num...
#define VMANAGER_GETDATA_HANDLE_DENIED
Definition: VManager.h:75
std::map< std::string, std::string > IndexMap
Definition: VManager.h:133
#define VMANAGER_GETDATA_NOTFOUND(_T_...)
Definition: VManager.h:41
Status CheckGetData(T &returnData, const std::string &componentProperty, const std::string &componentName, const IndexMap &componentIndex) const
Status
Specifies success or (eventually) various possible failure modes.
Definition: VManager.h:127

, generated on Tue Sep 26 2023.