4 #include <det/MPositionable.h>
5 #include <mdet/MDetectorComponent.h>
7 #include <det/VManager.h>
8 #include <det/MPositionable.h>
9 #include <mdet/MComponentGroup.h>
10 #include <mdet/MDetectorComponent.h>
11 #include <mdet/Scintillator.h>
12 #include <mdet/Fiber.h>
13 #include <mdet/Pixel.h>
14 #include <utl/Point.h>
15 #include <utl/CoordinateSystemPtr.h>
16 #include <utl/Validated.h>
17 #include <utl/AugerException.h>
18 #include <utl/ConsecutiveEnumFactory.h>
248 friend struct det::ComponentUpdater;
302 #endif // _mdet_Fiber_h
Simple factory to create an enumerator for a given enumeration.
double GetAttenuationLengthASiPM() const
AttenuationReference GetAttenuationReference() const
Return the type of refrence to use.
double GetOnScintillatorLength() const
The length of the fiber along its scintillator.
int fId
Id of the component.
double GetAttenuationAmplitudeA() const
utl::Validated< double > fRefractionIndex
utl::Validated< double > fAttenuationAmplitudeBSiPM
unsigned int ComputeSPENumber(double x, double l, double e) const
Computes a number of SPE given the impinging distance, the length of the track and the energy of the ...
Mixin class to be inherited from objects that have a position.
Defines within it the common (templated) type for muon detector hierarchy components.
utl::Validated< double > fAttenuationAmplitudeASiPM
double GetRadius() const
The radius of the fiber.
utl::Validated< double > fAttenuationReferenceEnergy
friend void boost::checked_delete(T *) BOOST_NOEXCEPT
Friendship for destruction.
static const char *const AttenuationReferenceTags[]
Tags for textual representation.
double GetAttenuationLengthA() const
std::string AttenuationReferenceForConfig
Alias for a type considered within the config hierarchy, to be converted to the actual enum...
double GetAttenuationLengthBSiPM() const
utl::Validated< double > fAttenuationLengthB
boost::shared_ptr< const CoordinateTransformer > CoordinateSystemPtr
Shared pointer for coordinate systems.
double GetDecayTime() const
The characteristic decay time of the fiber.
double GetNumericalAperture() const
The numerical aperture of the fiber.
utl::Validated< double > fAttenuationLengthASiPM
AttenuationReference
Kinds of possible attenuation references.
utl::Validated< double > fOnScintillatorLength
double GetAttenuationReferenceThickness() const
utl::Validated< double > fAttenuationAmplitudeB
utl::Validated< double > fAttenuationLengthA
utl::CoordinateSystemPtr GetReferenceCoordinateSystem() const
The reference is the local coordinate system of mdet::Scintillator.
double GetAttenuationAmplitudeASiPM() const
double GetDecayDelayMean() const
The mean value of the delay time.
double GetDecayDelayStdDev() const
The standard deviation fo the delay time.
utl::Validated< AttenuationReferenceForConfig > fAttenuationReference
V & VisitShape(V &v) const
Callback method to query shape specific properties.
utl::Validated< double > fRadius
utl::Validated< double > fAttenuationLengthBSiPM
const Module & GetModule() const
Retrieve the parent mdet::Module.
std::string const
Returns the message that identifies this component.
static const char *const kComponentId
utl::ConsecutiveEnumFactory< AttenuationReference, eEnergy, AttenuationReferenceTags > AttenuationReferenceCreator
Convenience typedef for creation of AttenuatioReference enums.
double GetAttenuationAmplitudeBSiPM() const
std::map< std::string, std::string > IndexMap
double GetAttenuationAmplitudeB() const
utl::Validated< double > fDecayTime
double GetAttenuationLengthB() const
utl::Validated< double > fOnManifoldLength
double ComputeDecayDelay() const
Computes a delay due to decay process.
utl::Validated< double > fNumericalAperture
Optical mdet::Fiber used to conect mdet::Scintillator to mdet::Pixel.
Type
The type of file that we are acutally opening.
static const char *const kComponentName
utl::Validated< double > fAttenuationAmplitudeA
double GetAttenuationReferenceEnergy() const
Fiber(int fId, const det::VManager::IndexMap &parentMap, const Module &parent)
Constructs the Fiber (obviously!).
utl::Validated< double > fAttenuationReferenceThickness
double GetRefractionIndex() const
The refraction (or refractive) index of the fiber.
double GetOnManifoldLength() const
The length of the fiber along the path that joins the scintillator to its pixel on the PMT...
The child the information from the parent upon construction.