Belle II Software development
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
13namespace Belle2 {
18
24
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
95 int getBurstSuppressionMask() const { return (m_TrigId >> 6) & 0xFFF; }
96
103 int getTrigTag() const { return m_TrigTag & 0xFFFF; }
104
108 int getTrigTagQualityFlag() const { return (m_TrigTag & 0x10000) >> 16; }
109
113 double getTimeTrig() const { return m_TimeTrig; }
114
119 static ECLTrig* getByCellID(int cid);
120
121 private:
122 double m_TimeTrig;
125
126
131
132 };
133
134} // end namespace Belle2
135
Class to store ECLTrig, still need to be study relation to ECLHit filled in ecl/modules/eclDigitizer/...
Definition ECLTrig.h:25
int getTrigId() const
Get Trig ID.
Definition ECLTrig.h:48
int m_TrigTag
Trig tag.
Definition ECLTrig.h:124
double getTimeTrig() const
Get Trig Time.
Definition ECLTrig.h:113
int getBurstSuppressionMask() const
Burst suppression is an algorithm implemented in ECL ShaperDSP modules to prevent buffer overflow in ...
Definition ECLTrig.h:95
int getTrigTagQualityFlag() const
Get trigger tag quality flag.
Definition ECLTrig.h:108
void setTrigTag(int TrigTag)
Set Trig Time (crate Id)
Definition ECLTrig.h:41
ClassDef(ECLTrig, 4)
2 CellId -> TrigIdvariable lengthx
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:103
void setTrigId(int TrigId)
Set TrigID.
Definition ECLTrig.h:38
int m_TrigId
Trig ID.
Definition ECLTrig.h:123
ECLTrig()
default constructor for ROOT
Definition ECLTrig.h:28
double m_TimeTrig
Trig Time.
Definition ECLTrig.h:122
void setTimeTrig(double TimeTrig)
Set Trigger Tag (crate Id)
Definition ECLTrig.h:44
RelationsInterface< TObject > RelationsObject
Provides interface for getting/adding relations to objects in StoreArrays.
Abstract base class for different kinds of events.