9 #include "Geometry/LArTPC.h"
11 #include "Helpers/XmlHelper.h"
13 #include "Managers/GeometryManager.h"
15 #include "Pandora/Pandora.h"
16 #include "Pandora/PandoraInputTypes.h"
37 if (zLayer < std::numeric_limits<float>::epsilon())
38 throw StatusCodeException(STATUS_CODE_FAILURE);
40 return static_cast<unsigned int>(zLayer);
47 const LArTPCMap &larTPCMap(this->GetPandora().GetGeometry()->GetLArTPCMap());
49 if (larTPCMap.empty())
51 std::cout <<
"LArPseudoLayerPlugin::Initialize - LArTPC description not registered with Pandora as required " << std::endl;
52 return STATUS_CODE_NOT_INITIALIZED;
55 const LArTPC *
const pFirstLArTPC(larTPCMap.begin()->second);
56 m_zPitch = pFirstLArTPC->GetWirePitchW();
58 for (
const LArTPCMap::value_type &mapEntry : larTPCMap)
60 const LArTPC *
const pLArTPC(mapEntry.second);
62 if (std::fabs(m_zPitch - pLArTPC->GetWirePitchW()) > std::numeric_limits<float>::epsilon())
64 std::cout <<
"LArPseudoLayerPlugin::Initialize - Plugin does not support provided LArTPC configurations " << std::endl;
65 return STATUS_CODE_INVALID_PARAMETER;
69 return STATUS_CODE_SUCCESS;
76 return STATUS_CODE_SUCCESS;
unsigned int m_zerothLayer
The zeroth layer.
double std(const std::vector< short > &wf, const double ped_mean, size_t start, size_t nsample)
pandora::StatusCode ReadSettings(const pandora::TiXmlHandle xmlHandle)
float m_zPitch
The z pitch.
pandora::StatusCode Initialize()
unsigned int GetPseudoLayer(const pandora::CartesianVector &positionVector) const
LArPseudoLayerPlugin()
Constructor.
float m_zOffset
The z offset.
required by fuzzyCluster table::sbnd_g4_services gaushitTruthMatch pandora
Header file for the lar pseudo layer plugin class.
BEGIN_PROLOG could also be cout