ToolDAQFramework
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros
TriggerInfo.cpp
Go to the documentation of this file.
1 #include "TriggerInfo.h"
2 
4  Clear();
5 }
6 
7 void TriggerInfo::AddTrigger(TriggerType_t type,
8  TimeDelta readout_start_time, TimeDelta readout_end_time,
9  TimeDelta mask_start_time, TimeDelta mask_end_time,
10  TimeDelta trigger_time, std::vector<float> info) {
11  m_type .push_back(type);
12  m_readout_start_time.push_back(readout_start_time);
13  m_readout_end_time .push_back(readout_end_time);
14  m_mask_start_time .push_back(mask_start_time);
15  m_mask_end_time .push_back(mask_end_time);
16  m_trigger_time .push_back(trigger_time);
17  m_info .push_back(info);
19 }
20 
21 void TriggerInfo::AddTrigger(TriggerType_t type, double starttime, double endtime, double triggertime, std::vector<float> info) {
22  AddTrigger(type, TimeDelta(starttime), TimeDelta(endtime), TimeDelta(starttime), TimeDelta(endtime), TimeDelta(triggertime), info);
23 }
24 
26  for(int i = 0; i < in->m_num_triggers; i++) {
27  AddTrigger(in->m_type.at(i),
28  in->m_readout_start_time.at(i), in->m_readout_end_time.at(i),
29  in->m_mask_start_time.at(i), in->m_mask_end_time.at(i),
30  in->m_trigger_time.at(i), in->m_info.at(i));
31  }
32 }
33 
35  m_num_triggers = 0;
36  m_type.clear();
37  m_readout_start_time.clear();
38  m_readout_end_time.clear();
39  m_mask_start_time.clear();
40  m_mask_end_time.clear();
41  m_trigger_time.clear();
42  m_info.clear();
43 }
44 
45 std::ostream& operator<<(std::ostream& outs, const TriggerInfo& trig){
46  outs << trig.m_num_triggers << " triggers stored:" << std::endl;
47  for(unsigned int itrig = 0; itrig < trig.m_num_triggers; itrig++) {
48  std::cout << "\t" << itrig << "\t"
50  << "\tReadout: " << trig.m_readout_start_time[itrig]
51  << "\t to " << trig.m_readout_end_time[itrig]
52  << std::endl;
53  }//itrig
54  return outs;
55 }
void Clear()
Clear all triggers.
Definition: TriggerInfo.cpp:34
std::vector< TimeDelta > m_readout_end_time
The ending time of the trigger window.
Definition: TriggerInfo.h:36
std::vector< std::vector< float > > m_info
Additional information, specific to the trigger.
Definition: TriggerInfo.h:44
std::vector< TimeDelta > m_mask_end_time
The ending time of the hit mask.
Definition: TriggerInfo.h:40
void AddTrigger(TriggerType_t type, double starttime, double endtime, double triggertime, std::vector< float > info)
Add a trigger, all times in ns.
Definition: TriggerInfo.cpp:21
std::vector< TimeDelta > m_trigger_time
The actual time of the trigger.
Definition: TriggerInfo.h:42
void AddTriggers(TriggerInfo *in)
Add all triggers from another TriggerInfo object.
Definition: TriggerInfo.cpp:25
static std::string EnumAsString(Distribution_t dist)
std::vector< TimeDelta > m_mask_start_time
The starting time of the hit mask.
Definition: TriggerInfo.h:38
std::vector< TimeDelta > m_readout_start_time
The starting time of the trigger window.
Definition: TriggerInfo.h:34
std::ostream & operator<<(std::ostream &outs, const TimeDelta &delta)
Definition: TimeDelta.cpp:100
unsigned int m_num_triggers
The number of triggers.
Definition: TriggerInfo.h:30
std::vector< TriggerType_t > m_type
The type of Trigger.
Definition: TriggerInfo.h:32