File indexing completed on 2025-08-06 08:19:07
0001 #ifndef G4EVAL_DSTTRACKINFOREADER_H
0002 #define G4EVAL_DSTTRACKINFOREADER_H
0003
0004
0005
0006
0007
0008
0009
0010
0011 #include <fun4all/SubsysReco.h>
0012 #include <trackbase/TrkrClusterContainerv4.h>
0013 #include <trackbase/TrkrClusterv5.h>
0014 #include <trackbase/TrkrDefs.h>
0015 #include <trackbase_historic/TrackInfoContainer_v1.h>
0016 #include <trackbase_historic/TrackSeedContainer_v1.h>
0017 #include <trackbase_historic/TrackSeed_v1.h>
0018
0019 #include <map>
0020 #include <set>
0021 #include <string>
0022 #include <vector>
0023
0024 class PHG4Hit;
0025 class PHG4HitContainer;
0026 class PHG4Particle;
0027 class PHG4TruthInfoContainer;
0028 class SvtxTrack;
0029 class SvtxTrackMap;
0030
0031 class TrkrCluster;
0032 class TrkrClusterContainer;
0033 class TrkrClusterHitAssoc;
0034 class TrkrHitSetContainer;
0035 class TrkrHitTruthAssoc;
0036
0037 class DSTTrackInfoReader : public SubsysReco
0038 {
0039 public:
0040
0041 DSTTrackInfoReader(const std::string& = "DSTTrackInfoReader");
0042
0043
0044 int InitRun(PHCompositeNode*) override;
0045
0046
0047 int process_event(PHCompositeNode*) override;
0048
0049 enum Flags
0050 {
0051 WriteEvent = 1 << 0,
0052 WriteClusters = 1 << 1,
0053 WriteTracks = 1 << 2
0054 };
0055
0056
0057 void set_flags(int flags)
0058 {
0059 m_flags = flags;
0060 }
0061
0062 private:
0063
0064 int load_nodes(PHCompositeNode*);
0065
0066 void evaluate_track_info();
0067
0068
0069
0070
0071
0072 TrackInfoContainer_v1* m_track_info_container = nullptr;
0073
0074
0075
0076 int m_flags = WriteEvent | WriteClusters | WriteTracks;
0077
0078
0079
0080
0081
0082
0083 };
0084
0085 #endif