List of all members | Public Types | Public Member Functions | Private Types | Private Member Functions | Private Attributes | Friends
fdet::Eye Class Reference

Detector description interface for Eye-related data. More...

#include <Eye.h>

Public Types

typedef boost::filter_iterator
< TelIsCommissioned,
InternalConstTelescopeIterator
TelescopeIterator
 An iterator over telescopes. More...
 

Public Member Functions

double GetBackwallAngle () const
 
double GetCDASVetoFraction () const
 
int GetDAQStatus () const
 0 == not in DAQ More...
 
utl::CoordinateSystemPtr GetEyeCoordinateSystem () const
 Returns the Eye Coordinate system. More...
 
double GetFDASVetoFraction () const
 
unsigned int GetFirstTelescopeId () const
 First telescope id in the eye. More...
 
unsigned int GetId () const
 Eye numerical Id. More...
 
unsigned int GetLastTelescopeId () const
 Last telescope id in the eye. More...
 
utl::CoordinateSystemPtr GetLocalCoordinateSystem () const
 The Auger coordinate system (x to east, z local verical) for this eye. More...
 
double GetModelMaxWavelength () const
 
double GetModelMinWavelength () const
 
const std::string & GetName () const
 Eye name. More...
 
const std::string & GetNameAbbr () const
 
unsigned int GetParentPhysicalId () const
 
const std::string & GetParentPhysicalIdString () const
 
std::set< unsigned int > GetParticipatingEyeIds () const
 Returns a list of eye id's that participate in this (virtual) eye. More...
 
utl::Point GetPosition () const
 Eye position. More...
 
const utl::TimeIntervalGetSDTimeOffset () const
 Time Offset of this eye with respect to SD. More...
 
const TelescopeGetTelescope (const unsigned int telescopeId) const
 Find Telescope by numerical Id. More...
 
const utl::TabulatedFunctionGetTimeCorrectionFactors () const
 
double GetUpTimeFraction () const
 
bool IsInAquisition () const
 
bool IsVirtual () const
 Returns whether this eye is a virtual eye. More...
 
TelescopeIterator TelescopesBegin () const
 Beginning of the collection of telescopes. More...
 
TelescopeIterator TelescopesEnd () const
 End of the collection of telescopes. More...
 

Private Types

typedef
FullTelescopeList::const_iterator 
FullTelescopeConstIterator
 
typedef std::list< int > FullTelescopeIdList
 
typedef FullTelescopeList::iterator FullTelescopeIterator
 
typedef std::list< Telescope * > FullTelescopeList
 
typedef
boost::indirect_iterator
< FullTelescopeConstIterator,
const Telescope & > 
InternalConstTelescopeIterator
 
typedef
boost::indirect_iterator
< FullTelescopeIterator,
Telescope & > 
InternalTelescopeIterator
 

Private Member Functions

 Eye (const unsigned int eyeId)
 
 Eye (const Eye &)
 
InternalTelescopeIterator FullTelescopesBegin ()
 
InternalConstTelescopeIterator FullTelescopesBegin () const
 
InternalTelescopeIterator FullTelescopesEnd ()
 
InternalConstTelescopeIterator FullTelescopesEnd () const
 
template<typename T >
const T & GetEyeData (T *&requestedData, const std::string &property, const std::string &component, const std::string &errorMsg) const
 
template<typename T >
void GetEyeData (T &requestedData, const std::string &property, const std::string &component, const std::string &errorMsg) const
 
void GetFullTelescopeList () const
 
Eyeoperator= (const Eye &)
 
void Update ()
 
void UpdateFdUpTime () const
 
 ~Eye ()
 

Private Attributes

double * fBackwallAngle
 
double fCDASVetoFraction
 
utl::CoordinateSystemPtr fCoordinateSystem
 
unsigned int fEyeId
 
std::string fEyeIdString
 
double fFDASVetoFraction
 
FullTelescopeIdListfFullTelescopeIdList
 
FullTelescopeList fFullTelescopeList
 
int fIdOfParentPhysicalEye
 
std::string fIdOfParentPhysicalEyeString
 
std::string * fName
 
std::string * fNameAbbr
 
utl::PointfPosition
 
utl::TimeIntervalfSDTimeOffset
 
