File indexing completed on 2025-12-16 09:21:43
0001 #ifndef G4EVAL_DSTTRACKINFOWRITER_H
0002 #define G4EVAL_DSTTRACKINFOWRITER_H
0003
0004
0005
0006
0007
0008
0009
0010 #include <fun4all/SubsysReco.h>
0011
0012 class PHCompositeNode;
0013 class SvtxTrackMap;
0014 class TrackInfoContainer;
0015
0016 class DSTTrackInfoWriter : public SubsysReco
0017 {
0018 public:
0019
0020 DSTTrackInfoWriter(const std::string& = "DSTTrackInfoWriter");
0021
0022
0023 int InitRun(PHCompositeNode *topNode) override;
0024
0025
0026 int process_event(PHCompositeNode *topNode) override;
0027
0028 enum Flags
0029 {
0030 WriteEvent = 1 << 0,
0031 WriteClusters = 1 << 1,
0032 WriteTracks = 1 << 2
0033 };
0034
0035
0036 void set_flags(int flags)
0037 {
0038 m_flags = flags;
0039 }
0040
0041 private:
0042
0043 int load_nodes(PHCompositeNode *topNode);
0044
0045
0046 void evaluate_track_info();
0047
0048 TrackInfoContainer *m_track_info_container {nullptr};
0049
0050
0051 int m_flags {WriteEvent | WriteClusters | WriteTracks};
0052
0053
0054 SvtxTrackMap *m_track_map {nullptr};
0055 };
0056
0057 #endif