LArSoft  v10_04_05
Liquid Argon Software toolkit - https://larsoft.org/
lar_content::CheatedThreeDClusteringTool Class Reference

#include "CheatedThreeDClusteringTool.h"

Inheritance diagram for lar_content::CheatedThreeDClusteringTool:
lar_content::ClusteringTool

Public Member Functions

 CheatedThreeDClusteringTool ()
 

Private Member Functions

bool Run (const pandora::CaloHitList &inputCaloHitList, std::vector< pandora::CaloHitList > &outputCaloHitListsVector)
 
pandora::StatusCode ReadSettings (const pandora::TiXmlHandle)
 

Detailed Description

Definition at line 20 of file CheatedThreeDClusteringTool.h.

Constructor & Destructor Documentation

lar_content::CheatedThreeDClusteringTool::CheatedThreeDClusteringTool ( )

Definition at line 18 of file CheatedThreeDClusteringTool.cc.

19 {
20 }

Member Function Documentation

StatusCode lar_content::CheatedThreeDClusteringTool::ReadSettings ( const pandora::TiXmlHandle  )
private

Definition at line 55 of file CheatedThreeDClusteringTool.cc.

56 {
57  return STATUS_CODE_SUCCESS;
58 }
bool lar_content::CheatedThreeDClusteringTool::Run ( const pandora::CaloHitList &  inputCaloHitList,
std::vector< pandora::CaloHitList > &  outputCaloHitListsVector 
)
privatevirtual

Implements lar_content::ClusteringTool.

Definition at line 24 of file CheatedThreeDClusteringTool.cc.

25 {
26  LArMCParticleHelper::MCContributionMap mcParticleCaloHitListMap;
27 
28  for (const CaloHit *const pCaloHit3D : inputCaloHitList)
29  {
30  const CaloHit *const pParentCaloHit2D{static_cast<const CaloHit *>(pCaloHit3D->GetParentAddress())};
31 
32  const MCParticle *const pMainMCParticle(MCParticleHelper::GetMainMCParticle(pParentCaloHit2D));
33 
34  auto it = mcParticleCaloHitListMap.find(pMainMCParticle);
35 
36  if (it != mcParticleCaloHitListMap.end())
37  {
38  it->second.push_back(pCaloHit3D);
39  }
40  else
41  {
42  CaloHitList newList;
43  newList.push_back(pCaloHit3D);
44  mcParticleCaloHitListMap.insert(std::make_pair(pMainMCParticle, newList));
45  }
46  }
47  for (auto &pair : mcParticleCaloHitListMap)
48  outputCaloHitListsVector.push_back(std::ref(pair.second));
49 
50  return true;
51 }
std::unordered_map< const pandora::MCParticle *, pandora::CaloHitList > MCContributionMap

The documentation for this class was generated from the following files: