CFEL - ASG Software Suite  2.5.0
CASS
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | Private Member Functions | List of all members
cass::ACQIRIS::DetectorBackend Class Referenceabstract

Base class for all Detectors attached to an Acqiris Instrument. More...

#include <detector_backend.h>

+ Inheritance diagram for cass::ACQIRIS::DetectorBackend:
+ Collaboration diagram for cass::ACQIRIS::DetectorBackend:

Public Types

typedef std::tr1::shared_ptr< DetectorBackendshared_pointer
 a shared pointer of this type More...
 

Public Member Functions

virtual ~DetectorBackend ()
 virtual destructor More...
 
virtual void loadSettings (CASSSettings &s)=0
 load the settings of the detector More...
 
virtual void associate (const CASSEvent &evt)=0
 associate the event with this detector More...
 
const std::string name () const
 return the detector name More...
 
virtual DetectorType type ()=0
 retrieve what kind of detector this is More...
 

Static Public Member Functions

static shared_pointer instance (const DetectorType &dettype, const std::string &detname)
 create an instance of the requested dectortype More...
 

Protected Member Functions

 DetectorBackend (const std::string name)
 constructor. More...
 

Protected Attributes

std::string _name
 the name of the detector. More...
 

Private Member Functions

 DetectorBackend ()
 default constructor should not be called therefore its privat More...
 

Detailed Description

Base class for all Detectors attached to an Acqiris Instrument.

Todo:
this class can have the conatiner for all signal producers. It can also have the container for all particles and detectorhits. In case it is a tof detector it just won't have the px and py components and related values. This sig prod will just be call either "u1" .. so the map is of string,sigprod instead of char,sigprod. When changing this also change the directory structure by flatening it out so that one can call make -j. (Or create a .pro file for each subfolder)
Author
Lutz Foucar

Definition at line 43 of file detector_backend.h.

Member Typedef Documentation

a shared pointer of this type

Definition at line 47 of file detector_backend.h.

Constructor & Destructor Documentation

cass::ACQIRIS::DetectorBackend::DetectorBackend ( const std::string  name)
inlineprotected

constructor.

Parameters
[in]namethe name of the detector

Definition at line 54 of file detector_backend.h.

virtual cass::ACQIRIS::DetectorBackend::~DetectorBackend ( )
inlinevirtual

virtual destructor

Definition at line 60 of file detector_backend.h.

cass::ACQIRIS::DetectorBackend::DetectorBackend ( )
inlineprivate

default constructor should not be called therefore its privat

Definition at line 102 of file detector_backend.h.

Member Function Documentation

virtual void cass::ACQIRIS::DetectorBackend::associate ( const CASSEvent evt)
pure virtual

associate the event with this detector

retrieve all necessary information for this detector from the event. Needs to be implemented by the detector inheriting from this.

Parameters
evtThe event to take the data from

Implemented in cass::ACQIRIS::DelaylineDetector, and cass::ACQIRIS::TofDetector.

DetectorBackend::shared_pointer DetectorBackend::instance ( const DetectorType dettype,
const std::string &  detname 
)
static

create an instance of the requested dectortype

if the requested detector type is not known an exception will be thrown

Returns
an instance of the the requested detector type.
Parameters
dettypetype that the detector should have
detnamethe name of the detector in the .ini file

Definition at line 17 of file detector_backend.cpp.

References cass::ACQIRIS::Delayline, cass::ACQIRIS::ToF, and cass::toString().

Referenced by cass::ACQIRIS::HelperAcqirisDetectors::HelperAcqirisDetectors().

virtual void cass::ACQIRIS::DetectorBackend::loadSettings ( CASSSettings s)
pure virtual

load the settings of the detector

load the settings from the .ini file. Needs to be implemented by the detector that inherits from this.

Parameters
sreference to the CASSSettings object

Implemented in cass::ACQIRIS::DelaylineDetector, and cass::ACQIRIS::TofDetector.

const std::string cass::ACQIRIS::DetectorBackend::name ( ) const
inline

return the detector name

Definition at line 81 of file detector_backend.h.

References _name.

Referenced by cass::HexCalibrator::loadSettings(), and cass::ACQIRIS::HexSorter::loadSettings().

virtual DetectorType cass::ACQIRIS::DetectorBackend::type ( )
pure virtual

retrieve what kind of detector this is

Implemented in cass::ACQIRIS::TofDetector.

Member Data Documentation

std::string cass::ACQIRIS::DetectorBackend::_name
protected

the name of the detector.

used for casssettings group

Definition at line 98 of file detector_backend.h.

Referenced by name().


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