File indexing completed on 2025-08-05 08:15:19
0001
0002
0003 #define R__DICTIONARY_FILENAME TrackPidAssoc_Dict
0004 #define R__NO_DEPRECATION
0005
0006
0007 #include <stddef.h>
0008 #include <stdio.h>
0009 #include <stdlib.h>
0010 #include <string.h>
0011 #include <assert.h>
0012 #define G__DICTIONARY
0013 #include "RConfig.h"
0014 #include "TClass.h"
0015 #include "TDictAttributeMap.h"
0016 #include "TInterpreter.h"
0017 #include "TROOT.h"
0018 #include "TBuffer.h"
0019 #include "TMemberInspector.h"
0020 #include "TInterpreter.h"
0021 #include "TVirtualMutex.h"
0022 #include "TError.h"
0023
0024 #ifndef G__ROOT
0025 #define G__ROOT
0026 #endif
0027
0028 #include "RtypesImp.h"
0029 #include "TIsAProxy.h"
0030 #include "TFileMergeInfo.h"
0031 #include <algorithm>
0032 #include "TCollectionProxyInfo.h"
0033
0034
0035 #include "TDataMember.h"
0036
0037
0038 namespace std {} using namespace std;
0039
0040
0041 #include "/sphenix/u/weihuma/analysis/TrackPid/src/TrackPidAssoc.h"
0042
0043
0044
0045 namespace ROOT {
0046 static void *new_TrackPidAssoc(void *p = 0);
0047 static void *newArray_TrackPidAssoc(Long_t size, void *p);
0048 static void delete_TrackPidAssoc(void *p);
0049 static void deleteArray_TrackPidAssoc(void *p);
0050 static void destruct_TrackPidAssoc(void *p);
0051
0052
0053 static TGenericClassInfo *GenerateInitInstanceLocal(const ::TrackPidAssoc*)
0054 {
0055 ::TrackPidAssoc *ptr = 0;
0056 static ::TVirtualIsAProxy* isa_proxy = new ::TInstrumentedIsAProxy< ::TrackPidAssoc >(0);
0057 static ::ROOT::TGenericClassInfo
0058 instance("TrackPidAssoc", ::TrackPidAssoc::Class_Version(), "", 23,
0059 typeid(::TrackPidAssoc), ::ROOT::Internal::DefineBehavior(ptr, ptr),
0060 &::TrackPidAssoc::Dictionary, isa_proxy, 4,
0061 sizeof(::TrackPidAssoc) );
0062 instance.SetNew(&new_TrackPidAssoc);
0063 instance.SetNewArray(&newArray_TrackPidAssoc);
0064 instance.SetDelete(&delete_TrackPidAssoc);
0065 instance.SetDeleteArray(&deleteArray_TrackPidAssoc);
0066 instance.SetDestructor(&destruct_TrackPidAssoc);
0067 return &instance;
0068 }
0069 TGenericClassInfo *GenerateInitInstance(const ::TrackPidAssoc*)
0070 {
0071 return GenerateInitInstanceLocal((::TrackPidAssoc*)0);
0072 }
0073
0074 static ::ROOT::TGenericClassInfo *_R__UNIQUE_DICT_(Init) = GenerateInitInstanceLocal((const ::TrackPidAssoc*)0x0); R__UseDummy(_R__UNIQUE_DICT_(Init));
0075 }
0076
0077
0078 atomic_TClass_ptr TrackPidAssoc::fgIsA(0);
0079
0080
0081 const char *TrackPidAssoc::Class_Name()
0082 {
0083 return "TrackPidAssoc";
0084 }
0085
0086
0087 const char *TrackPidAssoc::ImplFileName()
0088 {
0089 return ::ROOT::GenerateInitInstanceLocal((const ::TrackPidAssoc*)0x0)->GetImplFileName();
0090 }
0091
0092
0093 int TrackPidAssoc::ImplFileLine()
0094 {
0095 return ::ROOT::GenerateInitInstanceLocal((const ::TrackPidAssoc*)0x0)->GetImplFileLine();
0096 }
0097
0098
0099 TClass *TrackPidAssoc::Dictionary()
0100 {
0101 fgIsA = ::ROOT::GenerateInitInstanceLocal((const ::TrackPidAssoc*)0x0)->GetClass();
0102 return fgIsA;
0103 }
0104
0105
0106 TClass *TrackPidAssoc::Class()
0107 {
0108 if (!fgIsA.load()) { R__LOCKGUARD(gInterpreterMutex); fgIsA = ::ROOT::GenerateInitInstanceLocal((const ::TrackPidAssoc*)0x0)->GetClass(); }
0109 return fgIsA;
0110 }
0111
0112
0113 void TrackPidAssoc::Streamer(TBuffer &R__b)
0114 {
0115
0116
0117 if (R__b.IsReading()) {
0118 R__b.ReadClassBuffer(TrackPidAssoc::Class(),this);
0119 } else {
0120 R__b.WriteClassBuffer(TrackPidAssoc::Class(),this);
0121 }
0122 }
0123
0124 namespace ROOT {
0125
0126 static void *new_TrackPidAssoc(void *p) {
0127 return p ? new(p) ::TrackPidAssoc : new ::TrackPidAssoc;
0128 }
0129 static void *newArray_TrackPidAssoc(Long_t nElements, void *p) {
0130 return p ? new(p) ::TrackPidAssoc[nElements] : new ::TrackPidAssoc[nElements];
0131 }
0132
0133 static void delete_TrackPidAssoc(void *p) {
0134 delete ((::TrackPidAssoc*)p);
0135 }
0136 static void deleteArray_TrackPidAssoc(void *p) {
0137 delete [] ((::TrackPidAssoc*)p);
0138 }
0139 static void destruct_TrackPidAssoc(void *p) {
0140 typedef ::TrackPidAssoc current_t;
0141 ((current_t*)p)->~current_t();
0142 }
0143 }
0144
0145 namespace ROOT {
0146 static TClass *multimaplEunsignedsPintcOunsignedsPintgR_Dictionary();
0147 static void multimaplEunsignedsPintcOunsignedsPintgR_TClassManip(TClass*);
0148 static void *new_multimaplEunsignedsPintcOunsignedsPintgR(void *p = 0);
0149 static void *newArray_multimaplEunsignedsPintcOunsignedsPintgR(Long_t size, void *p);
0150 static void delete_multimaplEunsignedsPintcOunsignedsPintgR(void *p);
0151 static void deleteArray_multimaplEunsignedsPintcOunsignedsPintgR(void *p);
0152 static void destruct_multimaplEunsignedsPintcOunsignedsPintgR(void *p);
0153
0154
0155 static TGenericClassInfo *GenerateInitInstanceLocal(const multimap<unsigned int,unsigned int>*)
0156 {
0157 multimap<unsigned int,unsigned int> *ptr = 0;
0158 static ::TVirtualIsAProxy* isa_proxy = new ::TIsAProxy(typeid(multimap<unsigned int,unsigned int>));
0159 static ::ROOT::TGenericClassInfo
0160 instance("multimap<unsigned int,unsigned int>", -2, "map", 99,
0161 typeid(multimap<unsigned int,unsigned int>), ::ROOT::Internal::DefineBehavior(ptr, ptr),
0162 &multimaplEunsignedsPintcOunsignedsPintgR_Dictionary, isa_proxy, 0,
0163 sizeof(multimap<unsigned int,unsigned int>) );
0164 instance.SetNew(&new_multimaplEunsignedsPintcOunsignedsPintgR);
0165 instance.SetNewArray(&newArray_multimaplEunsignedsPintcOunsignedsPintgR);
0166 instance.SetDelete(&delete_multimaplEunsignedsPintcOunsignedsPintgR);
0167 instance.SetDeleteArray(&deleteArray_multimaplEunsignedsPintcOunsignedsPintgR);
0168 instance.SetDestructor(&destruct_multimaplEunsignedsPintcOunsignedsPintgR);
0169 instance.AdoptCollectionProxyInfo(TCollectionProxyInfo::Generate(TCollectionProxyInfo::MapInsert< multimap<unsigned int,unsigned int> >()));
0170
0171 ::ROOT::AddClassAlternate("multimap<unsigned int,unsigned int>","std::multimap<unsigned int, unsigned int, std::less<unsigned int>, std::allocator<std::pair<unsigned int const, unsigned int> > >");
0172 return &instance;
0173 }
0174
0175 static ::ROOT::TGenericClassInfo *_R__UNIQUE_DICT_(Init) = GenerateInitInstanceLocal((const multimap<unsigned int,unsigned int>*)0x0); R__UseDummy(_R__UNIQUE_DICT_(Init));
0176
0177
0178 static TClass *multimaplEunsignedsPintcOunsignedsPintgR_Dictionary() {
0179 TClass* theClass =::ROOT::GenerateInitInstanceLocal((const multimap<unsigned int,unsigned int>*)0x0)->GetClass();
0180 multimaplEunsignedsPintcOunsignedsPintgR_TClassManip(theClass);
0181 return theClass;
0182 }
0183
0184 static void multimaplEunsignedsPintcOunsignedsPintgR_TClassManip(TClass* ){
0185 }
0186
0187 }
0188
0189 namespace ROOT {
0190
0191 static void *new_multimaplEunsignedsPintcOunsignedsPintgR(void *p) {
0192 return p ? ::new((::ROOT::Internal::TOperatorNewHelper*)p) multimap<unsigned int,unsigned int> : new multimap<unsigned int,unsigned int>;
0193 }
0194 static void *newArray_multimaplEunsignedsPintcOunsignedsPintgR(Long_t nElements, void *p) {
0195 return p ? ::new((::ROOT::Internal::TOperatorNewHelper*)p) multimap<unsigned int,unsigned int>[nElements] : new multimap<unsigned int,unsigned int>[nElements];
0196 }
0197
0198 static void delete_multimaplEunsignedsPintcOunsignedsPintgR(void *p) {
0199 delete ((multimap<unsigned int,unsigned int>*)p);
0200 }
0201 static void deleteArray_multimaplEunsignedsPintcOunsignedsPintgR(void *p) {
0202 delete [] ((multimap<unsigned int,unsigned int>*)p);
0203 }
0204 static void destruct_multimaplEunsignedsPintcOunsignedsPintgR(void *p) {
0205 typedef multimap<unsigned int,unsigned int> current_t;
0206 ((current_t*)p)->~current_t();
0207 }
0208 }
0209
0210 namespace {
0211 void TriggerDictionaryInitialization_TrackPidAssoc_Dict_Impl() {
0212 static const char* headers[] = {
0213 "0",
0214 0
0215 };
0216 static const char* includePaths[] = {
0217 0
0218 };
0219 static const char* fwdDeclCode = R"DICTFWDDCLS(
0220 #line 1 "TrackPidAssoc_Dict dictionary forward declarations' payload"
0221 #pragma clang diagnostic ignored "-Wkeyword-compat"
0222 #pragma clang diagnostic ignored "-Wignored-attributes"
0223 #pragma clang diagnostic ignored "-Wreturn-type-c-linkage"
0224 extern int __Cling_AutoLoading_Map;
0225 class TrackPidAssoc;
0226 )DICTFWDDCLS";
0227 static const char* payloadCode = R"DICTPAYLOAD(
0228 #line 1 "TrackPidAssoc_Dict dictionary payload"
0229
0230
0231 #define _BACKWARD_BACKWARD_WARNING_H
0232 // Inline headers
0233 /**
0234 * @file trackbase/TrkrClusterHitAssoc.h
0235 * @author D. McGlinchey
0236 * @date June 2018
0237 * @brief Class for associating clusters to the hits that went into them
0238 */
0239 #ifndef TRACKPID_TRACKPIDASSOC_H
0240 #define TRACKPID_TRACKPIDASSOC_H
0241
0242 #include <phool/PHObject.h>
0243
0244 #include <iostream> // for cout, ostream
0245 #include <map>
0246 #include <utility> // for pair
0247
0248 /**
0249 * @brief Class for associating particle ID categories to tracks
0250 *
0251 * Store the associations between particle ID categories and tracks
0252 */
0253 class TrackPidAssoc : public PHObject
0254 {
0255 public:
0256 //! typedefs for convenience
0257 typedef std::multimap<unsigned int, unsigned int> MMap;
0258 typedef MMap::iterator Iterator;
0259 typedef MMap::const_iterator ConstIterator;
0260 typedef std::pair<Iterator, Iterator> Range;
0261 typedef std::pair<ConstIterator, ConstIterator> ConstRange;
0262 //! ctor
0263 TrackPidAssoc();
0264 //! dtor
0265 virtual ~TrackPidAssoc();
0266
0267 void Reset();
0268
0269 void identify(std::ostream &os = std::cout) const;
0270
0271 /**
0272 * @brief Add association between particle ID and track
0273 * @param[in] PID index
0274 * @param[in] Index of the track
0275 */
0276 void addAssoc(unsigned int pid, unsigned int trid);
0277
0278 /**
0279 * @brief Get all the tracks associated with PID index
0280 * @param[in] pid particle id index
0281 * @param[out] Range of tracks associated with pid
0282 */
0283 ConstRange getTracks(unsigned int pid);
0284
0285 static const unsigned int electron = 1;
0286 static const unsigned int hadron = 2;
0287
0288
0289 private:
0290 MMap m_map;
0291 ClassDef(TrackPidAssoc, 1);
0292 };
0293
0294 #endif // TRACKPID_TRACKPIDASSOC_H
0295
0296 #undef _BACKWARD_BACKWARD_WARNING_H
0297 )DICTPAYLOAD";
0298 static const char* classesHeaders[] = {
0299 "TrackPidAssoc", payloadCode, "@",
0300 nullptr
0301 };
0302 static bool isInitialized = false;
0303 if (!isInitialized) {
0304 TROOT::RegisterModule("TrackPidAssoc_Dict",
0305 headers, includePaths, payloadCode, fwdDeclCode,
0306 TriggerDictionaryInitialization_TrackPidAssoc_Dict_Impl, {}, classesHeaders, /*hasCxxModule*/false);
0307 isInitialized = true;
0308 }
0309 }
0310 static struct DictInit {
0311 DictInit() {
0312 TriggerDictionaryInitialization_TrackPidAssoc_Dict_Impl();
0313 }
0314 } __TheDictionaryInitializer;
0315 }
0316 void TriggerDictionaryInitialization_TrackPidAssoc_Dict() {
0317 TriggerDictionaryInitialization_TrackPidAssoc_Dict_Impl();
0318 }