1 #ifndef _fdet_Telescope_h_
2 #define _fdet_Telescope_h_
4 #include <det/ValidityStamp.h>
5 #include <utl/CoordinateSystem.h>
6 #include <utl/TabulatedFunction.h>
7 #include <utl/IteratorRange.h>
110 const Pixel&
GetPixel(
const unsigned int row,
const unsigned int col)
const;
208 Telescope(
const unsigned int eyeId,
const unsigned int telescopeId);
221 const std::string& property,
222 const std::string& component,
223 const std::string& errorMsg)
const;
227 const std::string& property,
228 const std::string& component,
229 const std::string& errorMsg)
const;
289 mutable std::map<int, utl::TabulatedFunction>
fCalibMap;
PointingAngleSet * fTelPointingPhiMap
Hold the azimuth of the various possible telescope pointing directions.
double GetModelRelativeEfficiency(const double wl) const
utl::Vector GetCameraPixelDirection(const unsigned int pixelId) const
InternalPixelDirCollection fOutBorderPixelsDir
Hold the directions of "virtual" pixels that are one col/row outside the camera.
void UpdateFdUpTime() const
utl::CoordinateSystemPtr fCoordinateSystem
const Diaphragm & GetDiaphragm() const
Get the diaphragm that belongs to the telescope.
Description of the electronic channel for the 480 channels of the crate.
det::ValidityStamp fUpTimeValidityStamp
std::string fTelescopeIdString
utl::TimeStamp * fCommissionTime
bool IsInAquisition() const
std::string * fConfigSignatureStr
det::ValidityStamp fOpticalEfficiencyValidityStamp
det::ValidityStamp fCalibValidityStamp
std::string * fConfigSignature
unsigned int GetFirstPixelId() const
double GetUpTimeFraction() const
static const unsigned int kLastChannel
const std::string & GetParentPhysicalEyeIdString() const
void CachePixelCalibrations() const
Cache calibration constants for pixels in one go (minimize DB access)
double GetModelMaxWavelength() const
Class to hold collection (x,y) points and provide interpolation between them.
const Corrector & GetCorrector() const
Get the Corrector (corrector ring) object that belongs to the telescope.
unsigned int GetParentPhysicalEyeId() const
std::map< unsigned int, Pixel * > InternalPixelCollection
double GetDiaphragmRadius() const
const std::string & GetConfigSignature(const std::string &module) const
bool CachePixelCloudData() const
Cache cloud coverage for pixels in one go (minimize DB access)
utl::Vector GetAxis() const
const Channel & GetChannel(const unsigned int channelId) const
Get Channel by id, throw utl::NonExistentComponentException if n.a.
unsigned int GetEyeId() const
double GetModelWavelengthDependence(const double wl) const
Detector description interface for Eye-related data.
const std::string & GetConfigSignatureStr(const std::string &module) const
Diaphragm * fDiaphragm
Hold the diaphragm properties like radius and area.
Camera * fCamera
Hold the camera properties like the radius of curvature, Mercedes geometry and efficiency as function...
Corrector * fCorrector
Hold the corrector ring properties like the transmitance as function of the wavelength.
const Camera & GetCamera() const
Get the Camera object that belongs to the telescope.
unsigned int GetFirstColumn() const
std::string fConfigSignatureModule
double GetModelMeanEfficiency(const std::string &configSignature, const double wl) const
A TimeStamp holds GPS second and nanosecond for some event.
bool HasCorrectorRing() const
flag for corrector ring presence
OutOfBorderPixelsIterator OutOfBorderPixelsEnd() const
End of pixels out of the border.
const Pixel & GetPixel(const unsigned int pixelId) const
Get Pixel by id, throw utl::NonExistentComponentException if n.a.
Mirror * fMirror
Hold the mirror properties like the reflectivity as function of the wavelength.
unsigned int GetLastChannelId() const
boost::shared_ptr< const CoordinateTransformer > CoordinateSystemPtr
Shared pointer for coordinate systems.
void CachePixelOpticalEfficiencyCorrections() const
Cache optical efficiency corrections for pixels in one go (minimize DB access)
unsigned int GetLastPixelId() const
utl::CoordinateSystemPtr GetTelescopeCoordinateSystem() const
std::map< unsigned int, const Channel * > InternalChannelCollection
PointingAngleSet * fTelPointingElevationMap
Hold the elevation of the various possible telescope pointing directions.
Fluorescence Detector Pixel event.
Telescope(const unsigned int eyeId, const unsigned int telescopeId)
InternalPixelCollection fPixel
std::string fIdOfParentPhysicalEyeString
PointingAngleSet GetTelescopePointingElevation() const
std::map< int, utl::TabulatedFunction > fOpticalEfficiencyMap
const utl::TimeStamp & GetDecommissionTime() const
Telescope decommission time.
std::vector< utl::Vector > InternalPixelDirCollection
utl::TimeStamp * fDecommissionTime
int fIdOfParentPhysicalEye
std::vector< utl::Vector >::const_iterator OutOfBorderPixelsIterator
unsigned int GetLastRow() const
Description of a corrector ring.
void GenerateOutOfBorderPixels() const
Generate pixels for one row and one column outside the last actual pixels of the camera.
std::string GetTelescopePointingId() const
InternalChannelCollection fChannel
std::map< std::string, double > PointingAngleSet
const utl::TabulatedFunction & GetMeasuredRelativeEfficiency() const
unsigned int GetFirstChannelId() const
double GetModelMinWavelength() const
int fIdOfParentPhysicalTelescope
Detector description interface for Telescope-related data.
const Filter & GetFilter() const
Get the filter that belongs to the telescope.
double GetDiaphragmArea() const
std::map< int, utl::TabulatedFunction > fCalibMap
bool IsVirtual() const
Returns whether this telescope belongs to a virtual eye.
unsigned int GetParentPhysicalId() const
utl::Point GetPosition() const
Filter * fFilter
Hold the filter properties like the trasmitance as function of the wavelength.
const Mirror & GetMirror() const
Get the Mirror object that belongs to the telescope.
OutOfBorderPixelsIterator OutOfBorderPixelsBegin() const
Begin of pixels out of the border.
const std::string & GetParentPhysicalIdString() const
Description of the diaphragm.
const T & GetTelescopeData(T *&requestedData, const std::string &property, const std::string &component, const std::string &errorMsg) const
unsigned int GetLastColumn() const
unsigned int fTelescopeId
Object to keep track of whether data are valid, or have expired.
std::string * fTelPointingId
The id of the default telescope pointing.
void CacheTelescopePointing() const
unsigned int GetFirstRow() const
unsigned int GetId() const
Telescope & operator=(const Telescope &tel)
PointingAngleSet GetTelescopePointingPhi() const
OFFLINE_DECLARE_CONST_ITERATOR_RANGE(OutOfBorderPixelsIterator, OutOfBorderPixels)
const utl::TimeStamp & GetCommissionTime() const
Telescope commission time.
std::string fIdOfParentPhysicalTelescopeString
utl::TabulatedFunction * fMeasuredRelativeEfficiency
static const unsigned int kFirstChannel