StRoot  1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
StHbtCheckPdgIdList.h
1 /***************************************************************************
2  *
3  * $Id: StHbtCheckPdgIdList.h,v 1.2 2001/06/23 21:55:17 laue Exp $
4  *
5  * Author: Frank Laue, Ohio State, laue@mps.ohio-state.edu
6  ***************************************************************************
7  *
8  * Description: part of STAR HBT Framework: StHbtMaker package
9  *
10  * $Log: StHbtCheckPdgIdList.h,v $
11  * Revision 1.2 2001/06/23 21:55:17 laue
12  * StHbtCheckPdgIdList can take can not check for mother,particle,daughter
13  * Some output turned off
14  *
15  * Revision 1.1 2000/05/25 21:23:03 laue
16  * Adding to CVS. Tool to select particle Ids from event generator input.
17  *
18  **************************************************************************/
19 
20 
21 #ifndef StHbtCheckPdgIdList_hh
22 #define StHbtCheckPdgIdList_hh
23 
24 #include "StHbtMaker/Infrastructure/StHbtTypes.hh"
25 #include <list>
26 
27 #if !defined(ST_NO_NAMESPACES)
28 using std::list;
29 #endif
30 
31 #ifdef ST_NO_TEMPLATE_DEF_ARGS
32 typedef list<int, allocator<int> > pdgIdList;
33 typedef list<int, allocator<int> >::iterator pdgIdListIterator;
34 #else
35 typedef list<int> pdgIdList;
36 typedef list<int>::iterator pdgIdListIterator;
37 #endif
38 
40 
41 public:
42 
43  pdgIdList* mAcceptedParticles;
44  pdgIdList* mAcceptedMothers;
45  pdgIdList* mAcceptedDaughters;
46 
48  virtual ~StHbtCheckPdgIdList();
49 
50  StHbtString Report();
51 
52  void AddAcceptedParticle( int pdgCode );
53  void AddAcceptedMother( int pdgCode );
54  void AddAcceptedDaughter( int pdgCode );
55  int CheckPdgIdLists(); // returns 1 if one of the three lists is not empty
56  int CheckPdgIdList( pdgIdList* list); // returns 1 if list is not empty
57  int CheckPdgIdList( pdgIdList* list, int pdgCode ); // returns 1 if list is not empty or requested pdgCode is in list
58  int CheckPdgIdList( int pdgCode, int motherPdgCode, int daughterPdgCode);
59 
60 #ifdef __ROOT__
61  ClassDef(StHbtCheckPdgIdList, 0)
62 #endif
63 };
64 
65 #endif
66