Back to home page

EIC code displayed by LXR

 
 

    


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

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