BOSS 8.0.0
BESIII Offline Software System
Loading...
Searching...
No Matches
EmcRawDataProvider Class Reference

#include <EmcRawDataProvider.h>

Inheritance diagram for EmcRawDataProvider:

Public Types

enum  EmcDataMode {
  DropLow = BIT( 0 ) , DropFull = BIT( 1 ) , DropHot = BIT( 2 ) , DropDead = BIT( 3 ) ,
  CutTime = BIT( 4 ) , DoCalib = BIT( 5 ) , DoOther = BIT( 6 ) , Redo = BIT( 7 ) ,
  DropLow = BIT( 0 ) , DropFull = BIT( 1 ) , DropHot = BIT( 2 ) , DropDead = BIT( 3 ) ,
  CutTime = BIT( 4 ) , DoCalib = BIT( 5 ) , DoOther = BIT( 6 ) , Redo = BIT( 7 ) ,
  DropLow = BIT( 0 ) , DropFull = BIT( 1 ) , DropHot = BIT( 2 ) , DropDead = BIT( 3 ) ,
  CutTime = BIT( 4 ) , DoCalib = BIT( 5 ) , DoOther = BIT( 6 ) , Redo = BIT( 7 )
}
enum  EmcDataMode {
  DropLow = BIT( 0 ) , DropFull = BIT( 1 ) , DropHot = BIT( 2 ) , DropDead = BIT( 3 ) ,
  CutTime = BIT( 4 ) , DoCalib = BIT( 5 ) , DoOther = BIT( 6 ) , Redo = BIT( 7 ) ,
  DropLow = BIT( 0 ) , DropFull = BIT( 1 ) , DropHot = BIT( 2 ) , DropDead = BIT( 3 ) ,
  CutTime = BIT( 4 ) , DoCalib = BIT( 5 ) , DoOther = BIT( 6 ) , Redo = BIT( 7 ) ,
  DropLow = BIT( 0 ) , DropFull = BIT( 1 ) , DropHot = BIT( 2 ) , DropDead = BIT( 3 ) ,
  CutTime = BIT( 4 ) , DoCalib = BIT( 5 ) , DoOther = BIT( 6 ) , Redo = BIT( 7 )
}
enum  EmcDataMode {
  DropLow = BIT( 0 ) , DropFull = BIT( 1 ) , DropHot = BIT( 2 ) , DropDead = BIT( 3 ) ,
  CutTime = BIT( 4 ) , DoCalib = BIT( 5 ) , DoOther = BIT( 6 ) , Redo = BIT( 7 ) ,
  DropLow = BIT( 0 ) , DropFull = BIT( 1 ) , DropHot = BIT( 2 ) , DropDead = BIT( 3 ) ,
  CutTime = BIT( 4 ) , DoCalib = BIT( 5 ) , DoOther = BIT( 6 ) , Redo = BIT( 7 ) ,
  DropLow = BIT( 0 ) , DropFull = BIT( 1 ) , DropHot = BIT( 2 ) , DropDead = BIT( 3 ) ,
  CutTime = BIT( 4 ) , DoCalib = BIT( 5 ) , DoOther = BIT( 6 ) , Redo = BIT( 7 )
}

Public Member Functions

 EmcRawDataProvider ()
 EmcRawDataProvider (const char *name, uint32_t adclow=0, uint32_t tlow=0, uint32_t thigh=60)
 EmcRawDataProvider (const char *name, std::vector< uint32_t > &hot, std::vector< uint32_t > &dead, uint32_t elow=0, uint32_t tlow=0, uint32_t thigh=60)
virtual ~EmcRawDataProvider ()
void handle (const Incident &)
virtual StatusCode initialize (bool mode=0, ISvcLocator *svcLoc=0, IMessageSvc *pMsg=0)
EmcDigiColgetEmcDigiVec (uint32_t control)
bool isGoodEmcDigi (uint32_t control, uint32_t id, uint32_t measure, uint32_t adc, uint32_t tdc)
bool isGoodEmcDigi (uint32_t control, EmcDigi *emcDigi)
void doCalib (Identifier &id, uint32_t &measure, uint32_t &adc)
void doCalib (EmcDigi *emcDigi)
void setELowThreshold (const uint32_t low)
void setTLowThreshold (const uint32_t low)
void setTHighThreshold (const uint32_t high)
void setHotCrystals (const std::vector< uint32_t > &idVec)
void addHotCrystal (const uint32_t id)
void setDeadCrystals (const std::vector< uint32_t > &idVec)
void addDeadCrystal (const uint32_t id)
bool removeHotCrystal (const uint32_t id)
bool removeDeadCrystal (const uint32_t id)
uint32_t getAdcLowThreshold ()
uint32_t getTdcLowThreshold ()
uint32_t getTdcHighThreshold ()
std::vector< uint32_t > & getHotCrystals ()
std::vector< uint32_t > & getDeadCrystals ()
 EmcRawDataProvider ()
 EmcRawDataProvider (const char *name, uint32_t adclow=0, uint32_t tlow=0, uint32_t thigh=60)
 EmcRawDataProvider (const char *name, std::vector< uint32_t > &hot, std::vector< uint32_t > &dead, uint32_t elow=0, uint32_t tlow=0, uint32_t thigh=60)
