List of all members | Public Types | Public Member Functions | Static Public Member Functions | Protected Types | Protected Attributes | Private Types | Private Member Functions | Private Attributes
FdTriggerSimulatorOG::FdTriggerSimulator Class Reference

Simulates the FLT, SLT, TLT and T3 of the telescopes. More...

#include <FdTriggerSimulator.h>

Inheritance diagram for FdTriggerSimulatorOG::FdTriggerSimulator:
Inheritance graph
[legend]

Public Types

enum  ETriggerLevel {
  eT3, eTLT, eSLT, eFLT,
  eNoTrigger
}
 
enum  ResultFlag { eSuccess, eFailure, eBreakLoop, eContinueLoop }
 Flag returned by module methods to the RunController. More...
 
enum  VersionInfoType {
  eFilename = 1, eRevisionNumber = 2, eDate = 3, eTime = 4,
  eLastEditor = 5
}
 Different types of version info that can be retrieved from GetVersionInfo. More...
 

Public Member Functions

 FdTriggerSimulator ()
 
fwk::VModule::ResultFlag Finish ()
 Finish method of the module. More...
 
utl::StopwatchGetStopwatch ()
 
const utl::StopwatchGetStopwatch () const
 
std::string GetVersionInfo (const VersionInfoType v) const
 Retrieve different sorts of module version info. More...
 
fwk::VModule::ResultFlag Init ()
 Init method of the module. More...
 
void InitTiming ()
 
fwk::VModule::ResultFlag Run (evt::Event &event)
 Run method of the module. More...
 
ResultFlag RunWithTiming (evt::Event &event)
 
 ~FdTriggerSimulator ()
 

Static Public Member Functions

static std::string GetResultFlagByName (const ResultFlag flag)
 

Protected Types

enum  InfoLevel { eInfoNone = 0, eInfoFinal = 1, eInfoIntermediate = 2, eInfoDebug = 3 }
 

Protected Attributes

int fInfoLevel = 0
 

Private Types

typedef std::map< int, int > FltTrace
 

Private Member Functions

bool AddEyeEvent (fevt::Eye &eye, evt::Event &event, TEyeEvent &EyeEvent)
 
void DoPixelList (int sltTimeOffset, const fdet::Telescope &detTel)
 Prepare list of pixel to be read-out. More...
 
bool FLTSim (fevt::Telescope &tel)
 
TMirrorEvent * MakeMirrorEvent (fevt::Telescope &tel, const evt::Event &event, const utl::TimeInterval &offsetFdSd, int sltTimeOffset)
 
 REGISTER_MODULE ("FdTriggerSimulatorOG", FdTriggerSimulator)
 
int ShiftEventToSLT (fevt::Telescope &tel, int sltTimeOffset)
 
int SLTSim (fevt::Telescope &tel)
 
bool T1Trigger (unsigned int chId, unsigned int pixelthreshold, unsigned int nSamp, const utl::TraceI &trace, fevt::PixelSimData &pixelSim, const fdet::Channel &detChannel)
 FLT algorithm. More...
 
int T2Trigger (const fdet::Telescope &detTel, unsigned int lastFLTbin)
 SLT algorithm. More...
 
bool T3Sim (TEyeEvent &eye, fevt::Eye &evtEye)
 
unsigned int TestPattern (const std::set< int > &pixInCycle, int col, int row, int &multipattern, std::vector< int > &usedInSlt)
 Method to search patterns in list. More...
 
bool TLTSim (TMirrorEvent *tel, fevt::Telescope &evtTel)
 

Private Attributes

std::list< int > fChannelFLT
 
std::list< int > fChannelReadOutList
 
int fColRO
 
std::map< int, FltTracefFLT
 
ETriggerLevel fMaxSimTriggerLevel
 
ETriggerLevel fMinRequiredTriggerLevel
 
std::map< int, int > fMultiplicity
 
int fRowRO
 
std::map< int, fevt::SLTDatafSLT
 
utl::TimeStamp fStartMultiplicityTLT
 
int fTLTPrintLevel
 
unsigned int fVerbosity
 

Detailed Description

Simulates the FLT, SLT, TLT and T3 of the telescopes.

Author
Sergio Petrera
Rossana ...
Ralf Ulrich
Date
October 2006

Definition at line 67 of file FdTriggerSimulator.h.

Member Typedef Documentation

typedef std::map<int, int> FdTriggerSimulatorOG::FdTriggerSimulator::FltTrace
private

Definition at line 136 of file FdTriggerSimulator.h.

Member Enumeration Documentation

Enumerator
eT3 
eTLT 
eSLT 
eFLT 
eNoTrigger 

Definition at line 70 of file FdTriggerSimulator.h.

enum fwk::VModule::InfoLevel
protectedinherited
Enumerator
eInfoNone 
eInfoFinal 
eInfoIntermediate 
eInfoDebug 

Definition at line 125 of file VModule.h.

enum fwk::VModule::ResultFlag
inherited

Flag returned by module methods to the RunController.

Enumerator
eSuccess 

Report success to RunController.

eFailure 

Report failure to RunController, causing RunController to terminate execution.

eBreakLoop 

Break current loop. It works for nested loops too!

eContinueLoop 

Skip remaining modules in the current loop and continue with next iteration of the loop.

Definition at line 60 of file VModule.h.

Different types of version info that can be retrieved from GetVersionInfo.

Enumerator
eFilename 
eRevisionNumber 
eDate 
eTime 
eLastEditor 

Definition at line 110 of file VModule.h.

Constructor & Destructor Documentation

