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

Description of a pixel. More...

#include <Pixel.h>

Public Types

enum  Status { eGood = 0, eBadCalibration = 1, eUnknown }
 

Public Member Functions

unsigned int GetChannelId () const
 
float GetCloudFraction () const
 how much of pixel is obscured by clouds More...
 
unsigned int GetColumn (const unsigned int pixelid) const
 
unsigned int GetColumn () const
 
double GetDiaPhoton2PEFactor (const double wavelength, const std::string &configSignature="") const
 
const utl::VectorGetDirection () const
 pointing direction of this pixel More...
 
double GetEndToEndCalibration (const double wavelength) const
 multiplication of calA(+drum) constant and optical efficiency correction is returned More...
 
double GetEndToEndCalibrationAtReferenceWavelength () const
 
const utl::TabulatedFunctionGetEndToEndCalibrationConstant () const
 end to end calibration function More...
 
double GetEndToEndCalibrationConstant (const double wavelength) const
 calA(+drum) constant is returned More...
 
double GetEndToEndCalibrationConstantAtReferenceWavelength () const
 calA(+drum) constant is returned More...
 
unsigned int GetEyeId () const
 1..5 (4x normal FD, 1x HEAT) More...
 
unsigned int GetId () const
 By default from 1..440. More...
 
const utl::TabulatedFunctionGetOpticalEfficiencyCorrection () const
 optical efficiency correction is returned as a function of wavelength More...
 
double GetOpticalEfficiencyCorrection (const double wavelength) const
 optical efficiency correction is returned More...
 
double GetOpticalEfficiencyCorrectionAtReferenceWavelength () const
 optical efficiency correction is returned More...
 
Status GetOpticalEfficiencyStatus () const
 
const utl::CoordinateSystemPtrGetPixelCoordinateSystem () const
 
const utl::TabulatedFunctionGetQEfficiency () const
 Average quantum efficiency as a function of the wavelength. More...
 
unsigned int GetRow (const unsigned int pixelid) const
 
unsigned int GetRow () const
 
double GetSimulatedDiaPhoton2ADC (const std::string &configSignature, const double wavelength) const
 
double GetSimulatedEndToEndCalibration (const std::string &configSignature) const
 for the simulated end-to-end calibration constant More...
 
double GetSolidAngle () const
 The solid angle viewed by this pixel. More...
 
Status GetStatus () const
 Get the pixel status flag. More...
 
const TelescopeGetTelescope () const
 Access the telescope this Pixel belongs to. More...
 
unsigned int GetTelescopeId () const
 1..6 for normal FD, 1..3 for HEAT More...
 
double GetTimeOffset () const
 pixel time offset More...
 
bool HasCloudFraction () const
 
bool IsMismatched () const
 
bool IsObscuredByCloud () const
 
void Update ()
 

Private Member Functions

int GetCloudIndex () const
 Cloud index in strange units. To access please use GetCloudFraction() More...
 
template<typename T >
const T & GetPixelData (T *&requestedData, const std::string &property, const std::string &component, const std::string &errorMsg, const std::string &extraIndex="") const
 
template<typename T >
void GetPixelData (T &requestedData, const std::string &property, const std::string &component, const std::string &errorMsg, const std::string &extraIndex="") const
 
template<typename T >
const T & GetPixelDataDiaphragm (T *&requestedData, const std::string &property, const std::string &component, const std::string &errorMsg) const
 
template<typename T >
void GetPixelDataDiaphragm (T &requestedData, const std::string &property, const std::string &component, const std::string &errorMsg) const
 
Pixeloperator= (const Pixel &)
 
 Pixel (const unsigned int eyeId, const unsigned int telescopeId, const unsigned int pixelId, const std::string &physEyeIdString, const std::string &physTelIdString)
 
 Pixel (const Pixel &)
 
 ~Pixel ()
 

Private Attributes

int fCloudIndex
 
det::ValidityStamp fCloudValidityStamp
 
utl::CoordinateSystemPtr fCoordinateSystem
 
utl::Vector fDirection
 
unsigned int fEyeId
 
std::string fPhysicalEyeIdString
 
std::string fPhysicalTelescopeIdString
 
unsigned int fPixelId
 
std::string fPixelIdString
 
Status fPixelOpticalEfficiencyStatus
 
Status fPixelStatus
 
utl::TabulatedFunctionfQEfficiency
 
double * fSimulatedEndToEnd
 
double * fSolidAngle
 
unsigned int fTelescopeId
 
double * fTimeOffset
 
utl::TabulatedFunction fWavelengthCalib
 
utl::TabulatedFunction fWavelengthOpticalEfficiencyCorrection
 

Friends

class fdet::Telescope
 

Detailed Description

Description of a pixel.