int fStatus
 
utl::TabulatedFunctionfTimeCorrectionFactors
 
double fUpTimeFraction
 
det::ValidityStamp fUpTimeValidityStamp
 

Friends

class FDetector
 

Detailed Description

Detector description interface for Eye-related data.

Author
S. Argiro
T. Paul
Date
23 Jun 2003

Definition at line 45 of file FDetector/Eye.h.

Member Typedef Documentation

typedef FullTelescopeList::const_iterator fdet::Eye::FullTelescopeConstIterator
private

Definition at line 51 of file FDetector/Eye.h.

typedef std::list<int> fdet::Eye::FullTelescopeIdList
private

Definition at line 48 of file FDetector/Eye.h.

typedef FullTelescopeList::iterator fdet::Eye::FullTelescopeIterator
private

Definition at line 50 of file FDetector/Eye.h.

typedef std::list<Telescope*> fdet::Eye::FullTelescopeList
private

Definition at line 49 of file FDetector/Eye.h.

typedef boost::indirect_iterator<FullTelescopeConstIterator, const Telescope&> fdet::Eye::InternalConstTelescopeIterator
private

Definition at line 56 of file FDetector/Eye.h.

typedef boost::indirect_iterator<FullTelescopeIterator, Telescope&> fdet::Eye::InternalTelescopeIterator
private

Definition at line 54 of file FDetector/Eye.h.

An iterator over telescopes.

Definition at line 76 of file FDetector/Eye.h.

Constructor & Destructor Documentation

Eye::Eye ( const unsigned int  eyeId)
private

Definition at line 41 of file FDetector/Eye.cc.

References fEyeIdString.

Eye::~Eye ( )
private
fdet::Eye::Eye ( const Eye )
private

Member Function Documentation

InternalTelescopeIterator fdet::Eye::FullTelescopesBegin ( )
inlineprivate
InternalConstTelescopeIterator fdet::Eye::FullTelescopesBegin ( ) const
inlineprivate

Definition at line 60 of file FDetector/Eye.h.

References fFullTelescopeList.

InternalTelescopeIterator fdet::Eye::FullTelescopesEnd ( )
inlineprivate
InternalConstTelescopeIterator fdet::Eye::FullTelescopesEnd ( ) const
inlineprivate

Definition at line 64 of file FDetector/Eye.h.

References fFullTelescopeList.

double Eye::GetBackwallAngle ( ) const

Returns the angle of the eye's back wall to the east. For most practical purposes you should use the GetEyeCoordinateSystem method instead!

Definition at line 265 of file FDetector/Eye.cc.

References fBackwallAngle, and GetEyeData().

Referenced by GetEyeCoordinateSystem().

double Eye::GetCDASVetoFraction ( ) const

Definition at line 114 of file FDetector/Eye.cc.

References fCDASVetoFraction, and UpdateFdUpTime().

int Eye::GetDAQStatus ( ) const

0 == not in DAQ

Definition at line 130 of file FDetector/Eye.cc.

References fStatus, and UpdateFdUpTime().

Referenced by FdLightCollectionEfficiencyKG::SimMockEvent::PrepareEvent().

utl::CoordinateSystemPtr Eye::GetEyeCoordinateSystem ( ) const

Returns the Eye Coordinate system.

Eye Coordinate system : -x axis parallel to backwall and pointing right -y axis parallel to division between bays 3 and 4, pointing out -z axis parallel to the vertical -origin in the center of the eye (including the elevation)

Definition at line 273 of file FDetector/Eye.cc.

References fCoordinateSystem, GetBackwallAngle(), and GetPosition().

