Hall-D Software  alpha
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
DESSkimData.h
Go to the documentation of this file.
1 // $Id$
2 //
3 // File: DESSkimData.h
4 // Creator: sdobbs
5 //
6 
7 
8 #ifndef _DESSkimData_
9 #define _DESSkimData_
10 
11 #include <JANA/JFactory.h>
12 #include <JANA/JObject.h>
13 #include <JANA/JEvent.h>
14 using namespace jana;
15 
16 #include <vector>
17 #include <set>
18 #include <string>
19 #include <iostream>
20 using namespace std;
21 
22 class DESSkimData : public JObject {
23 
24  public:
25 
26  JOBJECT_PUBLIC(DESSkimData);
27 
28  DESSkimData(const set<string> &in_event_skims, const vector<string> &in_skim_list) :
29  skim_list(in_skim_list), event_skims(in_event_skims) {}
31 
32  inline const vector<string>& GetAllSkims() const { return skim_list; }
33  inline const set<string>& GetEventSkims() const { return event_skims; }
34  bool Get_IsEventSkim(string locSkim) const{return (event_skims.find(locSkim) != event_skims.end());}
35 
36 
37  void Print(string mode="") const {
38  if(mode=="all") {
39  cout << endl << "These skims are available:" << endl;
40  //cout << " N = " << skim_list.size() << endl;
41  for(vector<string>::const_iterator it = skim_list.begin();
42  it != skim_list.end(); it++)
43  cout << " " << *it << endl;
44  }
45 
46  cout << endl << "Event satisfies these skims:" << endl;
47  //cout << " N = " << event_skims.size() << endl;
48  for(set<string>::const_iterator it = event_skims.begin();
49  it != event_skims.end(); it++)
50  cout << " " << *it << endl;
51  }
52 
53  protected:
54  vector<string> skim_list;
55  set<string> event_skims;
56 };
57 
58 #endif // _DESSkimData_
const set< string > & GetEventSkims() const
Definition: DESSkimData.h:33
const vector< string > & GetAllSkims() const
Definition: DESSkimData.h:32
vector< string > skim_list
Definition: DESSkimData.h:54
void Print(string mode="") const
Definition: DESSkimData.h:37
DESSkimData(const set< string > &in_event_skims, const vector< string > &in_skim_list)
Definition: DESSkimData.h:28
bool Get_IsEventSkim(string locSkim) const
Definition: DESSkimData.h:34
set< string > event_skims
Definition: DESSkimData.h:55