Author
S. Argiro
L. Prado Jr
Date
29 Jun 2003

Definition at line 39 of file FDetector/Pixel.h.

Member Enumeration Documentation

Enumerator
eGood 
eBadCalibration 
eUnknown 

Definition at line 42 of file FDetector/Pixel.h.

Constructor & Destructor Documentation

Pixel::Pixel ( const unsigned int  eyeId,
const unsigned int  telescopeId,
const unsigned int  pixelId,
const std::string &  physEyeIdString,
const std::string &  physTelIdString 
)
private

Definition at line 33 of file FDetector/Pixel.cc.

References fPixelIdString.

Pixel::~Pixel ( )
private

Definition at line 56 of file FDetector/Pixel.cc.

References fQEfficiency, fSimulatedEndToEnd, fSolidAngle, and fTimeOffset.

fdet::Pixel::Pixel ( const Pixel )
private

Member Function Documentation

unsigned int Pixel::GetChannelId ( ) const
float Pixel::GetCloudFraction ( ) const

how much of pixel is obscured by clouds

Note: Using the mid-interval values for for the second to second-to-last bins and the extreme values for the first and last bin may skew things, but users may want to test for "entirely clear" or "entirely obscured", so we cater to that illusion.

Definition at line 407 of file FDetector/Pixel.cc.

References GetCloudIndex().

Referenced by otoa::Detector2ADST::FillCloudCameraData(), otoa::FD2ADST::FillCloudCameraDataBrief(), ReadCloudLLNS::ReadCloudLL::Run(), and testAtmLowLevelAtmInterface::testCloudDB().

int Pixel::GetCloudIndex ( ) const
private

Cloud index in strange units. To access please use GetCloudFraction()

Definition at line 388 of file FDetector/Pixel.cc.

References fCloudIndex, fCloudValidityStamp, and det::ValidityStamp::IsValid().

Referenced by GetCloudFraction(), and IsObscuredByCloud().

unsigned int Pixel::GetColumn ( const unsigned int  pixelid) const
unsigned int fdet::Pixel::GetColumn ( ) const
inline

Definition at line 102 of file FDetector/Pixel.h.

References fPixelId, and GetColumn().

Referenced by GetColumn().

double Pixel::GetDiaPhoton2PEFactor ( const double  wavelength,
const std::string &  configSignature = "" 
) const
const Vector & Pixel::GetDirection ( ) const

pointing direction of this pixel

Definition at line 92 of file FDetector/Pixel.cc.

References fDirection, fdet::Telescope::GetCameraPixelDirection(), GetId(), utl::Vector::GetMag2(), and GetTelescope().

Referenced by FdBackgroundSimulatorOG::FdBackgroundSimulator::AddBackgroundFromVariance(), FdProfileConstrainedGeometryFitPG::PCGFitter::AdjustGeometry(), FdEnergyDepositFinderKG::CFMatrixCalculator::CalculateTelescopeData(), SpotPhotonGeneratorOG::SpotPhotonGenerator::DoSpot(), FdSDPFinderOG::FdSDPFinder::EstimateChi_i(), otoa::FD2ADST::FillCloudCameraDataBrief(), FdAxisFinderOG::FdAxisFinder::FillPoints(), HdAxisFinderUU::HdAxisFinder::FillPoints(), otoa::FD2ADST::FillRecPixel(), FdPulseFinderOG::FdPulseFinder::FindAdditionalPulse(), StereoGeometryFinderOG::StereoGeometryFinder::FindAxisStereo(), StereoGeometryFinderOG::StereoGeometryFinder::FindAxisStereoHybrid(), FdApertureLightFinderOG::FdApertureLightFinder::FindLightFlux(), FdSDPFinderOG::FdSDPFinder::FindSDPFirstGuess(), FdApertureLightFinderOG::FdApertureLightFinder::FindZeta(), FdProfileConstrainedGeometryFitPG::ApertureLight::FindZeta(), FdProfileConstrainedGeometryFit::ApertureLight::FindZeta(), FdApertureLightFinderKG::FdApertureLightFinder::FindZeta(), fdet::Telescope::GetModelMeanEfficiency(), GetPixelCoordinateSystem(), GetSimulatedDiaPhoton2ADC(), FdSDPFinderOG::FdSDPFinder::IsIsolated(), FdSDPFinderOG::FdSDPFinder::MinuitFitFunc(), FdProfileConstrainedGeometryFitPG::ChiZeroRegression::MinuitFitFunc(), HybridGeometryFinderWG::HybridGeometryFinder::MinuitFitFuncAxis(), StereoGeometryFinderOG::StereoGeometryFinder::MinuitFitFuncStereo(), StereoGeometryFinderOG::StereoGeometryFinder::MinuitFitFuncStereoHybrid(), FdSDPFinderOG::FdSDPFinder::ReadmitPixel(), FdAxisFinderOG::FdAxisFinder::ReadmitPixel(), HybridGeometryFinderOG::HybridGeometryFinder::ReadmitPixel(), HybridGeometryFinderWG::HybridGeometryFinder::ReadmitPixel(), HybridGeometryFinderWG::HybridGeometryFinder::RecalculateChiSquare(), FdSDPFinderOG::FdSDPFinder::RemoveNoise(), HybridGeometryFinderWG::HybridGeometryFinder::RemovePixel(), ReadCloudHLNS::ReadCloudHL::Run(), HybridGeometryFinderWG::HybridGeometryFinder::SelectPixels(), UseMcGeometryOG::UseMcGeometry::SetSDP(), UseMcGeometryOG::UseMcGeometry::SetTimeFit(), and HybridGeometryFinderWG::HybridGeometryFinder::StoreData().

