ToolDAQFramework
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros
DataModel.h
Go to the documentation of this file.
1 #ifndef DATAMODEL_H
2 #define DATAMODEL_H
3 
4 #include <map>
5 #include <string>
6 #include <vector>
7 
8 #include "TChain.h"
9 
10 #include "WCSimRootOptions.hh"
11 #include "WCSimRootEvent.hh"
12 #include "WCSimRootGeom.hh"
13 #include "WCSimEnumerations.hh"
14 
15 #include "Store.h"
16 #include "BoostStore.h"
17 #include "Logging.h"
18 #include "Utilities.h"
19 
20 #include <zmq.hpp>
21 
22 #include <SubSample.h>
23 #include <PMTInfo.h>
24 #include <TriggerInfo.h>
25 #include <ReconInfo.h>
26 
39 class DataModel {
40 
41  public:
42 
43  DataModel();
44 
50  ReconInfo * GetFilter(std::string name, bool can_create);
51 
52  //TTree* GetTTree(std::string name);
53  //void AddTTree(std::string name,TTree *tree);
54  //void DeleteTTree(std::string name);
55 
56  Store vars;
57  BoostStore CStore;
58  std::map<std::string,BoostStore*> Stores;
59 
60  Logging *Log;
61 
62  zmq::context_t* context;
63 
65  std::vector<SubSample> IDSamples;
67  std::vector<SubSample> ODSamples;
68 
70  std::vector<PMTInfo> IDGeom;
72  std::vector<PMTInfo> ODGeom;
73 
78 
80  __attribute__((deprecated))
82 
86  std::map<std::string, ReconInfo*> RecoInfoMap;
87 
89  double IDPMTDarkRate;
91  double ODPMTDarkRate;
92 
94  int IDNPMTs;
96  int ODNPMTs;
102  double pmt_radius;
103 
105  TChain * WCSimGeomTree;
109  TChain * WCSimEventTree;
113  TObjString CurrentWCSimFile;
115  WCSimRootEvent * IDWCSimEvent_Raw;
117  WCSimRootEvent * ODWCSimEvent_Raw;
118 
119  // time artificially interposed between events
121  void set_interpose_interval(float t){m_interpose_interval = t;}
123 
125  std::vector<SNWarningParams> SupernovaWarningParameters;
126 
128  bool HasOD;
130  bool IsMC;
131 
132  private:
133 
134 };
135 
136 #endif
ReconInfo RecoInfo
Store reconstruction information (vertex time/position, fit likelihoods, optionally direction) ...
Definition: DataModel.h:84
double detector_length
height of water tank
Definition: DataModel.h:98
DataModel()
Simple constructor.
Definition: DataModel.cpp:3
TChain * WCSimOptionsTree
The WCSimRootOptions tree from input WCSim file(s)
Definition: DataModel.h:107
bool triggeroutput
DEPRECATED! Use IDTriggers and ODTriggers instead.
Definition: DataModel.h:81
std::vector< SubSample > IDSamples
Inner detector digit collections.
Definition: DataModel.h:65
std::vector< PMTInfo > ODGeom
Geometry information for the outer detector.
Definition: DataModel.h:72
TChain * WCSimGeomTree
The WCSimRootGeom tree from input WCSim file(s)
Definition: DataModel.h:105
TObjString CurrentWCSimFile
The original WCSim files&#39; filename for the current event.
Definition: DataModel.h:113
bool HasOD
Does the geometry include the outer detector?
Definition: DataModel.h:128
double ODPMTDarkRate
Dark noise rate of outer detector PMTs, unit: ?
Definition: DataModel.h:91
zmq::context_t * context
ZMQ contex used for producing zmq sockets for inter thread, process, or computer communication.
Definition: DataModel.h:62
double detector_radius
radius of water tank
Definition: DataModel.h:100
void set_interpose_interval(float t)
Definition: DataModel.h:121
TChain * WCSimEventTree
The WCSimRootEvent tree from input WCSim file(s)
Definition: DataModel.h:109
Logging * Log
Log class pointer for use in Tools, it can be used to send messages which can have multiple error lev...
Definition: DataModel.h:60
int ODNPMTs
Number of outer detector PMTs.
Definition: DataModel.h:96
TriggerInfo IDTriggers
Triggered time windows for the inner detector.
Definition: DataModel.h:75
WCSimRootEvent * IDWCSimEvent_Raw
The original, unmodified WCSimRootEvent for the ID.
Definition: DataModel.h:115
float get_interpose_interval()
Definition: DataModel.h:122
TriggerInfo ODTriggers
Triggered time windows for the outer detector.
Definition: DataModel.h:77
bool IsMC
Is this simulated data?
Definition: DataModel.h:130
float m_interpose_interval
Definition: DataModel.h:120
WCSimRootEvent * ODWCSimEvent_Raw
The original, unmodified WCSimRootEvent for the OD.
Definition: DataModel.h:117
std::map< std::string, BoostStore * > Stores
This is a map of named BooStore pointers which can be deffined to hold a nammed collection of any tip...
Definition: DataModel.h:58
std::vector< SubSample > ODSamples
Outer detector digit collections.
Definition: DataModel.h:67
Store vars
This Store can be used for any variables. It is an inefficent ascii based storage.
Definition: DataModel.h:56
std::vector< SNWarningParams > SupernovaWarningParameters
Store the dimensionality, number of reconstructed vertices and the highest nclusters warning threshol...
Definition: DataModel.h:125
double IDPMTDarkRate
Dark noise rate of inner detector PMTs, unit: ?
Definition: DataModel.h:89
double pmt_radius
radius of each PMT
Definition: DataModel.h:102
ReconInfo * GetFilter(std::string name, bool can_create)
Definition: DataModel.cpp:5
int IDNPMTs
Number of inner detector PMTs.
Definition: DataModel.h:94
std::vector< PMTInfo > IDGeom
Geometry information for the inner detector.
Definition: DataModel.h:70
BoostStore CStore
This is a more efficent binary BoostStore that can be used to store a dynamic set of inter Tool varia...
Definition: DataModel.h:57
int CurrentWCSimEventNum
The original WCSim files&#39; event number for the current event.
Definition: DataModel.h:111
std::map< std::string, ReconInfo * > RecoInfoMap
Store filtered reconstruction information.
Definition: DataModel.h:86