CFEL - ASG Software Suite  2.5.0
CASS
Public Types | Public Member Functions | Static Public Member Functions | Protected Attributes | List of all members
cass::pixeldetector::commonmode::CalculatorBase Class Referenceabstract

base class for all common mode calculators More...

#include <commonmode_calculator_base.h>

+ Inheritance diagram for cass::pixeldetector::commonmode::CalculatorBase:

Public Types

typedef std::tr1::shared_ptr< CalculatorBaseshared_pointer
 typedef the shared pointer of this More...
 

Public Member Functions

virtual ~CalculatorBase ()
 virtual destructor More...
 
virtual Detector::pixel_t operator() (Detector::frame_t::const_iterator pixel, size_t idx) const =0
 determine the common mode value More...
 
virtual void loadSettings (CASSSettings &s)=0
 load the settings of this calculator More...
 
void load (CASSSettings &s)
 load all common settings More...
 
size_t width () const
 retrieve the number of pixels (or the width of calculation More...
 

Static Public Member Functions

static shared_pointer instance (const std::string &type)
 create an instance of the requested functor More...
 

Protected Attributes

std::tr1::shared_ptr< CommonData_commondata
 the commonly used data container More...
 
size_t _nbrPixels
 how many pixels should be used for calculating the common mode More...
 
float _multiplier
 the multiplier to identify pixels that contain information More...
 

Detailed Description

base class for all common mode calculators

the calculators determine the common mode of the a user defined part of the row and return the value for correcting the frame.

User definable Parameters:

PixelDetectors/%name%/HLLProcessing/CommonModeCorrection/{Width}
How many pixels shoudl be included in the common mode correction. The width of one Camex is 128 pixels. Sometimes it is better to to calculate the common mode from the entire quadrant in which case it should be 512. Default is 128.

PixelDetectors/%name%/HLLProcessing/CommonModeCorrection/{Multiplier}
When suppressing pixels in the common mode calculation that contain photons this is the multiplier that should be added to the noise before checking for photons. Default is 4

Author
Lutz Foucar

Definition at line 46 of file commonmode_calculator_base.h.

Member Typedef Documentation

typedef the shared pointer of this

Definition at line 50 of file commonmode_calculator_base.h.

Constructor & Destructor Documentation

virtual cass::pixeldetector::commonmode::CalculatorBase::~CalculatorBase ( )
inlinevirtual

virtual destructor

Definition at line 53 of file commonmode_calculator_base.h.

Member Function Documentation

CalculatorBase::shared_pointer CalculatorBase::instance ( const std::string &  type)
static

create an instance of the requested functor

Returns
a shared pointer to the requested type
Parameters
typethe reqested type

Definition at line 55 of file commonmode_calculator_base.cpp.

Referenced by cass::pixeldetector::HLLProcessor::loadSettings(), cass::pixeldetector::GainCalibration::loadSettings(), and cass::pixeldetector::OnlineFixedCreatorCommonMode::loadSettings().

void CalculatorBase::load ( CASSSettings s)

load all common settings

Parameters
sthe CASSSettings object to read the information from

Definition at line 72 of file commonmode_calculator_base.cpp.

References QSettings::beginGroup(), QSettings::endGroup(), cass::pixeldetector::DetectorName::fromSettings(), cass::pixeldetector::CommonData::instance(), and QSettings::value().

virtual void cass::pixeldetector::commonmode::CalculatorBase::loadSettings ( CASSSettings s)
pure virtual
virtual Detector::pixel_t cass::pixeldetector::commonmode::CalculatorBase::operator() ( Detector::frame_t::const_iterator  pixel,
size_t  idx 
) const
pure virtual

determine the common mode value

calculate the common mode from the given index on.

Returns
the common mode value
Parameters
pixelthe start pixel within the frame to start the common mode calculation
idxindex where the pixel iterator is right now within the frame

Implemented in cass::pixeldetector::commonmode::MedianCalculator, cass::pixeldetector::commonmode::MeanCalculator, cass::pixeldetector::commonmode::SimpleMeanCalculator, and cass::pixeldetector::commonmode::NoCalc.

size_t cass::pixeldetector::commonmode::CalculatorBase::width ( ) const
inline

retrieve the number of pixels (or the width of calculation

Definition at line 86 of file commonmode_calculator_base.h.

References _nbrPixels.

Referenced by cass::pixeldetector::OnlineFixedCreatorCommonMode::buildAndCalc().

Member Data Documentation

std::tr1::shared_ptr<CommonData> cass::pixeldetector::commonmode::CalculatorBase::_commondata
protected

the commonly used data container

Definition at line 90 of file commonmode_calculator_base.h.

float cass::pixeldetector::commonmode::CalculatorBase::_multiplier
protected

the multiplier to identify pixels that contain information

Definition at line 96 of file commonmode_calculator_base.h.

size_t cass::pixeldetector::commonmode::CalculatorBase::_nbrPixels
protected

how many pixels should be used for calculating the common mode

Definition at line 93 of file commonmode_calculator_base.h.

Referenced by width().


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