virtual ~EmcRawDataProvider ()
void handle (const Incident &)
virtual StatusCode initialize (bool mode=0, ISvcLocator *svcLoc=0, IMessageSvc *pMsg=0)
EmcDigiColgetEmcDigiVec (uint32_t control)
bool isGoodEmcDigi (uint32_t control, uint32_t id, uint32_t measure, uint32_t adc, uint32_t tdc)
bool isGoodEmcDigi (uint32_t control, EmcDigi *emcDigi)
void doCalib (Identifier &id, uint32_t &measure, uint32_t &adc)
void doCalib (EmcDigi *emcDigi)
void setELowThreshold (const uint32_t low)
void setTLowThreshold (const uint32_t low)
void setTHighThreshold (const uint32_t high)
void setHotCrystals (const std::vector< uint32_t > &idVec)
void addHotCrystal (const uint32_t id)
void setDeadCrystals (const std::vector< uint32_t > &idVec)
void addDeadCrystal (const uint32_t id)
bool removeHotCrystal (const uint32_t id)
bool removeDeadCrystal (const uint32_t id)
uint32_t getAdcLowThreshold ()
uint32_t getTdcLowThreshold ()
uint32_t getTdcHighThreshold ()
std::vector< uint32_t > & getHotCrystals ()
std::vector< uint32_t > & getDeadCrystals ()
 EmcRawDataProvider ()
 EmcRawDataProvider (const char *name, uint32_t adclow=0, uint32_t tlow=0, uint32_t thigh=60)
 EmcRawDataProvider (const char *name, std::vector< uint32_t > &hot, std::vector< uint32_t > &dead, uint32_t elow=0, uint32_t tlow=0, uint32_t thigh=60)
virtual ~EmcRawDataProvider ()
void handle (const Incident &)
virtual StatusCode initialize (bool mode=0, ISvcLocator *svcLoc=0, IMessageSvc *pMsg=0)
EmcDigiColgetEmcDigiVec (uint32_t control)
bool isGoodEmcDigi (uint32_t control, uint32_t id, uint32_t measure, uint32_t adc, uint32_t tdc)
bool isGoodEmcDigi (uint32_t control, EmcDigi *emcDigi)
void doCalib (Identifier &id, uint32_t &measure, uint32_t &adc)
void doCalib (EmcDigi *emcDigi)
void setELowThreshold (const uint32_t low)
void setTLowThreshold (const uint32_t low)
void setTHighThreshold (const uint32_t high)
void setHotCrystals (const std::vector< uint32_t > &idVec)
void addHotCrystal (const uint32_t id)
void setDeadCrystals (const std::vector< uint32_t > &idVec)
void addDeadCrystal (const uint32_t id)
bool removeHotCrystal (const uint32_t id)
bool removeDeadCrystal (const uint32_t id)
uint32_t getAdcLowThreshold ()
uint32_t getTdcLowThreshold ()
uint32_t getTdcHighThreshold ()
std::vector< uint32_t > & getHotCrystals ()
std::vector< uint32_t > & getDeadCrystals ()
Public Member Functions inherited from RawDataProviderBase
 RawDataProviderBase (const char *name)
virtual ~RawDataProviderBase ()
StatusCode initialize (ISvcLocator *svcLoc=0, IMessageSvc *pMsg=0)
void setSvcLocator (ISvcLocator *svcLoc)
void setMsgSvc (IMessageSvc *svc)
void setMsgName (const char *name)
 RawDataProviderBase (const char *name)
virtual ~RawDataProviderBase ()
StatusCode initialize (ISvcLocator *svcLoc=0, IMessageSvc *pMsg=0)
void setSvcLocator (ISvcLocator *svcLoc)
void setMsgSvc (IMessageSvc *svc)
void setMsgName (const char *name)
 RawDataProviderBase (const char *name)
virtual ~RawDataProviderBase ()
StatusCode initialize (ISvcLocator *svcLoc=0, IMessageSvc *pMsg=0)
void setSvcLocator (ISvcLocator *svcLoc)
void setMsgSvc (IMessageSvc *svc)
void setMsgName (const char *name)

Additional Inherited Members

Protected Member Functions inherited from RawDataProviderBase
 RawDataProviderBase ()
 RawDataProviderBase ()
 RawDataProviderBase ()
Protected Attributes inherited from RawDataProviderBase
ISvcLocator * m_svcLocator
IMessageSvc * m_msgSvc
std::string m_name

Detailed Description

Member Enumeration Documentation

◆ EmcDataMode [1/3]

Enumerator
DropLow 
DropFull 
DropHot 
DropDead 
CutTime 
DoCalib 
DoOther 
Redo 
DropLow 
DropFull 
DropHot 
DropDead 
CutTime 
DoCalib 
DoOther 
Redo 
DropLow 
DropFull 
DropHot 
DropDead 
CutTime 
DoCalib 
DoOther 
Redo 

