StRoot  1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
EvtIdSet.hh
1 //--------------------------------------------------------------------------
2 //
3 // Environment:
4 // This software is part of the EvtGen package developed jointly
5 // for the BaBar and CLEO collaborations. If you use all or part
6 // of it, please give an appropriate acknowledgement.
7 //
8 // Copyright Information: See EvtGen/COPYRIGHT
9 // Copyright (C) 1998 Caltech, UCSB
10 //
11 // Module: EvtGen/EvtId.hh
12 //
13 // Description:Class for particle Id used in EvtGen.
14 //
15 // Modification history:
16 //
17 // DJL/RYD Jan 5,2000 Module created
18 //
19 //------------------------------------------------------------------------
20 
21 #ifndef EVTIDSET_HH
22 #define EVTIDSET_HH
23 
24 #include "EvtGenBase/EvtPatches.hh"
25 #include "EvtGenBase/EvtId.hh"
26 #include <string>
27 class EvtId;
28 
29 class EvtIdSet {
30 
31 public:
32 
33  //need a default constructor
34 
35  EvtIdSet(const EvtId name1);
36  EvtIdSet(const std::string name1);
37 
38  EvtIdSet(const EvtId name1,
39  const EvtId name2);
40 
41  EvtIdSet(const std::string name1,
42  const std::string name2);
43 
44  EvtIdSet(const EvtId name1,
45  const EvtId name2,
46  const EvtId name3);
47 
48  EvtIdSet(const std::string name1,
49  const std::string name2,
50  const std::string name3);
51 
52  EvtIdSet(const EvtId name1,
53  const EvtId name2,
54  const EvtId name3,
55  const EvtId name4);
56 
57  EvtIdSet(const std::string name1,
58  const std::string name2,
59  const std::string name3,
60  const std::string name4);
61 
62  EvtIdSet(const EvtId name1,
63  const EvtId name2,
64  const EvtId name3,
65  const EvtId name4,
66  const EvtId name5);
67 
68  EvtIdSet(const std::string name1,
69  const std::string name2,
70  const std::string name3,
71  const std::string name4,
72  const std::string name5);
73 
74  EvtIdSet(const EvtId name1,
75  const EvtId name2,
76  const EvtId name3,
77  const EvtId name4,
78  const EvtId name5,
79  const EvtId name6);
80 
81  EvtIdSet(const std::string name1,
82  const std::string name2,
83  const std::string name3,
84  const std::string name4,
85  const std::string name5,
86  const std::string name6);
87 
88  EvtIdSet(const EvtId name1,
89  const EvtId name2,
90  const EvtId name3,
91  const EvtId name4,
92  const EvtId name5,
93  const EvtId name6,
94  const EvtId name7);
95 
96  EvtIdSet(const std::string name1,
97  const std::string name2,
98  const std::string name3,
99  const std::string name4,
100  const std::string name5,
101  const std::string name6,
102  const std::string name7);
103 
104  EvtIdSet(const EvtId name1,
105  const EvtId name2,
106  const EvtId name3,
107  const EvtId name4,
108  const EvtId name5,
109  const EvtId name6,
110  const EvtId name7,
111  const EvtId name8);
112 
113  EvtIdSet(const std::string name1,
114  const std::string name2,
115  const std::string name3,
116  const std::string name4,
117  const std::string name5,
118  const std::string name6,
119  const std::string name7,
120  const std::string name8);
121 
122  EvtIdSet(const EvtId name1,
123  const EvtId name2,
124  const EvtId name3,
125  const EvtId name4,
126  const EvtId name5,
127  const EvtId name6,
128  const EvtId name7,
129  const EvtId name8,
130  const EvtId name9);
131 
132  EvtIdSet(const std::string name1,
133  const std::string name2,
134  const std::string name3,
135  const std::string name4,
136  const std::string name5,
137  const std::string name6,
138  const std::string name7,
139  const std::string name8,
140  const std::string name9);
141 
142  EvtIdSet(const EvtId name1,
143  const EvtId name2,
144  const EvtId name3,
145  const EvtId name4,
146  const EvtId name5,
147  const EvtId name6,
148  const EvtId name7,
149  const EvtId name8,
150  const EvtId name9,
151  const EvtId name10);
152 
153  EvtIdSet(const std::string name1,
154  const std::string name2,
155  const std::string name3,
156  const std::string name4,
157  const std::string name5,
158  const std::string name6,
159  const std::string name7,
160  const std::string name8,
161  const std::string name9,
162  const std::string name10);
163 
164  EvtIdSet(const EvtId name1,
165  const EvtId name2,
166  const EvtId name3,
167  const EvtId name4,
168  const EvtId name5,
169  const EvtId name6,
170  const EvtId name7,
171  const EvtId name8,
172  const EvtId name9,
173  const EvtId name10,
174  const EvtId name11);
175 
176  EvtIdSet(const std::string name1,
177  const std::string name2,
178  const std::string name3,
179  const std::string name4,
180  const std::string name5,
181  const std::string name6,
182  const std::string name7,
183  const std::string name8,
184  const std::string name9,
185  const std::string name10,
186  const std::string name11);
187 
188  EvtIdSet(const EvtId name1,
189  const EvtId name2,
190  const EvtId name3,
191  const EvtId name4,
192  const EvtId name5,
193  const EvtId name6,
194  const EvtId name7,
195  const EvtId name8,
196  const EvtId name9,
197  const EvtId name10,
198  const EvtId name11,
199  const EvtId name12);
200 
201  EvtIdSet(const std::string name1,
202  const std::string name2,
203  const std::string name3,
204  const std::string name4,
205  const std::string name5,
206  const std::string name6,
207  const std::string name7,
208  const std::string name8,
209  const std::string name9,
210  const std::string name10,
211  const std::string name11,
212  const std::string name12);
213 
214  ~EvtIdSet() { delete [] _list; }
215 
216  EvtIdSet(const EvtIdSet& set1);
217  EvtIdSet(const EvtIdSet& set1, const EvtIdSet& set2);
218 
219  int contains(const EvtId id);
220  int contains(const std::string id);
221 
222  void append(const EvtIdSet set1);
223  int sizeOfSet() const;
224  EvtId getElem(const int i) const;
225 
226 private:
227 
228  int _numInList;
229  EvtId *_list;
230 
231 };
232 
233 #endif
234 
Definition: EvtId.hh:27