![Logo](../../ATLAS-Logo-Square-Blue-RGB.png) |
ATLAS Offline Software
|
#include <LArRawScContByteStreamCnv.h>
|
double | phiCorr (double phi) |
|
void | ipCorr (double d0, double z0, double &d0c, double &z0c, double phi0, double eta, double pt) |
|
Definition at line 32 of file LArRawScContByteStreamCnv.h.
◆ LArRawScContByteStreamCnv()
LArRawScContByteStreamCnv::LArRawScContByteStreamCnv |
( |
ISvcLocator * |
svcloc | ) |
|
◆ ~LArRawScContByteStreamCnv()
LArRawScContByteStreamCnv::~LArRawScContByteStreamCnv |
( |
| ) |
|
|
virtual |
◆ addTrack()
◆ classID()
const CLID & LArRawScContByteStreamCnv::classID |
( |
| ) |
|
|
static |
◆ clear()
void Converter::clear |
( |
| ) |
|
|
inlineinherited |
◆ createObj()
StatusCode LArRawScContByteStreamCnv::createObj |
( |
IOpaqueAddress * |
pAddr, |
|
|
DataObject *& |
pObj |
|
) |
| |
|
virtual |
Definition at line 110 of file LArRawScContByteStreamCnv.cxx.
112 (*m_log) <<
MSG::VERBOSE <<
"Executing CreateObj method for LArLATOMEHeaderContainer" <<
endmsg;
115 {(*m_log) << MSG::ERROR <<
" ROBDataProviderSvc not loaded. Can't read ByteStream." <<
endmsg;
116 return StatusCode::FAILURE;
121 {(*m_log) << MSG::ERROR <<
"dynamic_cast of OpaqueAdress to ByteStreamAddress failed!" <<
endmsg;
122 return StatusCode::FAILURE;
126 std::vector<const OFFLINE_FRAGMENTS_NAMESPACE::ROBFragment*> robFrags;
130 {(*m_log) << MSG::ERROR <<
"Could not get raw event from ByteStreamInputSvc" <<
endmsg;
131 return StatusCode::FAILURE;
133 const std::string&
key = *(pAddr->par());
144 else if(
key==
"SC_ET_ID"){
148 (*m_log) <<
MSG::DEBUG <<
"Converting LArRawSCContainer (from ByteStream). key=" <<
key <<
endmsg;
152 sc=
m_scTool->
convert(robFrags,
nullptr,adc_coll, adc_bas_coll, et_coll, et_id_coll, header_coll);
153 if (
sc!=StatusCode::SUCCESS)
154 (*m_log) << MSG::WARNING <<
"Conversion tool returned an error. LAr SC containers might be empty." <<
endmsg;
159 else if(
key==
"SC_ET_ID"){
164 return StatusCode::SUCCESS;
◆ createRep()
StatusCode LArRawScContByteStreamCnv::createRep |
( |
DataObject * |
pObj, |
|
|
IOpaqueAddress *& |
pAddr |
|
) |
| |
|
virtual |
◆ initialize()
StatusCode LArRawScContByteStreamCnv::initialize |
( |
| ) |
|
|
virtual |
Definition at line 51 of file LArRawScContByteStreamCnv.cxx.
54 if(StatusCode::SUCCESS!=
sc)
58 m_log =
new MsgStream(
msgSvc(),
"LArLATOMEHeaderBSCnv");
62 if(StatusCode::SUCCESS != serviceLocator()->getService(
"ByteStreamCnvSvc",
svc)){
63 (*m_log) << MSG::ERROR <<
" Can't get ByteStreamEventAccess interface " <<
endmsg;
64 return StatusCode::FAILURE;
69 (*m_log) <<MSG::ERROR<<
" LArRawScContByteStreamCnv: Can't cast to ByteStreamCnvSvc " <<
endmsg;
70 return StatusCode::FAILURE ;
75 if(StatusCode::SUCCESS != serviceLocator()->getService(
"ROBDataProviderSvc",
svc)){
76 (*m_log) << MSG::WARNING <<
" Can't get ByteStreamInputSvc interface Reading of ByteStream Data not possible. " <<
endmsg;
82 (*m_log) <<MSG::ERROR<<
" LArRawScContByteStreamCnv: Can't cast to ByteStreamInputSvc " <<
endmsg;
83 return StatusCode::FAILURE;
90 if(StatusCode::SUCCESS != service(
"ToolSvc",toolSvc)){
91 (*m_log) << MSG::ERROR <<
" Can't get ToolSvc " <<
endmsg;
92 return StatusCode::FAILURE;
96 sc=toolSvc->retrieveTool(
"LArLATOMEDecoder",
m_scTool);
98 (*m_log) << MSG::ERROR <<
"Can't get LArLATOMEDecoder Tool" <<
endmsg;
101 (*m_log) << MSG::INFO <<
"Retrieved LArLATOMEDecoder Tool" <<
endmsg;
◆ 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;
◆ 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();
◆ repSvcType()
virtual long LArRawScContByteStreamCnv::repSvcType |
( |
| ) |
const |
|
inlinevirtual |
◆ 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,
◆ storageType()
static long LArRawScContByteStreamCnv::storageType |
( |
| ) |
|
|
inlinestatic |
◆ tracks()
◆ m_beamX
double Converter::m_beamX |
|
protectedinherited |
◆ m_beamY
double Converter::m_beamY |
|
protectedinherited |
◆ m_beamZ
double Converter::m_beamZ |
|
protectedinherited |
◆ m_ByteStreamEventAccess
◆ m_log
MsgStream* LArRawScContByteStreamCnv::m_log |
|
private |
◆ m_rdpSvc
◆ m_scTool
◆ m_storeGate
◆ m_tracks
The documentation for this class was generated from the following files:
StatusCode convert(const std::vector< const OFFLINE_FRAGMENTS_NAMESPACE::ROBFragment * > &robFrags, const LArLATOMEMapping *map, LArDigitContainer *adc_coll, LArDigitContainer *adc_bas_coll, LArRawSCContainer *et_coll, LArRawSCContainer *et_id_coll, LArLATOMEHeaderContainer *header_coll) const
Converter.
@ numberOfPixelHits
number of pixel layers on track with absence of hits
void ipCorr(double d0, double z0, double &d0c, double &z0c, double phi0, double eta, double pt)
Const iterator class for DataVector/DataList.
@ numberOfTRTHighThresholdHits
total number of TRT hits which pass the high threshold
Scalar phi() const
phi method
StoreGateSvc * m_storeGate
bool nPixelHits(const xAOD::TauJet &, const xAOD::TauTrack &track, double &out)
Scalar eta() const
pseudorapidity method
Dummy class used to allow special convertors to be called for surfaces owned by a detector element.
Container class for LArRawSC.
Scalar theta() const
theta method
OFFLINE_FRAGMENTS_NAMESPACE::FullEventFragment RawEvent
data type for reading raw event
const TrackSummary * trackSummary() const
accessor function for TrackSummary.
LArLATOMEDecoder * m_scTool
DataObject * asStorable(T *pObject)
@ numberOfBLayerHits
these are the hits in the 0th pixel layer?
double phiCorr(double phi)
static const CLID & ID()
the CLID of T
Interface class for managing ROB for both online and offline.
Gaudi Conversion Service class for ByteStream Persistency.
bool nSiHits(const xAOD::TauJet &, const xAOD::TauTrack &track, double &out)
virtual void getROBData(const std::vector< uint32_t > &robIds, VROBFRAG &robFragments, const std::string_view callerName="UNKNOWN")=0
Retrieve ROBFragments for given ROB ids from cache.
msgSvc
Provide convenience handles for various services.
::StatusCode StatusCode
StatusCode definition for legacy code.
@ numberOfSCTHits
number of SCT holes
IOpaqueAddress for ByteStreamCnvSvc, with ROB ids.
const FitQuality * fitQuality() const
accessor function for FitQuality.
double chi2(TH1 *h0, TH1 *h1)
Class to represent and store fit qualities from track reconstruction in terms of and number of degre...
AthROOTErrorHandlerSvc * svc
void addTrack(TIDA::Track *t)
IROBDataProviderSvc * m_rdpSvc
@ numberOfTRTHits
number of TRT outliers
static constexpr long storageType()
virtual const RawEvent * getEvent()=0
Retrieve the whole event.
A summary of the information contained by a track.
const Trk::Perigee * measuredPerigee() const
Accessor method for Perigee.
const_iterator end() const noexcept
Return a const_iterator pointing past the end of the collection.
static const CLID & classID()
DetectorType
enumerates the various detector types currently accessible from the isHit() method.
const boost::regex re(r_e)
Container class for LArDigit.
double chiSquared() const
returns the of the overall track fit
int numberDoF() const
returns the number of degrees of freedom of the overall track or vertex fit as integer
static long storageType()
ByteStreamCnvSvc * m_ByteStreamEventAccess
std::vector< TIDA::Track * > m_tracks
const_iterator begin() const noexcept
Return a const_iterator pointing at the beginning of the collection.