Hall-D Software  alpha
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
DMCTrigger.h
Go to the documentation of this file.
1 // $Id$
2 //
3 // File: DMCTrigger.h
4 // Created: Tue Jun 7 10:15:05 EDT 2011
5 // Creator: davidl (on Darwin eleanor.jlab.org 10.7.0 i386)
6 //
7 
8 #ifndef _DMCTrigger_
9 #define _DMCTrigger_
10 
11 #include <JANA/JObject.h>
12 #include <JANA/JFactory.h>
13 
14 class DMCTrigger:public jana::JObject{
15  public:
17 
18  bool L1a_fired; // BCAL + 4FCAL >2 GeV && BCAL > 200 MeV && FCAL > 30 MeV
19  bool L1b_fired; // BCAL + 4FCAL >2 GeV && BCAL > 30 MeV && FCAL > 30 MeV && NSC>0
20  bool L1c_fired; // FCAL > 250MeV
21 
22  // energy sums with per-channel thresholds applied
23  double Ebcal;
24  double Efcal;
25  // energy sums without per-channel thresholds
26  double Ebcal_all;
27  double Efcal_all;
28  // number of hits in fast sub-detectors
29  unsigned int Nschits;
30  unsigned int Ntofhits;
31 
32  // This method is used primarily for pretty printing
33  // the second argument to AddString is printf style format
34  void toStrings(vector<pair<string,string> > &items)const{
35  AddString(items, "L1a_fired", "%d", L1a_fired ? 1:0);
36  AddString(items, "L1b_fired", "%d", L1b_fired ? 1:0);
37  AddString(items, "Ebcal", "%5.3f", Ebcal);
38  AddString(items, "Efcal", "%5.3f", Efcal);
39  AddString(items, "Ebcal_all", "%5.3f", Ebcal_all);
40  AddString(items, "Efcal_all", "%5.3f", Efcal_all);
41  AddString(items, "Nschits", "%2d", Nschits);
42  AddString(items, "Ntofhits", "%2d", Ntofhits);
43  }
44 
45 };
46 
47 #endif // _DMCTrigger_
48 
bool L1c_fired
Definition: DMCTrigger.h:20
double Efcal_all
Definition: DMCTrigger.h:27
bool L1b_fired
Definition: DMCTrigger.h:19
unsigned int Ntofhits
Definition: DMCTrigger.h:30
double Ebcal
Definition: DMCTrigger.h:23
void toStrings(vector< pair< string, string > > &items) const
Definition: DMCTrigger.h:34
bool L1a_fired
Definition: DMCTrigger.h:18
unsigned int Nschits
Definition: DMCTrigger.h:29
double Ebcal_all
Definition: DMCTrigger.h:26
JOBJECT_PUBLIC(DMCTrigger)
double Efcal
Definition: DMCTrigger.h:24