Back to home page

sPhenix code displayed by LXR

 
 

    


File indexing completed on 2025-08-06 08:18:23

0001 #ifndef DSTCLUSTERPRUNING_H
0002 #define DSTCLUSTERPRUNING_H
0003 
0004 /*!
0005  * \file DSTClusterPruning.h
0006  * \author Alex Patton <aopatton@mit.edu>
0007  */
0008 
0009 // #include "DSTContainerv3.h"
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 // class DSTContainer;
0031 class TrkrCluster;
0032 class TrkrClusterv5;
0033 class TrkrClusterContainer;
0034 class TrkrClusterHitAssoc;
0035 class TrkrHitSetContainer;
0036 class TrkrHitTruthAssoc;
0037 class TrackSeedContainer;
0038 
0039 class DSTClusterPruning : public SubsysReco
0040 {
0041  public:
0042   //! constructor
0043   DSTClusterPruning(const std::string& = "DSTClusterPruning");
0044 
0045   //! run initialization
0046   //int Init(PHCompositeNode*) override;
0047   int InitRun(PHCompositeNode*) override;
0048 
0049   //! event processing
0050   int process_event(PHCompositeNode*) override;
0051 
0052   //! end of processing
0053   //int End(PHCompositeNode*) override;
0054 
0055  private:
0056   //! load nodes
0057   int load_nodes(PHCompositeNode*);
0058 
0059   void prune_clusters();
0060   void fill_clusters();
0061   void print_clusters();
0062   SvtxTrackMap* m_track_map = nullptr;
0063 
0064   TrkrClusterv5* m_cluster = nullptr;
0065   TrkrClusterContainer* m_cluster_map = nullptr;
0066   TrkrClusterContainer* m_reduced_cluster_map = nullptr;
0067   TrackSeedContainer* m_track_seed_container = nullptr;
0068   TrackSeedContainer* m_tpc_track_seed_container = nullptr;
0069   TrackSeedContainer* m_silicon_track_seed_container = nullptr;
0070 
0071   //@}
0072 
0073   // debugging helpers
0074   // bool dryrun = false;
0075   // bool generateKey = false;
0076 };
0077 
0078 #endif  // DSTCLUSTERPRUNING_H