Definition at line 34 of file Event/RawDataProviderSvc/include/RawDataProviderSvc/EmcRawDataProvider.h.

◆ EmcDataMode [2/3]

Enumerator
DropLow 
DropFull 
DropHot 
DropDead 
CutTime 
DoCalib 
DoOther 
Redo 
DropLow 
DropFull 
DropHot 
DropDead 
CutTime 
DoCalib 
DoOther 
Redo 
DropLow 
DropFull 
DropHot 
DropDead 
CutTime 
DoCalib 
DoOther 
Redo 

Definition at line 34 of file InstallArea/x86_64-el9-gcc13-dbg/include/RawDataProviderSvc/EmcRawDataProvider.h.

34 {
35 DropLow = BIT( 0 ),
36 DropFull = BIT( 1 ),
37 DropHot = BIT( 2 ),
38 DropDead = BIT( 3 ),
39 CutTime = BIT( 4 ),
40 DoCalib = BIT( 5 ),
41 DoOther = BIT( 6 ),
42 Redo = BIT( 7 )
43 };

◆ EmcDataMode [3/3]

Enumerator
DropLow 
DropFull 
DropHot 
DropDead 
CutTime 
DoCalib 
DoOther 
Redo 
DropLow 
DropFull 
DropHot 
DropDead 
CutTime 
DoCalib 
DoOther 
Redo 
DropLow 
DropFull 
DropHot 
DropDead 
CutTime 
DoCalib 
DoOther 
Redo 

Definition at line 34 of file InstallArea/x86_64-el9-gcc13-opt/include/RawDataProviderSvc/EmcRawDataProvider.h.

34 {
35 DropLow = BIT( 0 ),
36 DropFull = BIT( 1 ),
37 DropHot = BIT( 2 ),
38 DropDead = BIT( 3 ),
39 CutTime = BIT( 4 ),
40 DoCalib = BIT( 5 ),
41 DoOther = BIT( 6 ),
42 Redo = BIT( 7 )
43 };

Constructor & Destructor Documentation

◆ EmcRawDataProvider() [1/9]

EmcRawDataProvider::EmcRawDataProvider ( )

Definition at line 18 of file EmcRawDataProvider.cxx.

20 , m_adcLowThreshold( 0 )
21 , m_tLowThreshold( 0 )
22 , m_tHighThreshold( 60 )
23 , m_hotCrystals( 0 )
24 , m_deadCrystals( 0 )
25 , m_emcDigiVec() {
26 m_emcCalibConstSvc = 0;
27}

◆ EmcRawDataProvider() [2/9]

EmcRawDataProvider::EmcRawDataProvider ( const char * name,
uint32_t adclow = 0,
uint32_t tlow = 0,
uint32_t thigh = 60 )

Definition at line 29 of file EmcRawDataProvider.cxx.

31 : RawDataProviderBase( name )
32 , m_adcLowThreshold( elow )
33 , m_tLowThreshold( tlow )
34 , m_tHighThreshold( thigh )
35 , m_hotCrystals( 0 )
36 , m_deadCrystals( 0 )
37 , m_emcDigiVec() {
38 m_emcCalibConstSvc = 0;
39}

◆ EmcRawDataProvider() [3/9]

EmcRawDataProvider::EmcRawDataProvider ( const char * name,
std::vector< uint32_t > & hot,
std::vector< uint32_t > & dead,
uint32_t elow = 0,
uint32_t tlow = 0,
uint32_t thigh = 60 )

Definition at line 41 of file EmcRawDataProvider.cxx.

44 : RawDataProviderBase( name )
45 , m_adcLowThreshold( elow )
46 , m_tLowThreshold( tlow )
47 , m_tHighThreshold( thigh )
48 , m_hotCrystals( hot )
49 , m_deadCrystals( dead )
50 , m_emcDigiVec() {
51 m_emcCalibConstSvc = 0;
52}

◆ ~EmcRawDataProvider() [1/3]

virtual EmcRawDataProvider::~EmcRawDataProvider ( )
inlinevirtual

Definition at line 27 of file Event/RawDataProviderSvc/include/RawDataProviderSvc/EmcRawDataProvider.h.

27{ m_emcDigiVec.clear(); }

◆ EmcRawDataProvider() [4/9]

EmcRawDataProvider::EmcRawDataProvider ( )

◆ EmcRawDataProvider() [5/9]

EmcRawDataProvider::EmcRawDataProvider ( const char * name,
uint32_t adclow = 0,
uint32_t tlow = 0,
uint32_t thigh = 60 )

◆ EmcRawDataProvider() [6/9]

EmcRawDataProvider::EmcRawDataProvider ( const char * name,
std::vector< uint32_t > & hot,
std::vector< uint32_t > & dead,
uint32_t elow = 0,
uint32_t tlow = 0,
uint32_t thigh = 60 )

◆ ~EmcRawDataProvider() [2/3]

virtual EmcRawDataProvider::~EmcRawDataProvider ( )
inlinevirtual

