44 #ifndef CEXMC_RECONSTRUCTOR_HH
45 #define CEXMC_RECONSTRUCTOR_HH
const G4ThreeVector & GetCalorimeterEPRightWorldDirection(void) const
G4AffineTransform calorimeterLeftTransform
G4double GetTheAngle(void) const
const G4ThreeVector & GetTargetEPPosition(void) const
G4ThreeVector calorimeterEPLeftPosition
G4ThreeVector calorimeterEPLeftWorldPosition
const G4ThreeVector & GetCalorimeterEPLeftPosition(void) const
CexmcReconstructorMessenger * messenger
virtual void Reconstruct(const CexmcEnergyDepositStore *edStore)
G4AffineTransform calorimeterRightTransform
CLHEP::Hep3Vector G4ThreeVector
G4double calorimeterEDLeftAdjacent
G4ThreeVector targetEPWorldDirection
virtual ~CexmcReconstructor()
G4bool useInnerRefCrystal
void ReconstructAngle(void)
void CollectEDInAdjacentCrystals(const CexmcEnergyDepositCalorimeterCollection &edHits, G4int row, G4int column, G4double &ed)
CexmcCalorimeterEntryPointDepthDefinitionAlgorithm GetCalorimeterEntryPointDepthDefinitionAlgorithm(void) const
G4bool IsInnerRefCrystalUsed(void) const
G4bool targetEPInitialized
G4ThreeVector calorimeterEPLeftWorldDirection
G4ThreeVector targetEPWorldPosition
std::vector< CexmcEnergyDepositCrystalRowCollection > CexmcEnergyDepositCalorimeterCollection
void SetCalorimeterEntryPointDepth(G4double depth)
CexmcCrystalSelectionAlgorithm csAlgorithm
void ReconstructEntryPoints(const CexmcEnergyDepositStore *edStore)
CexmcSetup::CalorimeterGeometryData calorimeterGeometry
CexmcCalorimeterEntryPointDefinitionAlgorithm epDefinitionAlgorithm
G4bool HasBasicTrigger(void) const
G4bool collectEDInAdjacentCrystals
void TransformToAdjacentInnerCrystal(G4int &column, G4int &row) const
CexmcCrystalSelectionAlgorithm
void CalculateWeightedEPPosition(const CexmcEnergyDepositCalorimeterCollection &edHits, G4int row, G4int column, G4double &x, G4double &y, G4double &ed)
void SetCrystalSelectionAlgorithm(CexmcCrystalSelectionAlgorithm algo)
void SetCalorimeterEntryPointDefinitionAlgorithm(CexmcCalorimeterEntryPointDefinitionAlgorithm algo)
G4ThreeVector calorimeterEPLeftDirection
void ReconstructTargetPoint(void)
G4ThreeVector calorimeterEPRightWorldPosition
G4ThreeVector calorimeterEPRightPosition
G4double GetCalorimeterEntryPointDepth(void) const
const G4ThreeVector & GetTargetEPDirection(void) const
CexmcCalorimeterEntryPointDepthDefinitionAlgorithm epDepthDefinitionAlgorithm
G4ThreeVector calorimeterEPRightDirection
const G4ThreeVector & GetTargetEPWorldDirection(void) const
G4ThreeVector targetEPDirection
void UseInnerRefCrystal(G4bool on=true)
const G4ThreeVector & GetCalorimeterEPRightWorldPosition(void) const
const G4ThreeVector & GetCalorimeterEPLeftWorldPosition(void) const
CexmcCalorimeterEntryPointDefinitionAlgorithm GetCalorimeterEntryPointDefinitionAlgorithm(void) const
CexmcCrystalSelectionAlgorithm GetCrystalSelectionAlgorithm(void) const
G4ThreeVector targetEPPosition
void SetCalorimeterEntryPointDepthDefinitionAlgorithm(CexmcCalorimeterEntryPointDepthDefinitionAlgorithm algo)
G4ThreeVector calorimeterEPRightWorldDirection
const G4ThreeVector & GetCalorimeterEPRightDirection(void) const
virtual G4bool HasFullTrigger(void) const
G4AffineTransform targetTransform
const G4ThreeVector & GetCalorimeterEPRightPosition(void) const
const G4ThreeVector & GetTargetEPWorldPosition(void) const
CexmcCalorimeterEntryPointDepthDefinitionAlgorithm
const G4ThreeVector & GetCalorimeterEPLeftWorldDirection(void) const
CexmcCalorimeterEntryPointDefinitionAlgorithm
const G4ThreeVector & GetCalorimeterEPLeftDirection(void) const
G4double calorimeterEDRightAdjacent