Belle II Software  release-08-01-10
ECLTrig.h
1 /**************************************************************************
2  * basf2 (Belle II Analysis Software Framework) *
3  * Author: The Belle II Collaboration *
4  * *
5  * See git log for contributors and copyright holders. *
6  * This file is licensed under LGPL-3.0, see LICENSE.md. *
7  **************************************************************************/
8 
9 #pragma once
10 
11 #include <framework/datastore/RelationsObject.h>
12 
13 namespace Belle2 {
25  class ECLTrig : public RelationsObject {
26  public:
29  {
30  m_TrigId = 0;
31  m_TimeTrig = 0;
32  m_TrigTag = 0;
33  }
34 
35 
38  void setTrigId(int TrigId) { m_TrigId = TrigId; }
41  void setTrigTag(int TrigTag) { m_TrigTag = TrigTag; }
44  void setTimeTrig(double TimeTrig) { m_TimeTrig = TimeTrig; }
48  int getTrigId() const { return m_TrigId & 0x3F; }
49 
93  int getBurstSuppressionMask() const { return (m_TrigId >> 6) & 0xFFF; }
94 
101  int getTrigTag() const { return m_TrigTag & 0xFFFF; }
102 
106  int getTrigTagQualityFlag() const { return (m_TrigTag & 0x10000) >> 16; }
107 
111  double getTimeTrig() const { return m_TimeTrig; }
112 
117  static ECLTrig* getByCellID(int cid);
118 
119  private:
120  int m_TrigId;
121  double m_TimeTrig;
122  int m_TrigTag;
128 
129  };
131 } // end namespace Belle2
132 
Class to store ECLTrig, still need to be study relation to ECLHit filled in ecl/modules/eclDigitizer/...
Definition: ECLTrig.h:25
ClassDef(ECLTrig, 3)
2 CellId -> TrigIdvariable lengthx
int getTrigId() const
Get Trig ID.
Definition: ECLTrig.h:48
int m_TrigTag
Trig tag.
Definition: ECLTrig.h:122
double getTimeTrig() const
Get Trig Time.
Definition: ECLTrig.h:111
int getBurstSuppressionMask() const
Burst suppression is an algorithm implemented in ECL ShaperDSP modules to prevent buffer overflow in ...
Definition: ECLTrig.h:93
int getTrigTagQualityFlag() const
Get trigger tag quality flag.
Definition: ECLTrig.h:106
void setTrigTag(int TrigTag)
Set Trig Time (crate Id)
Definition: ECLTrig.h:41
static ECLTrig * getByCellID(int cid)
Find ECLTrig by Cell ID using linear search.
Definition: ECLTrig.cc:15
int getTrigTag() const
Get Trigger tag Trigger tag word width is 16 bit (bits 0-15).
Definition: ECLTrig.h:101
void setTrigId(int TrigId)
Set TrigID.
Definition: ECLTrig.h:38
int m_TrigId
Trig ID.
Definition: ECLTrig.h:120
ECLTrig()
default constructor for ROOT
Definition: ECLTrig.h:28
double m_TimeTrig
Trig Time.
Definition: ECLTrig.h:121
void setTimeTrig(double TimeTrig)
Set Triger Tag (crate Id)
Definition: ECLTrig.h:44
Defines interface for accessing relations of objects in StoreArray.
Abstract base class for different kinds of events.