double Pixel::GetEndToEndCalibration ( const double  wavelength) const
double Pixel::GetEndToEndCalibrationAtReferenceWavelength ( ) const

end to end calibration at the reference wavelength multiplication of calA(+drum) constant and optical efficiency correction is returned

Definition at line 145 of file FDetector/Pixel.cc.

References GetEndToEndCalibration().

Referenced by FdCalibratorOG::FdCalibrator::ApplyCalibration(), otoa::LongitudinalXmaxScanner::FillLightFactors(), FdNoiseAdderKG::GetCalibConst(), and otoa::fd::GetCalibrationConstant().

const TabulatedFunction & Pixel::GetEndToEndCalibrationConstant ( ) const
double Pixel::GetEndToEndCalibrationConstant ( const double  wavelength) const
double Pixel::GetEndToEndCalibrationConstantAtReferenceWavelength ( ) const

calA(+drum) constant is returned

Definition at line 154 of file FDetector/Pixel.cc.

References GetEndToEndCalibrationConstant().

Referenced by FdElectronicsSimulatorOG::FdElectronicsSimulator::InitCamera().

unsigned int fdet::Pixel::GetEyeId ( ) const
inline
unsigned int fdet::Pixel::GetId ( ) const
inline
const TabulatedFunction & Pixel::GetOpticalEfficiencyCorrection ( ) const

optical efficiency correction is returned as a function of wavelength

Definition at line 182 of file FDetector/Pixel.cc.

References fdet::Telescope::CachePixelOpticalEfficiencyCorrections(), fWavelengthOpticalEfficiencyCorrection, and GetTelescope().

Referenced by GetOpticalEfficiencyCorrectionAtReferenceWavelength().

double Pixel::GetOpticalEfficiencyCorrection ( const double  wavelength) const
double Pixel::GetOpticalEfficiencyCorrectionAtReferenceWavelength ( ) const

optical efficiency correction is returned

Definition at line 163 of file FDetector/Pixel.cc.

References GetOpticalEfficiencyCorrection().

Referenced by FdElectronicsSimulatorOG::FdElectronicsSimulator::InitCamera().

Pixel::Status Pixel::GetOpticalEfficiencyStatus ( ) const
const CoordinateSystemPtr & Pixel::GetPixelCoordinateSystem ( ) const
template<typename T >
const T & Pixel::GetPixelData ( T *&  requestedData,
const std::string &  property,
const std::string &  component,
const std::string &  errorMsg,
const std::string &  extraIndex = "" 
) const
private
template<typename T >
void Pixel::GetPixelData ( T &  requestedData,
const std::string &  property,
const std::string &  component,
const std::string &  errorMsg,
const std::string &  extraIndex = "" 
) const
private
template<typename T >
const T & Pixel::GetPixelDataDiaphragm ( T *&  requestedData,
const std::string &  property,
const std::string &  component,
const std::string &  errorMsg 
) const
private

Definition at line 492 of file FDetector/Pixel.cc.

template<typename T >
void Pixel::GetPixelDataDiaphragm ( T &  requestedData,
const std::string &  property,
const std::string &  component,
const std::string &  errorMsg 
) const
private
const TabulatedFunction & Pixel::GetQEfficiency ( ) const
unsigned int Pixel::GetRow ( const unsigned int  pixelid) const
unsigned int fdet::Pixel::GetRow ( ) const
inline

Definition at line 101 of file FDetector/Pixel.h.

References fPixelId, and GetRow().

Referenced by GetRow().

double Pixel::GetSimulatedDiaPhoton2ADC ( const std::string &  configSignature,
const double  wavelength 
) const
double Pixel::GetSimulatedEndToEndCalibration ( const std::string &  configSignature) const

for the simulated end-to-end calibration constant

