00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #ifndef EVTIDSET_HH
00022 #define EVTIDSET_HH
00023
00024 #include "EvtGenBase/EvtPatches.hh"
00025 #include "EvtGenBase/EvtId.hh"
00026 #include <string>
00027 class EvtId;
00028
00029 class EvtIdSet {
00030
00031 public:
00032
00033
00034
00035 EvtIdSet(const EvtId name1);
00036 EvtIdSet(const std::string name1);
00037
00038 EvtIdSet(const EvtId name1,
00039 const EvtId name2);
00040
00041 EvtIdSet(const std::string name1,
00042 const std::string name2);
00043
00044 EvtIdSet(const EvtId name1,
00045 const EvtId name2,
00046 const EvtId name3);
00047
00048 EvtIdSet(const std::string name1,
00049 const std::string name2,
00050 const std::string name3);
00051
00052 EvtIdSet(const EvtId name1,
00053 const EvtId name2,
00054 const EvtId name3,
00055 const EvtId name4);
00056
00057 EvtIdSet(const std::string name1,
00058 const std::string name2,
00059 const std::string name3,
00060 const std::string name4);
00061
00062 EvtIdSet(const EvtId name1,
00063 const EvtId name2,
00064 const EvtId name3,
00065 const EvtId name4,
00066 const EvtId name5);
00067
00068 EvtIdSet(const std::string name1,
00069 const std::string name2,
00070 const std::string name3,
00071 const std::string name4,
00072 const std::string name5);
00073
00074 EvtIdSet(const EvtId name1,
00075 const EvtId name2,
00076 const EvtId name3,
00077 const EvtId name4,
00078 const EvtId name5,
00079 const EvtId name6);
00080
00081 EvtIdSet(const std::string name1,
00082 const std::string name2,
00083 const std::string name3,
00084 const std::string name4,
00085 const std::string name5,
00086 const std::string name6);
00087
00088 EvtIdSet(const EvtId name1,
00089 const EvtId name2,
00090 const EvtId name3,
00091 const EvtId name4,
00092 const EvtId name5,
00093 const EvtId name6,
00094 const EvtId name7);
00095
00096 EvtIdSet(const std::string name1,
00097 const std::string name2,
00098 const std::string name3,
00099 const std::string name4,
00100 const std::string name5,
00101 const std::string name6,
00102 const std::string name7);
00103
00104 EvtIdSet(const EvtId name1,
00105 const EvtId name2,
00106 const EvtId name3,
00107 const EvtId name4,
00108 const EvtId name5,
00109 const EvtId name6,
00110 const EvtId name7,
00111 const EvtId name8);
00112
00113 EvtIdSet(const std::string name1,
00114 const std::string name2,
00115 const std::string name3,
00116 const std::string name4,
00117 const std::string name5,
00118 const std::string name6,
00119 const std::string name7,
00120 const std::string name8);
00121
00122 EvtIdSet(const EvtId name1,
00123 const EvtId name2,
00124 const EvtId name3,
00125 const EvtId name4,
00126 const EvtId name5,
00127 const EvtId name6,
00128 const EvtId name7,
00129 const EvtId name8,
00130 const EvtId name9);
00131
00132 EvtIdSet(const std::string name1,
00133 const std::string name2,
00134 const std::string name3,
00135 const std::string name4,
00136 const std::string name5,
00137 const std::string name6,
00138 const std::string name7,
00139 const std::string name8,
00140 const std::string name9);
00141
00142 EvtIdSet(const EvtId name1,
00143 const EvtId name2,
00144 const EvtId name3,
00145 const EvtId name4,
00146 const EvtId name5,
00147 const EvtId name6,
00148 const EvtId name7,
00149 const EvtId name8,
00150 const EvtId name9,
00151 const EvtId name10);
00152
00153 EvtIdSet(const std::string name1,
00154 const std::string name2,
00155 const std::string name3,
00156 const std::string name4,
00157 const std::string name5,
00158 const std::string name6,
00159 const std::string name7,
00160 const std::string name8,
00161 const std::string name9,
00162 const std::string name10);
00163
00164 EvtIdSet(const EvtId name1,
00165 const EvtId name2,
00166 const EvtId name3,
00167 const EvtId name4,
00168 const EvtId name5,
00169 const EvtId name6,
00170 const EvtId name7,
00171 const EvtId name8,
00172 const EvtId name9,
00173 const EvtId name10,
00174 const EvtId name11);
00175
00176 EvtIdSet(const std::string name1,
00177 const std::string name2,
00178 const std::string name3,
00179 const std::string name4,
00180 const std::string name5,
00181 const std::string name6,
00182 const std::string name7,
00183 const std::string name8,
00184 const std::string name9,
00185 const std::string name10,
00186 const std::string name11);
00187
00188 EvtIdSet(const EvtId name1,
00189 const EvtId name2,
00190 const EvtId name3,
00191 const EvtId name4,
00192 const EvtId name5,
00193 const EvtId name6,
00194 const EvtId name7,
00195 const EvtId name8,
00196 const EvtId name9,
00197 const EvtId name10,
00198 const EvtId name11,
00199 const EvtId name12);
00200
00201 EvtIdSet(const std::string name1,
00202 const std::string name2,
00203 const std::string name3,
00204 const std::string name4,
00205 const std::string name5,
00206 const std::string name6,
00207 const std::string name7,
00208 const std::string name8,
00209 const std::string name9,
00210 const std::string name10,
00211 const std::string name11,
00212 const std::string name12);
00213
00214 ~EvtIdSet() { delete [] _list; }
00215
00216 EvtIdSet(const EvtIdSet& set1);
00217 EvtIdSet(const EvtIdSet& set1, const EvtIdSet& set2);
00218
00219 int contains(const EvtId id);
00220 int contains(const std::string id);
00221
00222 void append(const EvtIdSet set1);
00223 int sizeOfSet() const;
00224 EvtId getElem(const int i) const;
00225
00226 private:
00227
00228 int _numInList;
00229 EvtId *_list;
00230
00231 };
00232
00233 #endif
00234