MApolloEventBuilder Class Reference

Inheritance diagram for MApolloEventBuilder:

QReader QBaseModule

List of all members.


Detailed Description

reader module used for online data taking

Author:
sergio.didomizio@ge.infn.it
  • Config example:
        module ApolloEventBuilder
        enable = true
        verbosity = info
        PulseDuration = 5.5
        PreTrigger = 1.2
        PulserChannel = 81
        MuonChannel = 82
        LoopTime = 1
        Timeout = 9
        FinderType = Default
        endmod
        
  • Parameters
    • PulseDuration [double = 5.]: Pulse duration in seconds. A check is performed to ensure that the requested pulse duration corresponds to an even number of samples, because this is required by the FFT algorithms. If this condition is not verified, the pulse duration is automatically increased to the first allowed value.
    • PreTrigger [double = 1.] Pulse pre-trigger in seconds
    • PulserChannel [int = Q_UINT_DEFAULT] Logical channel that will be associated to heater flags. Unset this parameter if the pulser is not active.
    • MuonChannel [int = Q_UINT_DEFAULT] Logical channel associated to muon triggers. In order for this parameter to be used (and for muon triggers to be considered), the environment variable APOLLO_MUONS must be set.
    • LoopTime [int = 2] Time window that is scanned for all channels at each loop (in seconds)
    • Timeout [int = 9] maximum time to wait (in seconds) before giving up if no data is available on a single channel. This value must be larger than (PulseDuration - PreTrigger).
    • FinderType [string = Default]: select trigger finder to be used. Allowed values are:
      • Default: standard trigger finder used in normal measurements
      • LoadCurves: trigger finder to be used when performing load curves

Public Member Functions

 MApolloEventBuilder (QSequence *s)
virtual void Init ()
 read cfg variables, read information from db and initialize shared memories
virtual QEventDo (QEvent *ev)
 search for events in shared memories
virtual void Done ()
 clear shared memories

Private Member Functions

void DumpPointers (QCrateReceiverBuffer *b) const
 dump shared memory pointers (for debug purposes)
double CheckDuration (const QBuilderInfo_t &info, double duration) const
 ensure that pulse duration corresponds to an even number of samplings

Private Attributes

std::map< unsigned int,
QBuilderInfo_t
fInfo
QTriggerFinder * fFinder

Member Function Documentation

QEvent * MApolloEventBuilder::Do ( QEvent ev  )  [virtual]

search for events in shared memories

Returns:
next event, or NULL in case of error or if process status has changed to QExiting_s

Implements QReader.

References QBaseModule::Error(), QReader::fEventNumber, and QDianaProcessStatus::GetInstance().

double MApolloEventBuilder::CheckDuration ( const QBuilderInfo_t info,
double  duration 
) const [private]

ensure that pulse duration corresponds to an even number of samplings

Parameters:
duration pulse duration to be checked (in seconds)
Returns:
corrected value for the duration (in seconds)
a warning is sent if the value provided as argument does not match the returned value.

References QBuilderInfo_t::buffer, QCrateReceiverBuffer::GetLg(), QCrateReceiverBuffer::GetSamplingRate(), and QBaseModule::Warn().

Referenced by Init().


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

Generated on Tue Nov 16 10:50:01 2010 for CUORE Software by  doxygen 1.5.6