Hall-D Software  alpha
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Df125FDCPulse.h
Go to the documentation of this file.
1 // $Id$
2 // $HeadURL$
3 //
4 // File: Df125FDCPulse.h
5 // Created: Fri Nov 13 16:16:00 EDT 2015
6 // Creator: davidl (on Darwin harriet.jlab.org 13.4.0 x86_64)
7 //
8 
9 #ifndef _Df125FDCPulse_
10 #define _Df125FDCPulse_
11 
12 #include <DAQ/DDAQAddress.h>
13 
15 
16  /// Holds pulse integral data for one identified
17  /// pulse in one event in one channel of a single
18  /// f125 Flash ADC module.
19 
20  public:
22 
23  Df125FDCPulse(uint32_t rocid=0, uint32_t slot=0, uint32_t channel=0, uint32_t itrigger=0
24  , uint32_t NPK=0
25  , uint32_t le_time=0
26  , uint32_t time_quality_bit=0
27  , uint32_t overflow_count=0
28  , uint32_t pedestal=0
29  , uint32_t integral=0
30  , uint32_t peak_amp=0
31  , uint32_t peak_time=0
32  , uint32_t word1=0
33  , uint32_t word2=0
34  , uint32_t nsamples_pedestal=1
35  , uint32_t nsamples_integral=1
36  , bool emulated=false
37  , uint32_t le_time_emulated=0xffff
38  , uint32_t time_quality_bit_emulated=0xffff
39  , uint32_t overflow_count_emulated=0xffff
40  , uint32_t pedestal_emulated=0xffff
41  , uint32_t integral_emulated=0xffff
42  , uint32_t peak_amp_emulated=0xffff
43  , uint32_t peak_time_emulated=0xffff)
45  , NPK(NPK)
46  , le_time(le_time)
53  , word1(word1)
54  , word2(word2)
65 
66  uint32_t NPK; ///< from first word
67  uint32_t le_time; ///< from first word
68  uint32_t time_quality_bit; ///< from first word
69  uint32_t overflow_count; ///< from first word
70  uint32_t pedestal; ///< from second word
71  uint32_t integral; ///< from second word (type 6)
72  uint32_t peak_amp; ///< from second word (type 9)
73  uint32_t peak_time; ///< from second word
74  uint32_t word1; ///< first word
75  uint32_t word2; ///< second word
76  uint32_t nsamples_pedestal; ///< number of samples used in integral
77  uint32_t nsamples_integral; ///< number of samples used in pedestal
78  bool emulated; ///< true if emulated values are copied to the main input
79  uint32_t le_time_emulated; ///< emulated from raw data when available
80  uint32_t time_quality_bit_emulated; ///< emulated from raw data when available
81  uint32_t overflow_count_emulated; ///< emulated from raw data when available
82  uint32_t pedestal_emulated; ///< emulated from raw data when available
83  uint32_t integral_emulated; ///< emulated from raw data when available
84  uint32_t peak_amp_emulated; ///< emulated from raw data when available
85  uint32_t peak_time_emulated; ///< emulated from raw data when available
86 
87  // This method is used primarily for pretty printing
88  // the second argument to AddString is printf style format
89  void toStrings(vector<pair<string,string> > &items)const{
91  AddString(items, "le_time", "%d", le_time);
92  AddString(items, "le_time_em", "%d", le_time_emulated);
93  AddString(items, "integral", "%d", integral);
94  AddString(items, "integral_em", "%d", integral_emulated);
95  AddString(items, "pedestal", "%d", pedestal);
96  AddString(items, "NPK", "%d", NPK);
97  AddString(items, "time_quality_bit", "%d", time_quality_bit);
98  AddString(items, "overflow_count", "%d", overflow_count);
99  AddString(items, "peak_amp", "%d", peak_amp);
100  AddString(items, "peak_time", "%d", peak_time);
101  AddString(items, "nsamples_integral", "%d", nsamples_integral);
102  AddString(items, "nsamples_pedestal", "%d", nsamples_pedestal);
103  AddString(items, "emulated", "%d", emulated);
104  }
105 };
106 
107 #endif // _Df125FDCPulse_
108 
void toStrings(vector< pair< string, string > > &items) const
Definition: Df125FDCPulse.h:89
void toStrings(vector< pair< string, string > > &items) const
Definition: DDAQAddress.h:47
uint32_t peak_time
from second word
Definition: Df125FDCPulse.h:73
uint32_t peak_time_emulated
emulated from raw data when available
Definition: Df125FDCPulse.h:85
uint32_t peak_amp
from second word (type 9)
Definition: Df125FDCPulse.h:72
uint32_t integral
from second word (type 6)
Definition: Df125FDCPulse.h:71
uint32_t peak_amp_emulated
emulated from raw data when available
Definition: Df125FDCPulse.h:84
uint32_t time_quality_bit_emulated
emulated from raw data when available
Definition: Df125FDCPulse.h:80
uint32_t word2
second word
Definition: Df125FDCPulse.h:75
uint32_t le_time
from first word
Definition: Df125FDCPulse.h:67
uint32_t le_time_emulated
emulated from raw data when available
Definition: Df125FDCPulse.h:79
uint32_t word1
first word
Definition: Df125FDCPulse.h:74
JOBJECT_PUBLIC(Df125FDCPulse)
Holds pulse integral data for one identified pulse in one event in one channel of a single f125 Flash...
uint32_t time_quality_bit
from first word
Definition: Df125FDCPulse.h:68
bool emulated
true if emulated values are copied to the main input
Definition: Df125FDCPulse.h:78
This class holds the Crate, Slot, Channel address for a digitized value from the DAQ system...
Definition: DDAQAddress.h:26
uint32_t pedestal
from second word
Definition: Df125FDCPulse.h:70
uint32_t channel
Definition: DDAQAddress.h:34
uint32_t nsamples_integral
number of samples used in pedestal
Definition: Df125FDCPulse.h:77
uint32_t overflow_count_emulated
emulated from raw data when available
Definition: Df125FDCPulse.h:81
uint32_t rocid
Definition: DDAQAddress.h:32
uint32_t pedestal_emulated
emulated from raw data when available
Definition: Df125FDCPulse.h:82
uint32_t NPK
from first word
Definition: Df125FDCPulse.h:66
uint32_t itrigger
Definition: DDAQAddress.h:35
Df125FDCPulse(uint32_t rocid=0, uint32_t slot=0, uint32_t channel=0, uint32_t itrigger=0, uint32_t NPK=0, uint32_t le_time=0, uint32_t time_quality_bit=0, uint32_t overflow_count=0, uint32_t pedestal=0, uint32_t integral=0, uint32_t peak_amp=0, uint32_t peak_time=0, uint32_t word1=0, uint32_t word2=0, uint32_t nsamples_pedestal=1, uint32_t nsamples_integral=1, bool emulated=false, uint32_t le_time_emulated=0xffff, uint32_t time_quality_bit_emulated=0xffff, uint32_t overflow_count_emulated=0xffff, uint32_t pedestal_emulated=0xffff, uint32_t integral_emulated=0xffff, uint32_t peak_amp_emulated=0xffff, uint32_t peak_time_emulated=0xffff)
Definition: Df125FDCPulse.h:23
uint32_t nsamples_pedestal
number of samples used in integral
Definition: Df125FDCPulse.h:76
uint32_t overflow_count
from first word
Definition: Df125FDCPulse.h:69
uint32_t slot
Definition: DDAQAddress.h:33
uint32_t integral_emulated
emulated from raw data when available
Definition: Df125FDCPulse.h:83