Referenced by FdBackgroundSimulatorOG::FdBackgroundSimulator::AddBackgroundFromVariance(), FdProfileConstrainedGeometryFit::PCGFitter::AdjustGeometry(), fdet::Telescope::CacheTelescopePointing(), otoa::FOVCalculator::CalculateFOVBoundaries(), FdProfileConstrainedGeometryFit::ApertureLight::CalculateShowerGeometryData(), FdProfileConstrainedGeometryFitPG::ApertureLight::CalculateShowerGeometryData(), FdApertureLightFinderKG::FdApertureLightFinder::CalculateShowerGeometryData(), otoa::fd::ConvertXToChi(), FdSDPFinderOG::FdSDPFinder::EstimateChi_i(), LightAtDiaphragmSimulatorKG::LightAtDiaphragmSimulator::EvaluateDirectCherenkovHits(), otoa::Detector2ADST::FillAerosols(), otoa::FD2ADST::FillCloudCameraDataBrief(), otoa::FD2ADST::FillEyeSim(), otoa::FD2ADST::FillFdCoreAxis(), otoa::FD2ADST::FillFdRecStations(), otoa::FD2ADST::FillGaisserHillas(), otoa::FD2ADST::FillGeometricalUncertainties(), otoa::FD2ADST::FillHybridStations(), FdAxisFinderOG::FdAxisFinder::FillPoints(), HdAxisFinderUU::HdAxisFinder::FillPoints(), otoa::FD2ADST::FillSDP(), otoa::FD2ADST::FillTelRecData(), otoa::FD2ADST::FillTelSimData(), FdPulseFinderOG::FdPulseFinder::FindAdditionalPulse(), StereoGeometryFinderOG::StereoGeometryFinder::FindAxisStereo(), StereoGeometryFinderOG::StereoGeometryFinder::FindAxisStereoHybrid(), FdApertureLightFinderOG::FdApertureLightFinder::FindLightFlux(), FdSDPFinderOG::FdSDPFinder::FindSDP(), FdSDPFinderOG::FdSDPFinder::FindSDPFirstGuess(), FdApertureLightFinderOG::FdApertureLightFinder::FindZeta(), LDFFinderOG::LDFFinder::FixCore(), EventGeneratorOG::EventGenerator::GenerateEyeCentricCore(), fdet::Telescope::GetAxis(), otoa::LongitudinalXmaxScanner::GetChangedDepth(), SdHorizontalReconstructionNS::SdHorizontalReconstruction::GetExternalGeometry(), fdet::Telescope::GetPosition(), FdSDPFinderOG::FdSDPFinder::MinuitFitFunc(), StereoGeometryFinderOG::StereoGeometryFinder::MinuitFitFuncStereo(), StereoGeometryFinderOG::StereoGeometryFinder::MinuitFitFuncStereoHybrid(), otoa::err::CalculateFdCorePosition::operator()(), otoa::err::CalculateFdArrivalDirection::operator()(), ReadCloudHLNS::ReadCloudHL::Run(), GeometryExampleNS::GeometryExample::Run(), TelescopeSimulatorLX::TelescopeSimulator::Run(), FdProfileReconstructorKG::FdProfileReconstructor::SetGeometry(), UseMcGeometryOG::UseMcGeometry::SetSDP(), RdEventInitializer::RdEventInitializer::SetSignalSearchWindowFromFD(), and UseMcGeometryOG::UseMcGeometry::SetTimeFit().

template<typename T >
const T & Eye::GetEyeData ( T *&  requestedData,
const std::string &  property,
const std::string &  component,
const std::string &  errorMsg 
) const
inlineprivate
template<typename T >
void Eye::GetEyeData ( T &  requestedData,
const std::string &  property,
const std::string &  component,
const std::string &  errorMsg 
) const
inlineprivate
double Eye::GetFDASVetoFraction ( ) const

Definition at line 106 of file FDetector/Eye.cc.

References fFDASVetoFraction, and UpdateFdUpTime().

unsigned int Eye::GetFirstTelescopeId ( ) const
void Eye::GetFullTelescopeList ( ) const
private

Loads the Id's of all Telescopes available in the relevant XML file and/or database. The Id's in this list constitute the only telescopes for which any information can be retrieved.

Definition at line 245 of file FDetector/Eye.cc.

References fEyeId, fFullTelescopeIdList, fFullTelescopeList, and GetEyeData().

Referenced by Update().

unsigned int fdet::Eye::GetId ( ) const
inline
unsigned int Eye::GetLastTelescopeId ( ) const
utl::CoordinateSystemPtr Eye::GetLocalCoordinateSystem ( ) const

The Auger coordinate system (x to east, z local verical) for this eye.

The origin is tangent to the reference ellipsoid

Definition at line 289 of file FDetector/Eye.cc.

References GetPosition().

