Gaudi converter base class with const interfaces.
More...
#include <AthConstConverter.h>
Inherits Converter, and AthMessaging.
Inherited by BCM_RawContByteStreamCnv, CscRdoContByteStreamCnv, ITkStripsRawContByteStreamCnv, L1TopoByteStreamCnv, LArAccumulatedCalibDigitContByteStreamCnv, LArAccumulatedDigitContByteStreamCnv, LArCalibDigitContByteStreamCnv, LArDigitContByteStreamCnv, LArFebHeaderContByteStreamCnv, LArLATOMEHeaderContByteStreamCnv, LArRawChannelContByteStreamCnv, LVL1BS::CpByteStreamCnv, LVL1BS::CpByteStreamV1Cnv, LVL1BS::CpByteStreamV2Cnv, LVL1BS::CpmRoiByteStreamCnv, LVL1BS::CpmRoiByteStreamV1Cnv, LVL1BS::CpmRoiByteStreamV2Cnv, LVL1BS::CpReadByteStreamV1Cnv< Container >, LVL1BS::CpReadByteStreamV1V2Cnv, LVL1BS::CpReadByteStreamV2Cnv< Container >, LVL1BS::JepByteStreamCnv, LVL1BS::JepByteStreamV1Cnv, LVL1BS::JepByteStreamV2Cnv, LVL1BS::JepReadByteStreamV1Cnv< Container >, LVL1BS::JepReadByteStreamV1V2Cnv< Container >, LVL1BS::JepReadByteStreamV2Cnv< Container >, LVL1BS::JepRoiByteStreamCnv, LVL1BS::JepRoiByteStreamV1Cnv, LVL1BS::JepRoiByteStreamV2Cnv, LVL1BS::JepRoiReadByteStreamV1Cnv< Container >, LVL1BS::JepRoiReadByteStreamV2Cnv< Container >, LVL1BS::L1CaloErrorByteStreamCnv, LVL1BS::PpmByteStreamV1Cnv, LVL1BS::RodHeaderByteStreamCnv, MdtCsmContByteStreamCnv, PixelRawContByteStreamCnv, RpcPadContByteStreamCnv, SCTRawContByteStreamCnv, TgcRdoContByteStreamCnv, TileBeamElemContByteStreamCnv, TileDigitsContByteStreamCnv, TileL2ContByteStreamCnv, TileLaserObjByteStreamCnv, TileMuRcvContByteStreamCnv, TileRawChannelContByteStreamCnv, TRTRawContByteStreamCnv, and ZdcByteStreamCnv.
|
double | phiCorr (double phi) |
|
void | ipCorr (double d0, double z0, double &d0c, double &z0c, double phi0, double eta, double pt) |
|
|
std::string | m_name |
|
std::string | m_nm |
| Message source name. More...
|
|
boost::thread_specific_ptr< MsgStream > | m_msg_tls |
| MsgStream instance (a std::cout like with print-out levels) More...
|
|
std::atomic< IMessageSvc * > | m_imsg { nullptr } |
| MessageSvc pointer. More...
|
|
std::atomic< MSG::Level > | m_lvl { MSG::NIL } |
| Current logging level. More...
|
|
std::atomic_flag m_initialized | ATLAS_THREAD_SAFE = ATOMIC_FLAG_INIT |
| Messaging initialized (initMessaging) More...
|
|
Gaudi converter base class with const interfaces.
This is a version of Gaudi Converter which uses const createRepConst
and createObjConst
methods instead of createObj
and createRep
. This can be used for converters that one wants to execute concurrently in MT jobs.
As a bonus, we also include AthMessaging
functionality.
Definition at line 32 of file AthConstConverter.h.
◆ AthConstConverter()
AthConstConverter::AthConstConverter |
( |
long |
storage_type, |
|
|
const CLID & |
class_type, |
|
|
ISvcLocator * |
svc, |
|
|
const std::string & |
name |
|
) |
| |
|
inline |
◆ addTrack()
◆ clear()
void Converter::clear |
( |
| ) |
|
|
inlineinherited |
◆ createObj()
StatusCode AthConstConverter::createObj |
( |
IOpaqueAddress * |
pAddress, |
|
|
DataObject *& |
refpObject |
|
) |
| |
|
finaloverridevirtual |
Create the transient representation of an object.
Non-const version; just calls the const version.
Definition at line 44 of file AthConstConverter.cxx.
◆ createObjConst()
StatusCode AthConstConverter::createObjConst |
( |
IOpaqueAddress * |
pAddress, |
|
|
DataObject *& |
refpObject |
|
) |
| const |
|
virtual |
Create the transient representation of an object.
The default implementation is a no-op.
Reimplemented in TileL2ContByteStreamCnv, ZdcByteStreamCnv, TileDigitsContByteStreamCnv, TileBeamElemContByteStreamCnv, TileRawChannelContByteStreamCnv, TileLaserObjByteStreamCnv, LVL1BS::CpmRoiByteStreamCnv, LArAccumulatedCalibDigitContByteStreamCnv, LArCalibDigitContByteStreamCnv, LVL1BS::JepReadByteStreamV1V2Cnv< Container >, LArAccumulatedDigitContByteStreamCnv, LArDigitContByteStreamCnv, LVL1BS::CpReadByteStreamV1V2Cnv, TileMuRcvContByteStreamCnv, LVL1BS::JepReadByteStreamV1Cnv< Container >, LVL1BS::JepRoiReadByteStreamV1Cnv< Container >, LVL1BS::PpmByteStreamV1Cnv, LArFebHeaderContByteStreamCnv, LVL1BS::CpReadByteStreamV1Cnv< Container >, LVL1BS::CpReadByteStreamV2Cnv< Container >, LVL1BS::JepReadByteStreamV2Cnv< Container >, LVL1BS::JepRoiReadByteStreamV2Cnv< Container >, LVL1BS::CpmRoiByteStreamV1Cnv, LVL1BS::CpmRoiByteStreamV2Cnv, LVL1BS::RodHeaderByteStreamCnv, LVL1BS::L1CaloErrorByteStreamCnv, LArRawChannelContByteStreamCnv, LArLATOMEHeaderContByteStreamCnv, L1TopoByteStreamCnv, SCTRawContByteStreamCnv, ITkStripsRawContByteStreamCnv, TRTRawContByteStreamCnv, TgcRdoContByteStreamCnv, CscRdoContByteStreamCnv, RpcPadContByteStreamCnv, and MdtCsmContByteStreamCnv.
Definition at line 20 of file AthConstConverter.cxx.
23 return StatusCode::SUCCESS;
◆ createRep()
StatusCode AthConstConverter::createRep |
( |
DataObject * |
pObject, |
|
|
IOpaqueAddress *& |
refpAddress |
|
) |
| |
|
finaloverridevirtual |
Convert the transient object to the requested representation.
Non-const version; just calls the const version.
Definition at line 56 of file AthConstConverter.cxx.
◆ createRepConst()
StatusCode AthConstConverter::createRepConst |
( |
DataObject * |
pObject, |
|
|
IOpaqueAddress *& |
refpAddress |
|
) |
| const |
|
virtual |
Convert the transient object to the requested representation.
The default implementation is a no-op.
Reimplemented in TileL2ContByteStreamCnv, TileDigitsContByteStreamCnv, TileBeamElemContByteStreamCnv, TileRawChannelContByteStreamCnv, LVL1BS::CpmRoiByteStreamCnv, TileLaserObjByteStreamCnv, LArAccumulatedCalibDigitContByteStreamCnv, LArCalibDigitContByteStreamCnv, LArAccumulatedDigitContByteStreamCnv, LArDigitContByteStreamCnv, LVL1BS::CpByteStreamCnv, LVL1BS::JepByteStreamCnv, LVL1BS::JepRoiByteStreamCnv, TRTRawContByteStreamCnv, LVL1BS::PpmByteStreamV1Cnv, PixelRawContByteStreamCnv, TileMuRcvContByteStreamCnv, LArFebHeaderContByteStreamCnv, LVL1BS::CpmRoiByteStreamV1Cnv, LVL1BS::CpmRoiByteStreamV2Cnv, LVL1BS::JepRoiByteStreamV1Cnv, LArRawChannelContByteStreamCnv, LVL1BS::CpByteStreamV1Cnv, LVL1BS::CpByteStreamV2Cnv, LVL1BS::JepByteStreamV1Cnv, LVL1BS::JepByteStreamV2Cnv, LVL1BS::JepRoiByteStreamV2Cnv, TgcRdoContByteStreamCnv, LArLATOMEHeaderContByteStreamCnv, BCM_RawContByteStreamCnv, CscRdoContByteStreamCnv, RpcPadContByteStreamCnv, MdtCsmContByteStreamCnv, L1TopoByteStreamCnv, SCTRawContByteStreamCnv, and ITkStripsRawContByteStreamCnv.
Definition at line 32 of file AthConstConverter.cxx.
35 return StatusCode::SUCCESS;
◆ initMessaging()
void AthMessaging::initMessaging |
( |
| ) |
const |
|
privateinherited |
Initialize our message level and MessageSvc.
This method should only be called once.
Definition at line 39 of file AthMessaging.cxx.
◆ ipCorr()
void Converter::ipCorr |
( |
double |
d0, |
|
|
double |
z0, |
|
|
double & |
d0c, |
|
|
double & |
z0c, |
|
|
double |
phi0, |
|
|
double |
eta, |
|
|
double |
pt |
|
) |
| |
|
inlineprotectedinherited |
Definition at line 257 of file Converter.h.
261 double sd0 = (
d0 != 0 ?
d0/fabs(
d0) : 1);
262 double spt = (
pt != 0 ?
pt/fabs(
pt) : 1);
270 double rc = fabs(
pt)*15.0/(9.0*1.042);
276 double xd01,yd01,xd02,yd02;
279 xd01 = 0; yd01 =
rc+yc;
280 xd02 = 0; yd02 = -
rc+yc;
282 xd01 = xc+yc/xc*yc+sqrt(
pow((xc+yc/xc*yc),2)-xc*xc-yc*yc+rc*rc); yd01 = yc/xc*xd01;
283 xd02 = xc+yc/xc*yc-sqrt(
pow((xc+yc/xc*yc),2)-xc*xc-yc*yc+rc*rc); yd02 = yc/xc*xd02;
286 double r1 = sqrt(xd01*xd01+yd01*yd01);
287 double r2 = sqrt(xd02*xd02+yd02*yd02);
292 phiV = atan2(yd01,xd01);
294 phiV = atan2(yd02,xd02);
304 d0c = fabs(sqrt(xc*xc+yc*yc)-rc)*
sin(phiV-newphi);
307 double theta_save=
theta;
◆ msg() [1/2]
MsgStream & AthMessaging::msg |
( |
| ) |
const |
|
inlineinherited |
The standard message stream.
Returns a reference to the default message stream May not be invoked before sysInitialize() has been invoked.
Definition at line 164 of file AthMessaging.h.
◆ msg() [2/2]
MsgStream & AthMessaging::msg |
( |
const MSG::Level |
lvl | ) |
const |
|
inlineinherited |
The standard message stream.
Returns a reference to the default message stream May not be invoked before sysInitialize() has been invoked.
Definition at line 179 of file AthMessaging.h.
180 {
return msg() << lvl; }
◆ msgLvl()
bool AthMessaging::msgLvl |
( |
const MSG::Level |
lvl | ) |
const |
|
inlineinherited |
Test the output level.
- Parameters
-
lvl | The message level to test against |
- Returns
- boolean Indicating if messages at given level will be printed
- Return values
-
true | Messages at level "lvl" will be printed |
Definition at line 151 of file AthMessaging.h.
◆ name()
const std::string& AthConstConverter::name |
( |
| ) |
const |
|
inline |
◆ phiCorr()
double Converter::phiCorr |
( |
double |
phi | ) |
|
|
inlineprotectedinherited |
Definition at line 248 of file Converter.h.
250 if (
phi < -TMath::Pi())
phi += 2*TMath::Pi();
251 if (
phi > TMath::Pi())
phi -= 2*TMath::Pi();
◆ selectTracks() [1/3]
Definition at line 177 of file Converter.h.
179 static int hpmap[20] = { 0, 1, 2, 7, 8, 9, 3, 4, 5, 6, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19 };
184 while(muonitr!=muonend) {
186 bool hasInDet = (*muonitr)->hasInDetTrackParticle();
188 if(hasInDet) trackitr=(*muonitr)->inDetTrackParticle();
190 if(!hasInDet)
continue;
194 CLHEP::HepVector perigeeParams = measPer->parameters();
195 double pT = measPer->pT();
196 double eta = measPer->eta();
223 double dof = quality->quality->
numberDoF();
227 for (
int ih=0 ; ih<20 ; ih++ ) {
236 deta, dphi, dz0, dd0, dpT,
238 nStrawHits, nTrHits, bitmap, 0,
◆ selectTracks() [2/3]
Definition at line 111 of file Converter.h.
116 static int hpmap[20] = { 0, 1, 2, 7, 8, 9, 3, 4, 5, 6, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19 };
118 while ( trackitr!=trackend ) {
122 CLHEP::HepVector perigeeParams = measPer->parameters();
123 double pT = measPer->pT();
124 double eta = measPer->eta();
147 bool expectBL =
false;
155 for (
int ih=0 ; ih<20 ; ih++ ) {
164 deta, dphi, dz0, dd0, dpT,
166 nStrawHits, nTrHits, bitmap, 0,
◆ selectTracks() [3/3]
Definition at line 56 of file Converter.h.
61 while ( trackitr!=trackend ) {
63 double eta = (*trackitr)->param()->eta();
64 double phi = (*trackitr)->param()->phi0();
65 double z0 = (*trackitr)->param()->z0();
66 double pT = (*trackitr)->param()->pT();
67 double d0 = (*trackitr)->param()->a0();
70 double deta = (*trackitr)->param()->eeta();
71 double dphi = (*trackitr)->param()->ephi0();
72 double dz0 = (*trackitr)->param()->ez0();
73 double dpT = (*trackitr)->param()->epT();
74 double dd0 = (*trackitr)->param()->ea0();
76 int algoid = (*trackitr)->algorithmId();
78 int nBlayerHits = ((*trackitr)->HitPattern() & 0x1);
79 int nPixelHits = 2*(*trackitr)->NPixelSpacePoints();
80 int nSctHits = 2*(*trackitr)->NSCT_SpacePoints();
81 int nStrawHits = (*trackitr)->NStrawHits();
82 int nTrHits = (*trackitr)->NTRHits();
85 bool expectBL =
false;
87 unsigned hitPattern = (*trackitr)->HitPattern();
88 unsigned multiPattern = 0;
90 double chi2 = (*trackitr)->chi2();
98 deta, dphi, dz0, dd0, dpT,
100 nStrawHits, nTrHits, hitPattern, multiPattern,
◆ setLevel()
void AthMessaging::setLevel |
( |
MSG::Level |
lvl | ) |
|
|
inherited |
◆ tracks()
◆ ATLAS_THREAD_SAFE
std::atomic_flag m_initialized AthMessaging::ATLAS_THREAD_SAFE = ATOMIC_FLAG_INIT |
|
mutableprivateinherited |
◆ m_beamX
double Converter::m_beamX |
|
protectedinherited |
◆ m_beamY
double Converter::m_beamY |
|
protectedinherited |
◆ m_beamZ
double Converter::m_beamZ |
|
protectedinherited |
◆ m_imsg
std::atomic<IMessageSvc*> AthMessaging::m_imsg { nullptr } |
|
mutableprivateinherited |
◆ m_lvl
std::atomic<MSG::Level> AthMessaging::m_lvl { MSG::NIL } |
|
mutableprivateinherited |
◆ m_msg_tls
boost::thread_specific_ptr<MsgStream> AthMessaging::m_msg_tls |
|
mutableprivateinherited |
MsgStream instance (a std::cout like with print-out levels)
Definition at line 132 of file AthMessaging.h.
◆ m_name
std::string AthConstConverter::m_name |
|
private |
◆ m_nm
std::string AthMessaging::m_nm |
|
privateinherited |
◆ m_tracks
The documentation for this class was generated from the following files:
const TrackSummary * trackSummary() const
accessor function for TrackSummary.
const FitQuality * fitQuality() const
accessor function for FitQuality.
const Trk::Perigee * measuredPerigee() const
Accessor method for Perigee.