Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-07-05 08:52:36

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