Definition at line 302 of file FDetector/Pixel.cc.

References fSimulatedEndToEnd, and GetPixelData().

Referenced by fdet::Telescope::GetModelMeanEfficiency(), GetSimulatedDiaPhoton2ADC(), and FdElectronicsSimulatorOG::FdElectronicsSimulator::InitCamera().

double Pixel::GetSolidAngle ( ) const
Pixel::Status Pixel::GetStatus ( ) const
const Telescope & Pixel::GetTelescope ( ) const
unsigned int fdet::Pixel::GetTelescopeId ( ) const
inline
double Pixel::GetTimeOffset ( ) const

pixel time offset

Definition at line 341 of file FDetector/Pixel.cc.

References fTimeOffset, and GetPixelData().

Referenced by FDetectorTest::testGetTimeOffset().

bool Pixel::HasCloudFraction ( ) const
bool fdet::Pixel::IsMismatched ( ) const
inline

Definition at line 95 of file FDetector/Pixel.h.

References GetChannelId(), and GetId().

bool fdet::Pixel::IsObscuredByCloud ( ) const
inline

Definition at line 117 of file FDetector/Pixel.h.

References GetCloudIndex().

Pixel& fdet::Pixel::operator= ( const Pixel )
private
void Pixel::Update ( )

Friends And Related Function Documentation

friend class fdet::Telescope
friend

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

Member Data Documentation

int fdet::Pixel::fCloudIndex
mutableprivate

Definition at line 154 of file FDetector/Pixel.h.

Referenced by fdet::Telescope::CachePixelCloudData(), and GetCloudIndex().

det::ValidityStamp fdet::Pixel::fCloudValidityStamp
mutableprivate
utl::CoordinateSystemPtr fdet::Pixel::fCoordinateSystem
mutableprivate

Definition at line 133 of file FDetector/Pixel.h.

Referenced by GetPixelCoordinateSystem(), and Update().

utl::Vector fdet::Pixel::fDirection
mutableprivate

Definition at line 132 of file FDetector/Pixel.h.

Referenced by GetDirection(), and Update().

unsigned int fdet::Pixel::fEyeId
private

Definition at line 143 of file FDetector/Pixel.h.

Referenced by GetEyeId(), GetPixelDataDiaphragm(), and GetTelescope().

std::string fdet::Pixel::fPhysicalEyeIdString
private

Definition at line 147 of file FDetector/Pixel.h.

Referenced by GetPixelData(), and GetPixelDataDiaphragm().

std::string fdet::Pixel::fPhysicalTelescopeIdString
private

Definition at line 148 of file FDetector/Pixel.h.

Referenced by GetPixelData(), and GetPixelDataDiaphragm().

unsigned int fdet::Pixel::fPixelId
private

Definition at line 145 of file FDetector/Pixel.h.

Referenced by GetChannelId(), GetColumn(), GetId(), GetRow(), and GetSolidAngle().

std::string fdet::Pixel::fPixelIdString
private

Definition at line 149 of file FDetector/Pixel.h.

Referenced by GetPixelData(), GetPixelDataDiaphragm(), and Pixel().

Status fdet::Pixel::fPixelOpticalEfficiencyStatus
mutableprivate
Status fdet::Pixel::fPixelStatus
mutableprivate

Definition at line 139 of file FDetector/Pixel.h.

Referenced by fdet::Telescope::CachePixelCalibrations(), and GetStatus().

utl::TabulatedFunction* fdet::Pixel::fQEfficiency
mutableprivate

Definition at line 152 of file FDetector/Pixel.h.

Referenced by GetQEfficiency(), Update(), and ~Pixel().

double* fdet::Pixel::fSimulatedEndToEnd
mutableprivate

Definition at line 141 of file FDetector/Pixel.h.

Referenced by GetSimulatedEndToEndCalibration(), Update(), and ~Pixel().

double* fdet::Pixel::fSolidAngle
mutableprivate

Definition at line 151 of file FDetector/Pixel.h.

Referenced by GetSolidAngle(), Update(), and ~Pixel().

unsigned int fdet::Pixel::fTelescopeId
private

Definition at line 144 of file FDetector/Pixel.h.

Referenced by GetPixelDataDiaphragm(), GetTelescope(), and GetTelescopeId().

double* fdet::Pixel::fTimeOffset
mutableprivate

Definition at line 138 of file FDetector/Pixel.h.

Referenced by GetTimeOffset(), Update(), and ~Pixel().

utl::TabulatedFunction fdet::Pixel::fWavelengthCalib
mutableprivate
utl::TabulatedFunction fdet::Pixel::fWavelengthOpticalEfficiencyCorrection
mutableprivate

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

, generated on Tue Sep 26 2023.