![]() |
HepPDT Reference DocumentationHepPDT |
00001 #ifndef PROCESSUNKNOWNID_HH 00002 #define PROCESSUNKNOWNID_HH 00003 // ---------------------------------------------------------------------- 00004 // 00005 // ProcessUnknownID.hh 00006 // Author: Lynn Garren 00007 // 00008 // ---------------------------------------------------------------------- 00009 00010 #include "HepPDT/ParticleID.hh" 00011 #include "HepPDT/ParticleData.hh" 00012 00013 namespace HepPDT { 00014 00015 // forward declaration to avoid circular dependencies 00016 class ParticleDataTable; 00017 00018 00020 00028 class ProcessUnknownID { 00029 00030 public: 00031 00033 ParticleData * callProcessUnknownID( ParticleID, const ParticleDataTable & ); 00034 00036 virtual ~ProcessUnknownID( ) {} 00037 00038 protected: 00039 ProcessUnknownID( ) : alreadyHere(false) {} 00040 00041 private: 00042 00043 bool alreadyHere; 00044 00045 virtual ParticleData * processUnknownID( ParticleID, 00046 const ParticleDataTable & ) = 0; 00047 00048 }; // ProcessUnknownID 00049 00050 } // HepPDT 00051 00052 #endif // PROCESSUNKNOWNID_HH