Definition at line 27 of file InstallArea/x86_64-el9-gcc13-dbg/include/RawDataProviderSvc/EmcRawDataProvider.h.

27{ m_emcDigiVec.clear(); }

◆ EmcRawDataProvider() [7/9]

EmcRawDataProvider::EmcRawDataProvider ( )

◆ EmcRawDataProvider() [8/9]

EmcRawDataProvider::EmcRawDataProvider ( const char * name,
uint32_t adclow = 0,
uint32_t tlow = 0,
uint32_t thigh = 60 )

◆ EmcRawDataProvider() [9/9]

EmcRawDataProvider::EmcRawDataProvider ( const char * name,
std::vector< uint32_t > & hot,
std::vector< uint32_t > & dead,
uint32_t elow = 0,
uint32_t tlow = 0,
uint32_t thigh = 60 )

◆ ~EmcRawDataProvider() [3/3]

virtual EmcRawDataProvider::~EmcRawDataProvider ( )
inlinevirtual

Definition at line 27 of file InstallArea/x86_64-el9-gcc13-opt/include/RawDataProviderSvc/EmcRawDataProvider.h.

27{ m_emcDigiVec.clear(); }

Member Function Documentation

◆ addDeadCrystal() [1/3]

void EmcRawDataProvider::addDeadCrystal ( const uint32_t id)

Definition at line 254 of file EmcRawDataProvider.cxx.

254 {
255 std::vector<uint32_t>::iterator it = m_hotCrystals.begin();
256 for ( ; it != m_deadCrystals.end(); it++ )
257 {
258 if ( ( *it ) == teid ) break;
259 }
260 if ( it == m_deadCrystals.end() ) m_deadCrystals.push_back( teid );
261
262 return;
263}

◆ addDeadCrystal() [2/3]

void EmcRawDataProvider::addDeadCrystal ( const uint32_t id)

◆ addDeadCrystal() [3/3]

void EmcRawDataProvider::addDeadCrystal ( const uint32_t id)

◆ addHotCrystal() [1/3]

void EmcRawDataProvider::addHotCrystal ( const uint32_t id)

Definition at line 243 of file EmcRawDataProvider.cxx.

243 {
244 std::vector<uint32_t>::iterator it = m_hotCrystals.begin();
245 for ( ; it != m_hotCrystals.end(); it++ )
246 {
247 if ( ( *it ) == teid ) break;
248 }
249 if ( it == m_hotCrystals.end() ) m_hotCrystals.push_back( teid );
250
251 return;
252}

◆ addHotCrystal() [2/3]

void EmcRawDataProvider::addHotCrystal ( const uint32_t id)

◆ addHotCrystal() [3/3]

void EmcRawDataProvider::addHotCrystal ( const uint32_t id)

◆ doCalib() [1/6]

void EmcRawDataProvider::doCalib ( EmcDigi * emcDigi)

Definition at line 152 of file EmcRawDataProvider.cxx.

152 {
153 Identifier id = emcDigi->identify();
154 uint32_t adc = emcDigi->getChargeChannel();
155 uint32_t measure = emcDigi->getMeasure();
156 doCalib( id, measure, adc );
157 emcDigi->setChargeChannel( adc );
158 emcDigi->setMeasure( measure );
159}
void setMeasure(const unsigned int measure)
void doCalib(Identifier &id, uint32_t &measure, uint32_t &adc)
virtual Identifier identify() const
Definition RawData.cxx:15
void setChargeChannel(const unsigned int chargeChannel)
Definition RawData.cxx:24
unsigned int getChargeChannel() const
Definition RawData.cxx:35

◆ doCalib() [2/6]

void EmcRawDataProvider::doCalib ( EmcDigi * emcDigi)

◆ doCalib() [3/6]

void EmcRawDataProvider::doCalib ( EmcDigi * emcDigi)

◆ doCalib() [4/6]

void EmcRawDataProvider::doCalib ( Identifier & id,
uint32_t & measure,
uint32_t & adc )

Definition at line 139 of file EmcRawDataProvider.cxx.

139 {
140
141 uint32_t part = EmcID::barrel_ec( id );
142 uint32_t itheta = EmcID::theta_module( id );
143 uint32_t iphi = EmcID::phi_module( id );
144 int index = m_emcCalibConstSvc->getIndex( part, itheta, iphi );
145 double adc2e = m_emcCalibConstSvc->getDigiCalibConst( index );
146 double e = RawDataUtil::EmcCharge( measure, adc ) * adc2e;
147
148 measure = RawDataUtil::EmcChargeMeasure( e );
150}
static unsigned int barrel_ec(const Identifier &id)
Values of different levels (failure returns 0).
Definition EmcID.cxx:36
static unsigned int theta_module(const Identifier &id)
Definition EmcID.cxx:41
static unsigned int phi_module(const Identifier &id)
Definition EmcID.cxx:46
static int EmcChargeChannel(double charge)
static int EmcChargeMeasure(double charge)
static double EmcCharge(int measure, int chargeChannel)

Referenced by doCalib(), and getEmcDigiVec().

◆ doCalib() [5/6]