Referenced by otoa::FOVCalculator::CalculateFOVBoundaries(), otoa::FD2ADST::FillFdRecStations(), otoa::FD2ADST::FillHybridStations(), StereoGeometryFinderOG::StereoGeometryFinder::FindAxisStereo(), and StereoGeometryFinderOG::StereoGeometryFinder::FindAxisStereoHybrid().

double Eye::GetModelMaxWavelength ( ) const

Definition at line 335 of file FDetector/Eye.cc.

References FullTelescopesBegin(), and FullTelescopesEnd().

double Eye::GetModelMinWavelength ( ) const

Definition at line 320 of file FDetector/Eye.cc.

References FullTelescopesBegin(), FullTelescopesEnd(), and max.

const string & Eye::GetName ( ) const

Eye name.

Definition at line 226 of file FDetector/Eye.cc.

References fName, and GetEyeData().

Referenced by UniversalityFitter::UniversalityFitter::Run(), and FDetectorTest::testVirtualEye().

const string & Eye::GetNameAbbr ( ) const

Definition at line 233 of file FDetector/Eye.cc.

References fNameAbbr, and GetEyeData().

unsigned int fdet::Eye::GetParentPhysicalId ( ) const
inline

Numerical Id of parent physical eye. Returns the eye id if this is a physical eye

Definition at line 121 of file FDetector/Eye.h.

References fEyeId, and fIdOfParentPhysicalEye.

Referenced by FDetectorTest::testVirtualEye().

const std::string& fdet::Eye::GetParentPhysicalIdString ( ) const
inline

Id of parent physical eye as string. Returns the eye id if this is a physical eye

Definition at line 127 of file FDetector/Eye.h.

References fEyeIdString, fIdOfParentPhysicalEye, and fIdOfParentPhysicalEyeString.

Referenced by FDetectorTest::testVirtualEye().

std::set< unsigned int > Eye::GetParticipatingEyeIds ( ) const

Returns a list of eye id's that participate in this (virtual) eye.

Definition at line 352 of file FDetector/Eye.cc.

References fEyeId, FullTelescopesBegin(), FullTelescopesEnd(), and IsVirtual().

Referenced by FdEyeMergerKG::FdEyeMerger::Init().

Point Eye::GetPosition ( ) const

Eye position.

Definition at line 199 of file FDetector/Eye.cc.

References fPosition, and GetEyeData().

Referenced by FdProfileConstrainedGeometryFit::PCGFitter::AdjustGeometry(), FdProfileConstrainedGeometryFitPG::PCGFitter::AdjustGeometry(), FdEnergyDepositFinderKG::CFMatrixCalculator::CalculateDiagonalParameters(), otoa::FOVCalculator::CalculateFOVBoundaries(), FdProfileReconstructorKG::FdProfileReconstructor::CalculateGeometryAndDepth(), otoa::LongitudinalXmaxScanner::CalculateLightFactor(), otoa::LongitudinalXmaxScanner::CalculateTimeLength(), FdSimEventCheckerOG::FdSimEventChecker::CalculateXmaxViewingAngle(), TelescopeSimulatorLX::FDsimG4Materials::ConstructTableOfMaterials(), otoa::fd::ConvertXToChi(), otoa::Detector2ADST::FillAerosols(), otoa::FD2ADST::FillAtmosphericProfileVars(), otoa::FD2ADST::FillCloudsBetweenEyeAndShower(), otoa::FD2ADST::FillEyeSim(), otoa::FD2ADST::FillFdCoreAxis(), otoa::FD2ADST::FillFdRecStations(), otoa::FD2ADST::FillHybridStations(), FdApertureLightFinderOG::FdApertureLightFinder::FindLightFlux(), FdApertureLightFinderOG::FdApertureLightFinder::FindZeta(), LDFFinderOG::LDFFinder::FixCore(), otoa::LongitudinalXmaxScanner::GetChangedDepth(), FdProfileConstrainedGeometryFitPG::FdProfileConstrainedGeometryFit::GetDataFromPreviousFit(), HybridGeometryFinderWG::HybridGeometryFinder::GetDataFromPreviousFit(), GetEyeCoordinateSystem(), GetLocalCoordinateSystem(), otoa::err::CalculateFdCorePosition::operator()(), FdLightCollectionEfficiencyKG::SimMockEvent::PrepareEvent(), GeometryExampleNS::GeometryExample::Run(), FdSimEventCheckerOG::FdSimEventChecker::Run(), UniversalityFitter::UniversalityFitter::Run(), FdProfileReconstructorKG::FdProfileReconstructor::SetGeometry(), UseMcGeometryOG::UseMcGeometry::SetSDP(), UseMcGeometryOG::UseMcGeometry::SetTimeFit(), HybridGeometryFinderWG::HybridGeometryFinder::StoreData(), FDetectorTest::testVirtualEye(), and FdProfileConstrainedGeometryFitPG::PCGFitter::Underground().

