1 #ifndef _sdet_Scintillator_h_
2 #define _sdet_Scintillator_h_
7 #include <det/VManager.h>
8 #include <det/Detector.h>
11 #include <utl/AugerUnits.h>
12 #include <utl/AugerException.h>
13 #include <utl/CoordinateSystemPtr.h>
14 #include <utl/Validated.h>
15 #include <utl/Point.h>
16 #include <utl/Vector.h>
17 #include <utl/TabulatedFunction.h>
18 #include <utl/ShadowPtr.h>
19 #include <utl/config.h>
129 Scintillator(
const int stationId,
const unsigned int isUUB);
144 const std::string& property,
145 const std::string& component,
146 const std::string& errorMsg,
147 const bool throwOnFailure =
true)
151 det::Detector::GetInstance().GetSManagerRegister();
double GetBarLeakageExpCoefficient() const
utl::Validated< utl::Point > fPosition
utl::Validated< double > fBarLength
det::VManager::Status GetScintillatorData(T &requestedData, const std::string &property, const std::string &component, const std::string &errorMsg, const bool throwOnFailure=true) const
Detector description interface for Station-related data.
utl::Validated< double > fFiberUTurnDiameter
utl::Validated< double > fBarLeakageMaxRatio
utl::Validated< double > fFiberLength
bool IsHit(const utl::Point &from, const utl::Vector &direction, const double halo=0) const
utl::Validated< double > fCasingThickness
utl::Validated< double > fBarWidth
double GetBarExpDecayConstant() const
double GetReferenceEnergy() const
double GetHousingWidth() const
double GetRoofOffset() const
double GetAttenuationLength() const
utl::Validated< double > fRoofOffset
double GetFiberLength() const
Interface for detector managers.
double GetSandwichPanelThickness() const
utl::Validated< double > fSigmaBarToBar
utl::Validated< double > fRoofThickness
std::vector< double > GetDistancesToPMT(const utl::Point &p) const
utl::Validated< double > fEffectiveRefractiveIndex
unsigned int GetNBars() const
virtual Status GetData(double &returnData, const std::string &componentProperty, const std::string &componentName, const IndexMap &componentIndex) const =0
double GetFiberUTurnDiameter() const
double GetHousingThickness() const
std::pair< double, double > GetDistancesToBarEnds(const utl::Point &p) const
utl::Validated< double > fHousingThickness
double GetBarLength() const
utl::Validated< double > fBarThickness
utl::Validated< double > fGap
double GetMaxRadius() const
utl::Validated< double > fHousingWidth
double GetBarLeakageMaxRatio() const
void NotFoundAndThrow(const std::string &msg) const
double GetFiberExpDecayConstant() const
det::VManager::IndexMap indexMap
utl::Validated< double > fReferenceEnergy
utl::Validated< double > fHousingLength
double GetCasingThickness() const
double GetReferencePENumber() const
utl::Validated< double > fFiberExpDecayConstant
utl::Validated< double > fBarLeakageExpCoefficient
utl::Validated< double > fReferencePENumber
double GetBarWidth() const
std::map< std::string, std::string > IndexMap
utl::Point GetPosition() const
utl::Validated< double > fSandwichPanelThickness
double GetBarThickness() const
double GetHousingLength() const
double GetRoofThickness() const
Scintillator(const int stationId, const unsigned int isUUB)
double GetSigmaBarToBar() const
double GetEffectiveRefractiveIndex() const
double GetMaxHeight() const
utl::Validated< double > fAttenuationLength
utl::Validated< double > fBarExpDecayConstant
bool IsInsideBar(const utl::Point &p, const double halo=0) const
Status
Specifies success or (eventually) various possible failure modes.
std::pair< double, double > fDistancesToPMT
utl::Validated< unsigned int > fNBars