SctApi::Trigger Class Reference

Inheritance diagram for SctApi::Trigger:

Inheritance graph
[legend]

Public Types

typedef std::pair< UINT16,
UINT32 > 
RODTrigger
 Type for representation as a series of pairs as defined for ROD DSP.
typedef std::vector< RODTriggerRODTriggers
typedef UINT16 TIMTrigger
typedef std::vector< UINT16 > TIMTriggers
enum  Source { SOURCE_UNKNOWN, SOURCE_ROD, SOURCE_TIM_INTERNAL, SOURCE_TIM_EXTERNAL }

Public Member Functions

virtual ~Trigger ()
virtual void singleL1A ()=0
 Set to a single L1A.
virtual void doubleL1A (unsigned short delay)=0
 Set to a double L1A.
virtual void delayedL1A (unsigned short delay)=0
 Set to a delayed L1A.
virtual void calL1A (unsigned short delay)=0
 Set to a Calibration pulse followed by an L1A BC0s later.
virtual void pulseL1A (unsigned short delay)=0
virtual void softL1A (unsigned short delay)=0
virtual void softCalL1A (unsigned short delay, unsigned short delay2)=0
virtual void softPulseL1A (unsigned short delay, unsigned short delay2)=0
virtual void softBc (unsigned short delay)=0
virtual void soft ()=0
virtual void bc ()=0
virtual void bcL1A (unsigned short delay)=0
virtual void bcCalL1A (unsigned short delay, unsigned short delay2)=0
virtual void bcPulseL1A (unsigned short delay, unsigned short delay2)=0
virtual void setCommIncr (unsigned short command, unsigned short incr)=0
virtual void getCommIncr (unsigned short &command, unsigned short &incr) const =0
virtual void clear ()=0
virtual void addCommand (UINT16 first, UINT32 second)=0
virtual Source getSource () const =0
virtual void setSource (Source)=0
virtual void setFrequency (double freq)=0
 kHz
virtual double getFrequency () const =0
 kHz
virtual int getRandom () const =0
virtual void setRandom (int)=0
virtual const RODTriggers getRODTriggers (int scan_point=0) const =0
 Get list of triggers in ROD format.
virtual const TIMTriggers getTIMTriggers (int scan_point=0) const =0
virtual std::string print () const =0
virtual bool isValidRODTrigger () const =0
virtual bool isValidTIMTrigger () const =0
virtual bool timNeedsSequencer () const =0

Static Public Member Functions

::SctApi::Trigger::TIMTriggers convertToTIMTriggers (const ::SctApi::Trigger::RODTriggers &rTrigs)
 Build a TIM trigger sequence from a ROD trigger.
static int getUniqueSlowCommandType (const ::SctApi::Trigger::RODTriggers &rTrigs)
 TIM can only send a single "CAL" line, which could mean any of the ABCD slow commands.
static std::string getNameOfRODTrigger (RODTrigger t)

Detailed Description

Definition at line 16 of file Trigger.h.


Member Typedef Documentation

typedef std::pair<UINT16, UINT32> SctApi::Trigger::RODTrigger
 

Type for representation as a series of pairs as defined for ROD DSP.

Definition at line 21 of file Trigger.h.


Member Function Documentation

virtual void SctApi::Trigger::calL1A unsigned short  delay  )  [pure virtual]
 

Set to a Calibration pulse followed by an L1A BC0s later.

Implemented in TriggerWrapper.

SctApi::Trigger::TIMTriggers SctApi::Trigger::convertToTIMTriggers const ::SctApi::Trigger::RODTriggers rTrigs  )  [static]
 

Build a TIM trigger sequence from a ROD trigger.

Note:
should only do this if it is a valid TIMTrigger.
Exceptions:
SctApiException if it is not a valid TIM trigger.

Definition at line 36 of file Trigger.cxx.

Referenced by SctApi::TriggerImpl::getTIMTriggers(), and SctApi::sendTriggers().

virtual void SctApi::Trigger::delayedL1A unsigned short  delay  )  [pure virtual]
 

Set to a delayed L1A.

Implemented in TriggerWrapper.

virtual void SctApi::Trigger::doubleL1A unsigned short  delay  )  [pure virtual]
 

Set to a double L1A.

Implemented in TriggerWrapper.

virtual double SctApi::Trigger::getFrequency  )  const [pure virtual]
 

kHz

Implemented in SctApi::TriggerImpl, and TriggerWrapper.

Referenced by SctApi::sendTriggers().

virtual const RODTriggers SctApi::Trigger::getRODTriggers int  scan_point = 0  )  const [pure virtual]
 

Get list of triggers in ROD format.

Implemented in SctApi::TriggerImpl, and TriggerWrapper.

Referenced by SctApi::sendRodTrigger(), and SctApi::sendTriggers().

int SctApi::Trigger::getUniqueSlowCommandType const ::SctApi::Trigger::RODTriggers rTrigs  )  [static]
 

TIM can only send a single "CAL" line, which could mean any of the ABCD slow commands.

This function finds out which of the ABCD slow commands the TIM-CAL corresponds to

Returns:
slow command ROD trigger type, or zero if no slow command is requested.
Exceptions:
SctApiException if more than one type of slow command is requested.

Definition at line 12 of file Trigger.cxx.

virtual void SctApi::Trigger::setFrequency double  freq  )  [pure virtual]
 

kHz

Implemented in SctApi::TriggerImpl, and TriggerWrapper.

virtual void SctApi::Trigger::singleL1A  )  [pure virtual]
 

Set to a single L1A.

Implemented in TTrigger, SctApi::TriggerImpl, and TriggerWrapper.


The documentation for this class was generated from the following files:
Generated on Mon Feb 6 14:04:50 2006 for SCT DAQ/DCS Software - C++ by  doxygen 1.4.6