Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-06-03 08:33:28

0001 // AUTOMATICALLY GENERATED FILE - DO NOT EDIT
0002 
0003 #ifndef EDM4HEP_TrackMCParticleLinkOBJ_H
0004 #define EDM4HEP_TrackMCParticleLinkOBJ_H
0005 
0006 // data model specific includes
0007 #include "edm4hep/TrackMCParticleLinkData.h"
0008 
0009 #include "podio/ObjectID.h"
0010 #include <memory>
0011 // forward declarations
0012 namespace edm4hep {
0013 class Track;
0014 class MCParticle;
0015 } // namespace edm4hep
0016 
0017 namespace edm4hep {
0018 
0019 class TrackMCParticleLink;
0020 
0021 class TrackMCParticleLinkObj {
0022 public:
0023   /// constructor
0024   TrackMCParticleLinkObj();
0025   /// copy constructor (does a deep-copy of relation containers)
0026   TrackMCParticleLinkObj(const TrackMCParticleLinkObj&);
0027   /// constructor from ObjectID and TrackMCParticleLinkData
0028   /// does not initialize the internal relation containers
0029   TrackMCParticleLinkObj(const podio::ObjectID id, TrackMCParticleLinkData data);
0030   /// No assignment operator
0031   TrackMCParticleLinkObj& operator=(const TrackMCParticleLinkObj&) = delete;
0032   virtual ~TrackMCParticleLinkObj();
0033 
0034 public:
0035   podio::ObjectID id;
0036   TrackMCParticleLinkData data;
0037   std::unique_ptr<edm4hep::Track> m_from{nullptr};
0038   std::unique_ptr<edm4hep::MCParticle> m_to{nullptr};
0039 };
0040 
0041 } // namespace edm4hep
0042 
0043 #endif