void EmcRawDataProvider::doCalib ( Identifier & id,
uint32_t & measure,
uint32_t & adc )

◆ doCalib() [6/6]

void EmcRawDataProvider::doCalib ( Identifier & id,
uint32_t & measure,
uint32_t & adc )

◆ getAdcLowThreshold() [1/3]

uint32_t EmcRawDataProvider::getAdcLowThreshold ( )
inline

Definition at line 67 of file Event/RawDataProviderSvc/include/RawDataProviderSvc/EmcRawDataProvider.h.

67{ return m_adcLowThreshold; };

◆ getAdcLowThreshold() [2/3]

uint32_t EmcRawDataProvider::getAdcLowThreshold ( )
inline

Definition at line 67 of file InstallArea/x86_64-el9-gcc13-dbg/include/RawDataProviderSvc/EmcRawDataProvider.h.

67{ return m_adcLowThreshold; };

◆ getAdcLowThreshold() [3/3]

uint32_t EmcRawDataProvider::getAdcLowThreshold ( )
inline

Definition at line 67 of file InstallArea/x86_64-el9-gcc13-opt/include/RawDataProviderSvc/EmcRawDataProvider.h.

67{ return m_adcLowThreshold; };

◆ getDeadCrystals() [1/3]

std::vector< uint32_t > & EmcRawDataProvider::getDeadCrystals ( )
inline

Definition at line 71 of file Event/RawDataProviderSvc/include/RawDataProviderSvc/EmcRawDataProvider.h.

71{ return m_deadCrystals; };

◆ getDeadCrystals() [2/3]

std::vector< uint32_t > & EmcRawDataProvider::getDeadCrystals ( )
inline

Definition at line 71 of file InstallArea/x86_64-el9-gcc13-dbg/include/RawDataProviderSvc/EmcRawDataProvider.h.

71{ return m_deadCrystals; };

◆ getDeadCrystals() [3/3]

std::vector< uint32_t > & EmcRawDataProvider::getDeadCrystals ( )
inline

Definition at line 71 of file InstallArea/x86_64-el9-gcc13-opt/include/RawDataProviderSvc/EmcRawDataProvider.h.

71{ return m_deadCrystals; };

◆ getEmcDigiVec() [1/3]

EmcDigiCol & EmcRawDataProvider::getEmcDigiVec ( uint32_t control)

Definition at line 161 of file EmcRawDataProvider.cxx.

161 {
162 MsgStream log( m_msgSvc, m_name );
163 log << MSG::INFO << "EmcRawDataProvider::getEmcDigiVec..." << endmsg;
164 log << MSG::DEBUG << "vector size=" << m_emcDigiVec.size() << endmsg;
165
166 if ( m_emcDigiVec.size() > 0 )
167 {
168 if ( control & Redo ) m_emcDigiVec.clear();
169 else return m_emcDigiVec;
170 }
171 // Retrieve Hits Collection
172 // tianhl for mt
173 /*std::string evtDataSvc_name("EventDataSvc");
174 if(isGaudiThreaded(m_name)){
175 evtDataSvc_name += getGaudiThreadIDfromName(m_name);
176 }
177 // tianhl for mt
178
179StatusCode sc = m_svcLocator->service(evtDataSvc_name.c_str(),evtSvc,true);
180if (!sc.isSuccess()){
181 log << MSG::FATAL << "EmcRawDataProvider: ERROR Could not load EventDataSvc"
182<< endmsg;
183}
184*/
185 IDataProviderSvc* evtSvc=0;
186 SmartDataPtr<EmcDigiCol> emcDigiCol( evtSvc, "/Event/Digi/EmcDigiCol" );
187 if ( !emcDigiCol )
188 {
189 log << MSG::FATAL << "Could not find Emc digi!!" << endmsg;
190 return m_emcDigiVec;
191 }
192 log << MSG::DEBUG << "start dealing with EmcRawCol " << emcDigiCol->size() << endmsg;
193 EmcDigiCol::iterator iterEMC = emcDigiCol->begin();
194 for ( ; iterEMC != emcDigiCol->end(); iterEMC++ )
195 {
196 log << MSG::NIL << "vector size=" << m_emcDigiVec.size() << endmsg;
197 if ( isGoodEmcDigi( control, *iterEMC ) )
198 m_emcDigiVec.insert( m_emcDigiVec.end(), *iterEMC );
199 if ( control & DoCalib )
200 {
201 if ( m_emcCalibConstSvc != 0 ) doCalib( *iterEMC );
202 else
203 {
204 log << MSG::WARNING << "require EMC calibration, but none service, ignore." << endmsg;
205 }
206 }
207 if ( control & DoOther ) {}
208 }
209 log << MSG::VERBOSE << "ready for return" << endmsg;
210 return m_emcDigiVec;
211}
bool isGoodEmcDigi(uint32_t control, uint32_t id, uint32_t measure, uint32_t adc, uint32_t tdc)

◆ getEmcDigiVec() [2/3]

EmcDigiCol & EmcRawDataProvider::getEmcDigiVec ( uint32_t control)

