Back to home page

sPhenix code displayed by LXR

 
 

    


File indexing completed on 2025-08-03 08:12:31

0001 #ifndef TRACKPROJECTIONTOOLS_H__2
0002 #define TRACKPROJECTIONTOOLS_H__
0003 
0004 /* Fun4All includes */
0005 #include <fun4all/SubsysReco.h>
0006 #include <calobase/RawTowerDefs.h>
0007 
0008 /* STL includes */
0009 #include <math.h>
0010 
0011 class PHCompositeNode;
0012 
0013 class CaloEvalStack;
0014 class CaloRawTowerEval;
0015 
0016 class RawCluster;
0017 class RawTowerContainer;
0018 class RawTowerGeomContainer;
0019 
0020 class SvtxTrack;
0021 class SvtxTrackMap;
0022 
0023 class TrackProjectionTools
0024 {
0025 
0026 public:
0027   TrackProjectionTools( PHCompositeNode* );
0028 
0029   virtual ~TrackProjectionTools() {}
0030 
0031   /** Find track with minimum delta R from given cluster */
0032   SvtxTrack* FindClosestTrack( RawCluster*, float& );
0033 
0034   /** Find closest cluster to track */
0035   RawCluster* getCluster( SvtxTrack*, std::string );
0036 
0037   /** get energy in 3x3 calorimeter towers around track projection to calorimeter surface.
0038    * Copied from FastTrackingEval.C */
0039   float getE33Barrel( std::string, float, float );
0040 
0041   /** get energy in 3x3 calorimeter towers around track projection to calorimeter surface.
0042    * Copied from FastTrackingEval.C */
0043   float getE33Forward( std::string, float, float );
0044 
0045 protected:
0046 
0047   /** helper pointer to topNode */
0048   PHCompositeNode *_topNode;
0049 
0050 };
0051 
0052 #endif