Jpp  18.2.0
the software that should make you happy
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Classes | Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Static Protected Member Functions | List of all members
JTRIGGER::JTriggerInterface Class Reference

Trigger interface. More...

#include <JTriggerInterface.hh>

Inheritance diagram for JTRIGGER::JTriggerInterface:
JTRIGGER::JTrigger3D JTRIGGER::JTrigger3N JTRIGGER::JTriggerMXShower JTRIGGER::JTriggerNB JTRIGGER::JTrigger3DShower JTRIGGER::JTrigger3DMuon

Classes

struct  JBit
 Auxiliary class for type definition of specific trigger bit. More...
 

Public Types

typedef JTriggerInput::value_type value_type
 
typedef JMatch< value_typematch_type
 

Public Member Functions

JTriggerbit_t getTriggerBit () const
 Get the trigger bit. More...
 

Static Public Member Functions

static const char * getTriggerName (JTriggerbit_t bit)
 Get trigger name. More...
 

Protected Member Functions

 JTriggerInterface ()
 Default constructor. More...
 
virtual ~JTriggerInterface ()
 Virtual destructor. More...
 
template<JTriggerbit_t N>
bool checkTriggerBit () const
 Test whether specific trigger bit correponds to derived trigger class. More...
 
template<JTriggerbit_t N>
JTriggerbit_t find_trigger_bit (JBit< N > bit) const
 Recursive method to find the trigger bit of the given trigger data. More...
 
JTriggerbit_t find_trigger_bit (JBit< NUMBER_OF_TRIGGER_BITS > bit) const
 Termination method of recursive method to find the trigger bit of the given trigger data. More...
 

Static Protected Member Functions

template<JTriggerbit_t N>
static const char * getTriggerName ()
 Get trigger name. More...
 
template<JTriggerbit_t N>
static const char * get_trigger_name (JBit< N > bit, JTriggerbit_t value)
 Recursive method to get trigger name for given trigger bit. More...
 
static const char * get_trigger_name (JBit< NUMBER_OF_TRIGGER_BITS > bit, JTriggerbit_t value)
 Termination method of recursive method to get trigger name. More...
 

Detailed Description

Trigger interface.

This interface is used to define a unique bit for each trigger.

Definition at line 36 of file JTriggerInterface.hh.

Member Typedef Documentation

typedef JTriggerInput::value_type JTRIGGER::JTriggerInterface::value_type

Definition at line 161 of file JTriggerInterface.hh.

Definition at line 162 of file JTriggerInterface.hh.

Constructor & Destructor Documentation

JTRIGGER::JTriggerInterface::JTriggerInterface ( )
inlineprotected

Default constructor.

Definition at line 42 of file JTriggerInterface.hh.

43  {}
virtual JTRIGGER::JTriggerInterface::~JTriggerInterface ( )
inlineprotectedvirtual

Virtual destructor.

Definition at line 49 of file JTriggerInterface.hh.

50  {}

Member Function Documentation

template<JTriggerbit_t N>
bool JTRIGGER::JTriggerInterface::checkTriggerBit ( ) const
inlineprotected

Test whether specific trigger bit correponds to derived trigger class.

This method will be specialised using the marco setTriggerBit() so that it will return true if this triggered event corresponds to bit N.

This method will be repeatedly called by method find_trigger_bit() which in turn is called by the member method JTriggerInterface::getTriggerBit() so that it returns the correct trigger bit.

Returns
false

Definition at line 76 of file JTriggerInterface.hh.

77  {
78  return false;
79  }
template<JTriggerbit_t N>
JTriggerbit_t JTRIGGER::JTriggerInterface::find_trigger_bit ( JBit< N bit) const
inlineprotected

Recursive method to find the trigger bit of the given trigger data.

Parameters
bittrigger bit
Returns
trigger bit

Definition at line 89 of file JTriggerInterface.hh.

90  {
91  if (checkTriggerBit<N>())
92  return N;
93  else
94  return find_trigger_bit(JBit<N+1>());
95  }
JTriggerbit_t find_trigger_bit(JBit< N > bit) const
Recursive method to find the trigger bit of the given trigger data.
Auxiliary data structure for single bit.
Definition: JDAQ.hh:36
then usage $script< input file >[option[primary[working directory]]] nWhere option can be N
Definition: JMuonPostfit.sh:40
JTriggerbit_t JTRIGGER::JTriggerInterface::find_trigger_bit ( JBit< NUMBER_OF_TRIGGER_BITS >  bit) const
inlineprotected

Termination method of recursive method to find the trigger bit of the given trigger data.

This method throws an error.

Parameters
bittrigger bit
Returns
trigger bit

Definition at line 105 of file JTriggerInterface.hh.

106  {
107  throw JTriggerException("Method find_trigger_bit<>(): no corresponding trigger bit found.");
108  }
template<JTriggerbit_t N>
static const char* JTRIGGER::JTriggerInterface::getTriggerName ( )
inlinestaticprotected

Get trigger name.

This method will be specialised using the marco setTriggerBit() so that it will return name of trigger for bit N.

This method will be repeatedly called by method get_trigger_name() which in turn is called by the method JTriggerInterface::getTriggerName() so that it returns the correct trigger name.

Returns
NULL

Definition at line 124 of file JTriggerInterface.hh.

125  {
126  return NULL;
127  }
template<JTriggerbit_t N>
static const char* JTRIGGER::JTriggerInterface::get_trigger_name ( JBit< N bit,
JTriggerbit_t  value 
)
inlinestaticprotected

Recursive method to get trigger name for given trigger bit.

Parameters
bittrigger bit
valuetrigger bit
Returns
trigger name

Definition at line 138 of file JTriggerInterface.hh.

139  {
140  if (bit.value == value)
141  return getTriggerName<N>();
142  else
143  return get_trigger_name(JBit<N+1>(), value);
144  }
Auxiliary data structure for single bit.
Definition: JDAQ.hh:36
static const char * get_trigger_name(JBit< N > bit, JTriggerbit_t value)
Recursive method to get trigger name for given trigger bit.
static const char* JTRIGGER::JTriggerInterface::get_trigger_name ( JBit< NUMBER_OF_TRIGGER_BITS >  bit,
JTriggerbit_t  value 
)
inlinestaticprotected

Termination method of recursive method to get trigger name.

Parameters
bittrigger bit
valuetrigger bit
Returns
NULL

Definition at line 154 of file JTriggerInterface.hh.

155  {
156  return NULL;
157  }
JTriggerbit_t JTRIGGER::JTriggerInterface::getTriggerBit ( ) const
inline

Get the trigger bit.

Returns
trigger bit

Definition at line 170 of file JTriggerInterface.hh.

171  {
172  return find_trigger_bit(JBit<0>());
173  }
JTriggerbit_t find_trigger_bit(JBit< N > bit) const
Recursive method to find the trigger bit of the given trigger data.
Auxiliary data structure for single bit.
Definition: JDAQ.hh:36
static const char* JTRIGGER::JTriggerInterface::getTriggerName ( JTriggerbit_t  bit)
inlinestatic

Get trigger name.

param bit trigger bit

Returns
trigger name

Definition at line 182 of file JTriggerInterface.hh.

183  {
184  return get_trigger_name(JBit<0>(), bit);
185  }
Auxiliary data structure for single bit.
Definition: JDAQ.hh:36
static const char * get_trigger_name(JBit< N > bit, JTriggerbit_t value)
Recursive method to get trigger name for given trigger bit.

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