const utl::TimeInterval & Eye::GetSDTimeOffset ( ) const
const Telescope & Eye::GetTelescope ( const unsigned int  telescopeId) const

Find Telescope by numerical Id.

Returns the Eye detector description by id.

Definition at line 181 of file FDetector/Eye.cc.

References ERROR, fEyeIdString, TelescopesBegin(), and TelescopesEnd().

Referenced by FdProfileConstrainedGeometryFitPG::PCGFitter::AdjustGeometry(), FdCalibratorOG::FdCalibrator::ApplyCalibration(), FdEnergyDepositFinderKG::CFMatrixCalculator::CalculateDiagonalParameters(), FdEnergyDepositFinderKG::CFMatrixCalculator::CalculateDirectCherenkovMatrix(), FdEnergyDepositFinderKG::CFMatrixCalculator::CalculateFluorescenceMatrix(), otoa::LongitudinalXmaxScanner::CalculateLightFactor(), FdEnergyDepositFinderKG::CFMatrixCalculator::CalculateMieAndRayScattCherenkovMatrix(), FdLightCollectionEfficiencyKG::FdLightCollectionEfficiency::CalculateTelescopeEfficiency(), FdCalibratorOG::FdCalibrator::FillCalibratedPixels(), FdCalibratorOG::FdCalibrator::FillChannelRecData(), otoa::Detector2ADST::FillCloudCameraData(), otoa::FD2ADST::FillCloudsBetweenEyeAndShower(), otoa::Detector2ADST::FillDetector(), otoa::FD2ADST::FillTelSimData(), FdPulseFinderOG::FdPulseFinder::FindBestSignalOverNoise(), FdPulseFinderOG::FdPulseFinder::FindPulse(), SpotPhotonGeneratorOG::SpotPhotonGenerator::FinishSpot(), FdNoiseAdderKG::GetCalibConst(), fdet::Camera::GetCameraDataDiaphragm(), FdLightCollectionEfficiencyKG::PixelToApertureLightConverter::GetConversionConstant(), fdet::Pixel::GetPixelDataDiaphragm(), TelescopeSimulatorLX::FDsimG4DetectorConstruction::Init(), otoa::LongitudinalXmaxScanner::IsNearBorder(), HybridGeometryFinderWG::HybridGeometryFinder::MinuitFitFuncAxis(), HybridGeometryFinderWG::HybridGeometryFinder::ReadmitPixel(), HybridGeometryFinderWG::HybridGeometryFinder::RecalculateChiSquare(), FdCalibratorOG::FdCalibrator::RecoverSaturatedTrace(), HybridGeometryFinderWG::HybridGeometryFinder::RemovePixel(), ReadCloudLLNS::ReadCloudLL::Run(), ReadCloudHLNS::ReadCloudHL::Run(), FdLaserEnergyReconstructorKG::FdLaserEnergyReconstructor::Run(), FdTriggerSimulatorOG::FdTriggerSimulator::Run(), HybridGeometryFinderWG::HybridGeometryFinder::SelectPixels(), FdEnergyDepositFinderKG::ProfileFitter::SetLightFluxData(), UseMcGeometryOG::UseMcGeometry::SetTimeFit(), HybridGeometryFinderWG::HybridGeometryFinder::StoreData(), FDetectorTest::testNotCommissioned(), and FDetectorTest::testVirtualEye().

const utl::TabulatedFunction & Eye::GetTimeCorrectionFactors ( ) const

Get the 10MHz oscillator correction factors X-axis is month+12*(year-2004)

Definition at line 298 of file FDetector/Eye.cc.

References fTimeCorrectionFactors, and GetEyeData().

