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