APRILContent
Algorithm of Particle Reconstruction for ILC - implementation with PandoraSDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations
Public Member Functions | Private Types | Private Member Functions | Private Attributes | List of all members
april_content::APRILPseudoLayerPlugin Class Reference

APRILPseudoLayerPlugin class. More...

#include <APRILPseudoLayerPlugin.h>

Inheritance diagram for april_content::APRILPseudoLayerPlugin:

Public Member Functions

 APRILPseudoLayerPlugin ()
 Default constructor.
 
unsigned int GetPseudoLayer (const pandora::CartesianVector &positionVector) const
 
unsigned int GetPseudoLayerAtIp () const
 

Private Types

typedef std::vector< float > LayerPositionList
 
typedef std::vector< std::pair
< float, float > > 
AngleVector
 

Private Member Functions

pandora::StatusCode Initialize ()
 
pandora::StatusCode GetPseudoLayer (const float rCoordinate, const float zCoordinate, const float rCorrection, const float zCorrection, const float barrelInnerR, const float endCapInnerZ, unsigned int &pseudoLayer) const
 Get the appropriate pseudolayer for a specified parameters. More...
 
pandora::StatusCode FindMatchingLayer (const float position, const LayerPositionList &layerPositionList, unsigned int &layer) const
 Find the layer number corresponding to a specified position, via reference to a specified layer position list. More...
 
void StoreLayerPositions ()
 Store all revelevant barrel and endcap layer positions upon initialization.
 
void StoreLayerPositions (const pandora::SubDetector &subDetector, LayerPositionList &LayerPositionList)
 Store subdetector layer positions upon initialization. More...
 
void StoreDetectorOuterEdge ()
 Store positions of barrel and endcap outer edges upon initialization.
 
void StorePolygonAngles ()
 Store sine and cosine of angles used to project hit positions onto polygonal calorimeter surfaces upon initialization.
 
void StoreOverlapCorrectionDetails ()
 Store all details revelevant to barrel/endcap overlap corrections upon initialization.
 
float GetMaximumRadius (const AngleVector &angleVector, const float x, const float y) const
 Get the maximum polygon radius, with reference to cached sine/cosine values for relevant polygon angles. More...
 
void FillAngleVector (const unsigned int symmetryOrder, const float phi0, AngleVector &angleVector) const
 Fill a vector with sine/cosine values for relevant polygon angles. More...
 
pandora::StatusCode ReadSettings (const pandora::TiXmlHandle xmlHandle)
 

Private Attributes

LayerPositionList m_barrelLayerPositions
 List of barrel layer positions.
 
LayerPositionList m_endCapLayerPositions
 List of endcap layer positions.
 
AngleVector m_eCalBarrelAngleVector
 The ecal barrel angle vector.
 
AngleVector m_muonBarrelAngleVector
 The muon barrel angle vector.
 
float m_barrelInnerR
 Barrel inner radius.
 
float m_endCapInnerZ
 Endcap inner z position.
 
float m_barrelInnerRMuon
 Muon barrel inner radius.
 
float m_endCapInnerZMuon
 Muon endcap inner z position.
 
float m_rCorrection
 Barrel/endcap overlap r correction.
 
float m_zCorrection
 Barrel/endcap overlap z correction.
 
float m_rCorrectionMuon
 Muon barrel/endcap overlap r correction.
 
float m_zCorrectionMuon
 Muon barrel/endcap overlap z correction.
 
float m_barrelEdgeR
 Extremal barrel r coordinate.
 
float m_endCapEdgeZ
 Extremal endcap z coordinate.
 
bool m_useCoordinateCorrections
 Whether to use coordinate correction in intermediate regions.
 

Detailed Description

APRILPseudoLayerPlugin class.

Member Function Documentation

void april_content::APRILPseudoLayerPlugin::FillAngleVector ( const unsigned int  symmetryOrder,
const float  phi0,
AngleVector &  angleVector 
) const
private

Fill a vector with sine/cosine values for relevant polygon angles.

Parameters
symmetryOrderthe polygon symmetry order
phi0the polygon cylindrical polar phi coordinate
angleVectorthe vector to fill with sine/cosine values for relevant polygon angles
pandora::StatusCode april_content::APRILPseudoLayerPlugin::FindMatchingLayer ( const float  position,
const LayerPositionList &  layerPositionList,
unsigned int &  layer 
) const
private

Find the layer number corresponding to a specified position, via reference to a specified layer position list.

Parameters
positionthe specified position
layerPositionListthe specified layer position list
layerto receive the layer number
float april_content::APRILPseudoLayerPlugin::GetMaximumRadius ( const AngleVector &  angleVector,
const float  x,
const float  y 
) const
private

Get the maximum polygon radius, with reference to cached sine/cosine values for relevant polygon angles.

Parameters
angleVectorvector containing cached sine/cosine values
xthe cartesian x coordinate
ythe cartesian y coordinate
Returns
the maximum radius
pandora::StatusCode april_content::APRILPseudoLayerPlugin::GetPseudoLayer ( const float  rCoordinate,
const float  zCoordinate,
const float  rCorrection,
const float  zCorrection,
const float  barrelInnerR,
const float  endCapInnerZ,
unsigned int &  pseudoLayer 
) const
private

Get the appropriate pseudolayer for a specified parameters.

Parameters
rCoordinatethe radial coordinate
zCoordinatethe z coordinate
rCorrectionthe barrel/endcap overlap r correction
zCorrectionthe barrel/endcap overlap z correction
barrelInnerRthe barrel inner r coordinate
endCapInnerZthe endcap inner z coordinate
pseudoLayerto receive the appropriate pseudolayer
void april_content::APRILPseudoLayerPlugin::StoreLayerPositions ( const pandora::SubDetector &  subDetector,
LayerPositionList &  LayerPositionList 
)
private

Store subdetector layer positions upon initialization.

Parameters
subDetectorthe sub detector
layerParametersListthe layer parameters list

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