Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-18 09:55:28

0001 // AUTOMATICALLY GENERATED FILE - DO NOT EDIT
0002 
0003 #ifndef EDM4EIC_CherenkovParticleIDOBJ_H
0004 #define EDM4EIC_CherenkovParticleIDOBJ_H
0005 
0006 // data model specific includes
0007 #include "edm4eic/CherenkovParticleIDData.h"
0008 #include "edm4eic/CherenkovParticleIDHypothesis.h"
0009 #include "edm4eic/MCRecoTrackerHitAssociation.h"
0010 #include "edm4hep/Vector2f.h"
0011 #include <vector>
0012 
0013 #include "podio/ObjectID.h"
0014 #include <vector>
0015 // forward declarations
0016 namespace edm4eic {
0017 class TrackSegment;
0018 }
0019 
0020 
0021 namespace edm4eic {
0022 
0023 class CherenkovParticleID;
0024 
0025 class CherenkovParticleIDObj {
0026 public:
0027   /// constructor
0028   CherenkovParticleIDObj();
0029   /// copy constructor (does a deep-copy of relation containers)
0030   CherenkovParticleIDObj(const CherenkovParticleIDObj&);
0031   /// constructor from ObjectID and CherenkovParticleIDData
0032   /// does not initialize the internal relation containers
0033   CherenkovParticleIDObj(const podio::ObjectID id, CherenkovParticleIDData data);
0034   /// No assignment operator
0035   CherenkovParticleIDObj& operator=(const CherenkovParticleIDObj&) = delete;
0036   virtual ~CherenkovParticleIDObj();
0037 
0038 public:
0039   podio::ObjectID id;
0040   CherenkovParticleIDData data;
0041   edm4eic::TrackSegment* m_chargedParticle{nullptr};
0042   std::vector<edm4eic::MCRecoTrackerHitAssociation>* m_rawHitAssociations{nullptr};
0043   std::vector<edm4eic::CherenkovParticleIDHypothesis>* m_hypotheses{nullptr};
0044   std::vector<edm4hep::Vector2f>* m_thetaPhiPhotons{nullptr};
0045 };
0046 
0047 } // namespace edm4eic
0048 
0049 
0050 #endif