Line data Source code
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 0 : ~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 :
|