File indexing completed on 2025-09-18 09:10:57
0001
0002
0003 #ifndef EDM4HEP_ReconstructedParticleOBJ_H
0004 #define EDM4HEP_ReconstructedParticleOBJ_H
0005
0006
0007 #include "edm4hep/ReconstructedParticleData.h"
0008 #include "edm4hep/Cluster.h"
0009 #include "edm4hep/Track.h"
0010 #include <vector>
0011
0012 #include "podio/ObjectID.h"
0013 #include <vector>
0014 #include <memory>
0015
0016 namespace edm4hep {
0017 class Vertex;
0018 }
0019
0020
0021 namespace edm4hep {
0022
0023 class ReconstructedParticle;
0024
0025 class ReconstructedParticleObj {
0026 public:
0027
0028 ReconstructedParticleObj();
0029
0030 ReconstructedParticleObj(const ReconstructedParticleObj&);
0031
0032
0033 ReconstructedParticleObj(const podio::ObjectID& id, const ReconstructedParticleData& data);
0034
0035 ReconstructedParticleObj& operator=(const ReconstructedParticleObj&) = delete;
0036 virtual ~ReconstructedParticleObj();
0037
0038 public:
0039 podio::ObjectID id;
0040 ReconstructedParticleData data;
0041 std::unique_ptr<edm4hep::Vertex> m_decayVertex{nullptr};
0042 std::vector<edm4hep::Cluster>* m_clusters{nullptr};
0043 std::vector<edm4hep::Track>* m_tracks{nullptr};
0044 std::vector<edm4hep::ReconstructedParticle>* m_particles{nullptr};
0045 };
0046
0047 }
0048
0049
0050 #endif