Referenced by FdCalibratorOG::FdCalibrator::CorrectFDTime().

double Eye::GetUpTimeFraction ( ) const

Definition at line 98 of file FDetector/Eye.cc.

References fUpTimeFraction, and UpdateFdUpTime().

bool Eye::IsInAquisition ( ) const

Definition at line 121 of file FDetector/Eye.cc.

References fUpTimeFraction, and UpdateFdUpTime().

bool fdet::Eye::IsVirtual ( ) const
inline
Eye& fdet::Eye::operator= ( const Eye )
private
TelescopeIterator fdet::Eye::TelescopesBegin ( ) const
inline
TelescopeIterator fdet::Eye::TelescopesEnd ( ) const
inline
void Eye::Update ( )
private
void Eye::UpdateFdUpTime ( ) const
private

Friends And Related Function Documentation

friend class FDetector
friend

Definition at line 204 of file FDetector/Eye.h.

Member Data Documentation

double* fdet::Eye::fBackwallAngle
mutableprivate

Definition at line 193 of file FDetector/Eye.h.

Referenced by GetBackwallAngle(), and ~Eye().

double fdet::Eye::fCDASVetoFraction
mutableprivate

Definition at line 200 of file FDetector/Eye.h.

Referenced by GetCDASVetoFraction(), and UpdateFdUpTime().

utl::CoordinateSystemPtr fdet::Eye::fCoordinateSystem
mutableprivate

Definition at line 192 of file FDetector/Eye.h.

Referenced by GetEyeCoordinateSystem().

unsigned int fdet::Eye::fEyeId
private
std::string fdet::Eye::fEyeIdString
private

Definition at line 174 of file FDetector/Eye.h.

Referenced by Eye(), GetEyeData(), GetParentPhysicalIdString(), and GetTelescope().

double fdet::Eye::fFDASVetoFraction
mutableprivate

Definition at line 201 of file FDetector/Eye.h.

Referenced by GetFDASVetoFraction(), and UpdateFdUpTime().

FullTelescopeIdList* fdet::Eye::fFullTelescopeIdList
mutableprivate
FullTelescopeList fdet::Eye::fFullTelescopeList
mutableprivate
int fdet::Eye::fIdOfParentPhysicalEye
mutableprivate

Definition at line 177 of file FDetector/Eye.h.

Referenced by GetParentPhysicalId(), GetParentPhysicalIdString(), IsVirtual(), and Update().

std::string fdet::Eye::fIdOfParentPhysicalEyeString
private

Definition at line 178 of file FDetector/Eye.h.

Referenced by GetEyeData(), GetParentPhysicalIdString(), and Update().

std::string* fdet::Eye::fName
mutableprivate

Definition at line 190 of file FDetector/Eye.h.

Referenced by GetName(), and ~Eye().

std::string* fdet::Eye::fNameAbbr
mutableprivate

Definition at line 191 of file FDetector/Eye.h.

Referenced by GetNameAbbr(), and ~Eye().

utl::Point* fdet::Eye::fPosition
mutableprivate

Definition at line 189 of file FDetector/Eye.h.

Referenced by GetPosition(), and ~Eye().

utl::TimeInterval* fdet::Eye::fSDTimeOffset
mutableprivate

Definition at line 195 of file FDetector/Eye.h.

Referenced by GetSDTimeOffset(), and ~Eye().

int fdet::Eye::fStatus
mutableprivate

Definition at line 202 of file FDetector/Eye.h.

Referenced by GetDAQStatus(), and UpdateFdUpTime().

utl::TabulatedFunction* fdet::Eye::fTimeCorrectionFactors
mutableprivate

Definition at line 194 of file FDetector/Eye.h.

Referenced by GetTimeCorrectionFactors(), and ~Eye().

double fdet::Eye::fUpTimeFraction
mutableprivate

Definition at line 199 of file FDetector/Eye.h.

Referenced by GetUpTimeFraction(), IsInAquisition(), and UpdateFdUpTime().

det::ValidityStamp fdet::Eye::fUpTimeValidityStamp
mutableprivate

Definition at line 198 of file FDetector/Eye.h.

Referenced by UpdateFdUpTime().


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

, generated on Tue Sep 26 2023.