Back to home page

sPhenix code displayed by LXR

 
 

    


File indexing completed on 2025-08-06 08:13:20

0001 /// ---------------------------------------------------------------------------
0002 /*! \file   FlowInterfaces.cc
0003  *  \author Derek Anderson
0004  *  \date   03.06.2024
0005  *
0006  *  Particle flow-related interfaces.
0007  */
0008 /// ---------------------------------------------------------------------------
0009 
0010 #define SCORRELATORUTILITIES_FLOWINTERFACES_CC
0011 
0012 // namespace definition
0013 #include "FlowInterfaces.h"
0014 
0015 // make common namespaces implicit
0016 using namespace std;
0017 using namespace findNode;
0018 
0019 
0020 
0021 // flow interfaces ============================================================
0022 
0023 namespace SColdQcdCorrelatorAnalysis {
0024 
0025   // --------------------------------------------------------------------------
0026   //! Get particle flow container from node tree
0027   // --------------------------------------------------------------------------
0028   ParticleFlowElementContainer* Interfaces::GetFlowStore(PHCompositeNode* topNode) {
0029 
0030     ParticleFlowElementContainer* store = findNode::getClass<ParticleFlowElementContainer>(topNode, "ParticleFlowElements");
0031     if (!store) {
0032       cerr << PHWHERE
0033            << "PANIC: Couldn't grab particle flow container!"
0034            << endl;
0035       assert(store);
0036     }
0037     return store;
0038 
0039   }  // end 'GetFlowStore(PHCompositeNode*)'
0040 
0041 
0042 
0043   // --------------------------------------------------------------------------
0044   //! Get PFOs from container
0045   // --------------------------------------------------------------------------
0046   ParticleFlowElementContainer::ConstRange Interfaces::GetParticleFlowObjects(PHCompositeNode* topNode) {
0047 
0048     // get container
0049     ParticleFlowElementContainer* store = GetFlowStore(topNode);
0050 
0051     // get objects
0052     ParticleFlowElementContainer::ConstRange objects = store -> getParticleFlowElements();
0053     return objects;
0054 
0055   }  // end 'GetParticleFlowObjects(PHCompositeNode*)'
0056 
0057 }  // end SColdQcdCorrealtorAnalysis namespace
0058 
0059 // end ------------------------------------------------------------------------