Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2026-09-27 09:14:59

0001 /**
0002  *  @file   LCContent/include/LCHelpers/SortingHelper.h
0003  *
0004  *  @brief  Header file for the sorting helper class.
0005  *
0006  *  $Log: $
0007  */
0008 #ifndef LC_SORTING_HELPER_H
0009 #define LC_SORTING_HELPER_H 1
0010 
0011 #include "Pandora/PandoraInputTypes.h"
0012 #include "Pandora/PandoraInternal.h"
0013 
0014 namespace lc_content {
0015 
0016 /**
0017  *  @brief  SortingHelper class
0018  */
0019 class SortingHelper {
0020 public:
0021   /**
0022    *  @brief  Sort clusters by number of hits, associated track energy if no hits, then hadronic energy
0023    *
0024    *  @param  pLhs address of first cluster
0025    *  @param  pRhs address of second cluster
0026    */
0027   static bool SortClustersByNHits(const pandora::Cluster* const pLhs, const pandora::Cluster* const pRhs);
0028 
0029   /**
0030    *  @brief  Sort clusters by ascending inner layer, and by hadronic energy within a layer
0031    *
0032    *  @param  pLhs address of first cluster
0033    *  @param  pRhs address of second cluster
0034    */
0035   static bool SortClustersByInnerLayer(const pandora::Cluster* const pLhs, const pandora::Cluster* const pRhs);
0036 
0037   /**
0038    *  @brief  Sort pfos by descending energy
0039    *
0040    *  @param  pLhs address of first pfo
0041    *  @param  pRhs address of second pfo
0042    */
0043   static bool SortPfosByEnergy(const pandora::ParticleFlowObject* const pLhs,
0044                                const pandora::ParticleFlowObject* const pRhs);
0045 };
0046 
0047 } // namespace lc_content
0048 
0049 #endif // #ifndef LC_SORTING_HELPER_H