◆ getEmcDigiVec() [3/3]

EmcDigiCol & EmcRawDataProvider::getEmcDigiVec ( uint32_t control)

◆ getHotCrystals() [1/3]

std::vector< uint32_t > & EmcRawDataProvider::getHotCrystals ( )
inline

Definition at line 70 of file Event/RawDataProviderSvc/include/RawDataProviderSvc/EmcRawDataProvider.h.

70{ return m_hotCrystals; };

◆ getHotCrystals() [2/3]

std::vector< uint32_t > & EmcRawDataProvider::getHotCrystals ( )
inline

Definition at line 70 of file InstallArea/x86_64-el9-gcc13-dbg/include/RawDataProviderSvc/EmcRawDataProvider.h.

70{ return m_hotCrystals; };

◆ getHotCrystals() [3/3]

std::vector< uint32_t > & EmcRawDataProvider::getHotCrystals ( )
inline

Definition at line 70 of file InstallArea/x86_64-el9-gcc13-opt/include/RawDataProviderSvc/EmcRawDataProvider.h.

70{ return m_hotCrystals; };

◆ getTdcHighThreshold() [1/3]

uint32_t EmcRawDataProvider::getTdcHighThreshold ( )
inline

Definition at line 69 of file Event/RawDataProviderSvc/include/RawDataProviderSvc/EmcRawDataProvider.h.

69{ return m_tHighThreshold; };

◆ getTdcHighThreshold() [2/3]

uint32_t EmcRawDataProvider::getTdcHighThreshold ( )
inline

Definition at line 69 of file InstallArea/x86_64-el9-gcc13-dbg/include/RawDataProviderSvc/EmcRawDataProvider.h.

69{ return m_tHighThreshold; };

◆ getTdcHighThreshold() [3/3]

uint32_t EmcRawDataProvider::getTdcHighThreshold ( )
inline

Definition at line 69 of file InstallArea/x86_64-el9-gcc13-opt/include/RawDataProviderSvc/EmcRawDataProvider.h.

69{ return m_tHighThreshold; };

◆ getTdcLowThreshold() [1/3]

uint32_t EmcRawDataProvider::getTdcLowThreshold ( )
inline

Definition at line 68 of file Event/RawDataProviderSvc/include/RawDataProviderSvc/EmcRawDataProvider.h.

68{ return m_tLowThreshold; };

◆ getTdcLowThreshold() [2/3]

uint32_t EmcRawDataProvider::getTdcLowThreshold ( )
inline

Definition at line 68 of file InstallArea/x86_64-el9-gcc13-dbg/include/RawDataProviderSvc/EmcRawDataProvider.h.

68{ return m_tLowThreshold; };

◆ getTdcLowThreshold() [3/3]

uint32_t EmcRawDataProvider::getTdcLowThreshold ( )
inline

Definition at line 68 of file InstallArea/x86_64-el9-gcc13-opt/include/RawDataProviderSvc/EmcRawDataProvider.h.

68{ return m_tLowThreshold; };

◆ handle() [1/3]

void EmcRawDataProvider::handle ( const Incident & inc)

Definition at line 54 of file EmcRawDataProvider.cxx.

54 {
55 MsgStream log( m_msgSvc, m_name );
56 log << MSG::DEBUG << "inc.type=" << inc.type() << endmsg;
57 if ( inc.type() == "BeginEvent" )
58 {
59 // EmcDigiCol empty;
60 // m_emcDigiVec=empty;
61 m_emcDigiVec.clear();
62 }
63 return;
64}

◆ handle() [2/3]

void EmcRawDataProvider::handle ( const Incident & )

◆ handle() [3/3]

void EmcRawDataProvider::handle ( const Incident & )

◆ initialize() [1/3]

StatusCode EmcRawDataProvider::initialize ( bool mode = 0,
ISvcLocator * svcLoc = 0,
IMessageSvc * pMsg = 0 )
virtual

Definition at line 66 of file EmcRawDataProvider.cxx.

67 {
68
69 RawDataProviderBase::initialize( pSvcLoc, pMsg );
70 // test cut value
71 MsgStream log( m_msgSvc, m_name );
72 if ( log.level() <= MSG::INFO )
73 {
74 std::cout << "EmcRawDataProvider:: "
75 << "elow=" << m_adcLowThreshold << ", tlow=" << m_tLowThreshold
76 << ", thigh=" << m_tHighThreshold << std::endl;
77 std::vector<uint32_t>::iterator it = m_hotCrystals.begin();
78 std::cout << " hot crystals ";
79 for ( ; it != m_hotCrystals.end(); it++ ) { std::cout << *it << " "; }
80 std::cout << std::endl << " dead crystals ";
81 for ( it = m_deadCrystals.begin(); it != m_deadCrystals.end(); it++ )
82 { std::cout << *it << " "; }
83 std::cout << std::endl;
84 }
85
86 // get point of EMC calibration service
87 StatusCode sc = m_svcLocator->service( "EmcCalibConstSvc", m_emcCalibConstSvc );
88 if ( sc != StatusCode::SUCCESS )
89 {
90 log << MSG::ERROR << "Can't get EmcCalibConstSvc." << endmsg;
91 m_emcCalibConstSvc = 0;
92 }
93 else if ( mode ) m_emcCalibConstSvc->getDigiCalibConst( 0 );
94
95 return StatusCode::SUCCESS;
96}
StatusCode initialize(ISvcLocator *svcLoc=0, IMessageSvc *pMsg=0)