FdTriggerSimulator::FdTriggerSimulator ( )

Definition at line 147 of file FdTriggerSimulator.cc.

FdTriggerSimulatorOG::FdTriggerSimulator::~FdTriggerSimulator ( )
inline

Definition at line 79 of file FdTriggerSimulator.h.

Member Function Documentation

bool FdTriggerSimulator::AddEyeEvent ( fevt::Eye eye,
evt::Event event,
TEyeEvent &  EyeEvent 
)
private
void FdTriggerSimulator::DoPixelList ( int  sltTimeOffset,
const fdet::Telescope detTel 
)
private
VModule::ResultFlag FdTriggerSimulator::Finish ( void  )
virtual

Finish method of the module.

Implements fwk::VModule.

Definition at line 484 of file FdTriggerSimulator.cc.

References io::eSuccess.

bool FdTriggerSimulator::FLTSim ( fevt::Telescope tel)
private
std::string fwk::VModule::GetResultFlagByName ( const ResultFlag  flag)
staticinherited
utl::Stopwatch& fwk::VModule::GetStopwatch ( )
inlineinherited

Definition at line 106 of file VModule.h.

References fwk::VModule::fStopwatch.

const utl::Stopwatch& fwk::VModule::GetStopwatch ( ) const
inlineinherited

Definition at line 107 of file VModule.h.

References fwk::VModule::fStopwatch.

std::string fwk::VModule::GetVersionInfo ( const VersionInfoType  v) const
inherited
VModule::ResultFlag FdTriggerSimulator::Init ( void  )
virtual
void fwk::VModule::InitTiming ( )
inlineinherited

Definition at line 95 of file VModule.h.

References fwk::VModule::fStopwatch, and utl::Stopwatch::Reset().

TMirrorEvent * FdTriggerSimulator::MakeMirrorEvent ( fevt::Telescope tel,
const evt::Event event,
const utl::TimeInterval offsetFdSd,
int  sltTimeOffset 
)
private
FdTriggerSimulatorOG::FdTriggerSimulator::REGISTER_MODULE ( "FdTriggerSimulatorOG"  ,
FdTriggerSimulator   
)
private
VModule::ResultFlag FdTriggerSimulator::Run ( evt::Event event)
virtual
ResultFlag fwk::VModule::RunWithTiming ( evt::Event event)
inlineinherited
int FdTriggerSimulator::ShiftEventToSLT ( fevt::Telescope tel,
int  sltTimeOffset 
)
private
int FdTriggerSimulator::SLTSim ( fevt::Telescope tel)
private
bool FdTriggerSimulator::T1Trigger ( unsigned int  chId,
unsigned int  pixelthreshold,
unsigned int  nSamp,
const utl::TraceI trace,
fevt::PixelSimData pixelSim,
const fdet::Channel detChannel 
)
private
int FdTriggerSimulator::T2Trigger ( const fdet::Telescope detTel,
unsigned int  lastFLTbin 
)
private
bool FdTriggerSimulator::T3Sim ( TEyeEvent &  eye,
fevt::Eye evtEye 
)
private
unsigned int FdTriggerSimulator::TestPattern ( const std::set< int > &  pixInCycle,
int  col,
int  row,
int &  multipattern,
std::vector< int > &  usedInSlt 
)
private
bool FdTriggerSimulator::TLTSim ( TMirrorEvent *  tel,
fevt::Telescope evtTel 
)
private

Member Data Documentation

std::list<int> FdTriggerSimulatorOG::FdTriggerSimulator::fChannelFLT
private

Definition at line 132 of file FdTriggerSimulator.h.

std::list<int> FdTriggerSimulatorOG::FdTriggerSimulator::fChannelReadOutList
private

Definition at line 133 of file FdTriggerSimulator.h.

int FdTriggerSimulatorOG::FdTriggerSimulator::fColRO
private

Definition at line 128 of file FdTriggerSimulator.h.

std::map<int, FltTrace> FdTriggerSimulatorOG::FdTriggerSimulator::fFLT
private

Definition at line 137 of file FdTriggerSimulator.h.

int fwk::VModule::fInfoLevel = 0
protectedinherited
ETriggerLevel FdTriggerSimulatorOG::FdTriggerSimulator::fMaxSimTriggerLevel
private

Definition at line 126 of file FdTriggerSimulator.h.

ETriggerLevel FdTriggerSimulatorOG::FdTriggerSimulator::fMinRequiredTriggerLevel
private

Definition at line 125 of file FdTriggerSimulator.h.

std::map<int, int> FdTriggerSimulatorOG::FdTriggerSimulator::fMultiplicity
private

Definition at line 138 of file FdTriggerSimulator.h.

int FdTriggerSimulatorOG::FdTriggerSimulator::fRowRO
private

Definition at line 129 of file FdTriggerSimulator.h.

std::map<int, fevt::SLTData> FdTriggerSimulatorOG::FdTriggerSimulator::fSLT
private

Definition at line 141 of file FdTriggerSimulator.h.

utl::TimeStamp FdTriggerSimulatorOG::FdTriggerSimulator::fStartMultiplicityTLT
private

Definition at line 145 of file FdTriggerSimulator.h.

int FdTriggerSimulatorOG::FdTriggerSimulator::fTLTPrintLevel
private

Definition at line 144 of file FdTriggerSimulator.h.

unsigned int FdTriggerSimulatorOG::FdTriggerSimulator::fVerbosity
private

Definition at line 127 of file FdTriggerSimulator.h.


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

, generated on Tue Sep 26 2023.