◆ initialize() [2/3]

virtual StatusCode EmcRawDataProvider::initialize ( bool mode = 0,
ISvcLocator * svcLoc = 0,
IMessageSvc * pMsg = 0 )
virtual

◆ initialize() [3/3]

virtual StatusCode EmcRawDataProvider::initialize ( bool mode = 0,
ISvcLocator * svcLoc = 0,
IMessageSvc * pMsg = 0 )
virtual

◆ isGoodEmcDigi() [1/6]

bool EmcRawDataProvider::isGoodEmcDigi ( uint32_t control,
EmcDigi * emcDigi )

Definition at line 131 of file EmcRawDataProvider.cxx.

131 {
132 uint32_t adc = emcDigi->getChargeChannel();
133 uint32_t measure = emcDigi->getMeasure();
134 uint32_t tdc = emcDigi->getTimeChannel();
135 Identifier id = emcDigi->identify();
136 return isGoodEmcDigi( control, id.get_value(), measure, adc, tdc );
137}
unsigned int getTimeChannel() const
Definition RawData.cxx:32

◆ isGoodEmcDigi() [2/6]

bool EmcRawDataProvider::isGoodEmcDigi ( uint32_t control,
EmcDigi * emcDigi )

◆ isGoodEmcDigi() [3/6]

bool EmcRawDataProvider::isGoodEmcDigi ( uint32_t control,
EmcDigi * emcDigi )

◆ isGoodEmcDigi() [4/6]

bool EmcRawDataProvider::isGoodEmcDigi ( uint32_t control,
uint32_t id,
uint32_t measure,
uint32_t adc,
uint32_t tdc )

Definition at line 98 of file EmcRawDataProvider.cxx.

99 {
100 if ( control & DropLow )
101 {
102 if ( measure == 0 && adc < m_adcLowThreshold ) return false;
103 }
104 if ( control & DropFull )
105 {
106 if ( measure == 3 ) return false;
107 }
108 if ( control & CutTime )
109 {
110 if ( tdc < m_tLowThreshold || tdc > m_tHighThreshold ) return false;
111 }
112 if ( control & DropHot )
113 {
114 std::vector<uint32_t>::iterator it = m_hotCrystals.begin();
115 for ( ; it != m_hotCrystals.end(); it++ )
116 {
117 if ( ( *it ) == id ) return false;
118 }
119 }
120 if ( control & DropDead )
121 {
122 std::vector<uint32_t>::iterator it = m_deadCrystals.begin();
123 for ( ; it != m_deadCrystals.end(); it++ )
124 {
125 if ( ( *it ) == id ) return false;
126 }
127 }
128 return true;
129}

Referenced by getEmcDigiVec(), and isGoodEmcDigi().

◆ isGoodEmcDigi() [5/6]

bool EmcRawDataProvider::isGoodEmcDigi ( uint32_t control,
uint32_t id,
uint32_t measure,
uint32_t adc,
uint32_t tdc )

◆ isGoodEmcDigi() [6/6]

bool EmcRawDataProvider::isGoodEmcDigi ( uint32_t control,
uint32_t id,
uint32_t measure,
uint32_t adc,
uint32_t tdc )

◆ removeDeadCrystal() [1/3]

bool EmcRawDataProvider::removeDeadCrystal ( const uint32_t id)

Definition at line 228 of file EmcRawDataProvider.cxx.

228 {
229 std::vector<uint32_t>::iterator it = m_hotCrystals.begin();
230 for ( ; it != m_deadCrystals.end(); it++ )
231 {
232 if ( ( *it ) == teid )
233 {
234 m_deadCrystals.erase( it );
235 break;
236 }
237 }
238 if ( it == m_deadCrystals.end() ) return false;
239
240 return true;
241}

◆ removeDeadCrystal() [2/3]

bool EmcRawDataProvider::removeDeadCrystal ( const uint32_t id)

◆ removeDeadCrystal() [3/3]

bool EmcRawDataProvider::removeDeadCrystal ( const uint32_t id)

◆ removeHotCrystal() [1/3]

bool EmcRawDataProvider::removeHotCrystal ( const uint32_t id)

Definition at line 213 of file EmcRawDataProvider.cxx.

213 {
214 std::vector<uint32_t>::iterator it = m_hotCrystals.begin();
215 for ( ; it != m_hotCrystals.end(); it++ )
216 {
217 if ( ( *it ) == teid )
218 {
219 m_hotCrystals.erase( it );
220 break;
221 }
222 }
223 if ( it == m_hotCrystals.end() ) return false;
224
225 return true;
226}

◆ removeHotCrystal() [2/3]

bool EmcRawDataProvider::removeHotCrystal ( const uint32_t id)

◆ removeHotCrystal() [3/3]

bool EmcRawDataProvider::removeHotCrystal ( const uint32_t id)

◆ setDeadCrystals() [1/3]

void EmcRawDataProvider::setDeadCrystals ( const std::vector< uint32_t > & idVec)
inline

Definition at line 61 of file Event/RawDataProviderSvc/include/RawDataProviderSvc/EmcRawDataProvider.h.

61{ m_deadCrystals = idVec; };

◆ setDeadCrystals() [2/3]

void EmcRawDataProvider::setDeadCrystals ( const std::vector< uint32_t > & idVec)
inline

Definition at line 61 of file InstallArea/x86_64-el9-gcc13-dbg/include/RawDataProviderSvc/EmcRawDataProvider.h.

61{ m_deadCrystals = idVec; };

◆ setDeadCrystals() [3/3]

void EmcRawDataProvider::setDeadCrystals ( const std::vector< uint32_t > & idVec)
inline

Definition at line 61 of file InstallArea/x86_64-el9-gcc13-opt/include/RawDataProviderSvc/EmcRawDataProvider.h.

61{ m_deadCrystals = idVec; };

◆ setELowThreshold() [1/3]

void EmcRawDataProvider::setELowThreshold ( const uint32_t low)
inline

Definition at line 56 of file Event/RawDataProviderSvc/include/RawDataProviderSvc/EmcRawDataProvider.h.

56{ m_adcLowThreshold = low; };

◆ setELowThreshold() [2/3]

void EmcRawDataProvider::setELowThreshold ( const uint32_t low)
inline

Definition at line 56 of file InstallArea/x86_64-el9-gcc13-dbg/include/RawDataProviderSvc/EmcRawDataProvider.h.

56{ m_adcLowThreshold = low; };

◆ setELowThreshold() [3/3]

void EmcRawDataProvider::setELowThreshold ( const uint32_t low)
inline

Definition at line 56 of file InstallArea/x86_64-el9-gcc13-opt/include/RawDataProviderSvc/EmcRawDataProvider.h.

56{ m_adcLowThreshold = low; };

◆ setHotCrystals() [1/3]

void EmcRawDataProvider::setHotCrystals ( const std::vector< uint32_t > & idVec)
inline

Definition at line 59 of file Event/RawDataProviderSvc/include/RawDataProviderSvc/EmcRawDataProvider.h.

59{ m_hotCrystals = idVec; };

◆ setHotCrystals() [2/3]

void EmcRawDataProvider::setHotCrystals ( const std::vector< uint32_t > & idVec)
inline

Definition at line 59 of file InstallArea/x86_64-el9-gcc13-dbg/include/RawDataProviderSvc/EmcRawDataProvider.h.

59{ m_hotCrystals = idVec; };

◆ setHotCrystals() [3/3]

void EmcRawDataProvider::setHotCrystals ( const std::vector< uint32_t > & idVec)
inline

Definition at line 59 of file InstallArea/x86_64-el9-gcc13-opt/include/RawDataProviderSvc/EmcRawDataProvider.h.

59{ m_hotCrystals = idVec; };

◆ setTHighThreshold() [1/3]

void EmcRawDataProvider::setTHighThreshold ( const uint32_t high)
inline

Definition at line 58 of file Event/RawDataProviderSvc/include/RawDataProviderSvc/EmcRawDataProvider.h.

58{ m_tHighThreshold = high; };

◆ setTHighThreshold() [2/3]

void EmcRawDataProvider::setTHighThreshold ( const uint32_t high)
inline

Definition at line 58 of file InstallArea/x86_64-el9-gcc13-dbg/include/RawDataProviderSvc/EmcRawDataProvider.h.

58{ m_tHighThreshold = high; };

◆ setTHighThreshold() [3/3]

void EmcRawDataProvider::setTHighThreshold ( const uint32_t high)
inline

Definition at line 58 of file InstallArea/x86_64-el9-gcc13-opt/include/RawDataProviderSvc/EmcRawDataProvider.h.

58{ m_tHighThreshold = high; };

◆ setTLowThreshold() [1/3]

void EmcRawDataProvider::setTLowThreshold ( const uint32_t low)
inline

Definition at line 57 of file Event/RawDataProviderSvc/include/RawDataProviderSvc/EmcRawDataProvider.h.

57{ m_tLowThreshold = low; };

◆ setTLowThreshold() [2/3]

void EmcRawDataProvider::setTLowThreshold ( const uint32_t low)
inline

Definition at line 57 of file InstallArea/x86_64-el9-gcc13-dbg/include/RawDataProviderSvc/EmcRawDataProvider.h.

57{ m_tLowThreshold = low; };

◆ setTLowThreshold() [3/3]

void EmcRawDataProvider::setTLowThreshold ( const uint32_t low)
inline

Definition at line 57 of file InstallArea/x86_64-el9-gcc13-opt/include/RawDataProviderSvc/EmcRawDataProvider.h.

57{ m_tLowThreshold = low; };

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