|  | ATLAS Offline Software
    | 
 
 
 
ByteStream converter for CpmTowers.  
 More...
#include <CpmTowerByteStreamxAODCnv.h>
|  | 
| double | phiCorr (double phi) | 
|  | 
| void | ipCorr (double d0, double z0, double &d0c, double &z0c, double phi0, double eta, double pt) | 
|  | 
◆ CpmTowerByteStreamxAODCnv()
      
        
          | LVL1BS::CpmTowerByteStreamxAODCnv::CpmTowerByteStreamxAODCnv | ( | ISvcLocator * | svcloc | ) |  | 
      
 
 
◆ ~CpmTowerByteStreamxAODCnv()
  
  | 
        
          | virtual LVL1BS::CpmTowerByteStreamxAODCnv::~CpmTowerByteStreamxAODCnv | ( |  | ) |  |  | inlinevirtual | 
 
 
◆ addTrack()
◆ classID()
  
  | 
        
          | const CLID & LVL1BS::CpmTowerByteStreamxAODCnv::classID | ( |  | ) |  |  | static | 
 
 
◆ clear()
  
  | 
        
          | void Converter::clear | ( |  | ) |  |  | inlineinherited | 
 
 
◆ createObj()
  
  | 
        
          | StatusCode LVL1BS::CpmTowerByteStreamxAODCnv::createObj | ( | IOpaqueAddress * | pAddr, |  
          |  |  | DataObject *& | pObj |  
          |  | ) |  |  |  | virtual | 
 
Create TriggerTowers from ByteStream. 
Definition at line 65 of file CpmTowerByteStreamxAODCnv.cxx.
   70   CHECK(pBS_Addr != 
nullptr);
 
   72   const std::string 
nm = *(pBS_Addr->par());
 
   73   const std::string nmAux = 
nm + 
"Aux.";
 
   74   ATH_MSG_DEBUG(
"Creating xAOD::CPMTower interface objects '" << 
nm << 
"'");
 
   83   for(
size_t i=0; 
i < link->size(); ++
i){
 
   87   cpmCollection->setStore(link);
 
   91   return StatusCode::SUCCESS;
 
 
 
 
◆ createRep()
  
  | 
        
          | StatusCode LVL1BS::CpmTowerByteStreamxAODCnv::createRep | ( | DataObject * | pObj, |  
          |  |  | IOpaqueAddress *& | pAddr |  
          |  | ) |  |  |  | virtual | 
 
 
◆ initialize()
  
  | 
        
          | StatusCode LVL1BS::CpmTowerByteStreamxAODCnv::initialize | ( |  | ) |  |  | virtual | 
 
 
◆ 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.
 
 
◆ 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 LVL1BS::CpmTowerByteStreamxAODCnv::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; 
 
  151       double dof  = 
quality->numberDoF();
 
  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 | 
 
 
◆ storageType()
  
  | 
        
          | long LVL1BS::CpmTowerByteStreamxAODCnv::storageType | ( |  | ) |  |  | static | 
 
 
◆ 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 LVL1BS::CpmTowerByteStreamxAODCnv::m_name |  | private | 
 
 
◆ m_nm
  
  | 
        
          | std::string AthMessaging::m_nm |  | privateinherited | 
 
 
◆ m_tracks
The documentation for this class was generated from the following files:
 
std::atomic< MSG::Level > m_lvl
Current logging level.
@ 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
Scalar eta() const
pseudorapidity method
Dummy class used to allow special convertors to be called for surfaces owned by a detector element.
Scalar theta() const
theta method
const TrackSummary * trackSummary() const
accessor function for TrackSummary.
static const CLID & classID()
std::atomic< IMessageSvc * > m_imsg
MessageSvc pointer.
float nPixelHits(const U &p)
IMessageSvc * getMessageSvc(bool quiet=false)
@ numberOfBLayerHits
these are the hits in the 0th pixel layer?
double phiCorr(double phi)
static long storageType()
DataObject * asStorable(SG::DataObjectSharedPtr< T > pObject)
AthMessaging()
Default constructor:
msgSvc
Provide convenience handles for various services.
Object reference supporting deferred reading from StoreGate.
@ 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)
CPMTowerContainer_v2 CPMTowerContainer
Define the latest version of the CPMHits container.
#define CHECK(...)
Evaluate an expression and check for errors.
Class to represent and store fit qualities from track reconstruction in terms of  and number of degre...
MsgStream & msg() const
The standard message stream.
void addTrack(TIDA::Track *t)
@ numberOfTRTHits
number of TRT outliers
static constexpr long storageType()
A summary of the information contained by a track.
std::string m_name
Converter name.
value_type push_back(value_type pElem)
Add an element to the end of the collection.
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.
DetectorType
enumerates the various detector types currently accessible from the isHit() method.
std::string m_nm
Message source name.
void initMessaging() const
Initialize our message level and MessageSvc.
boost::thread_specific_ptr< MsgStream > m_msg_tls
MsgStream instance (a std::cout like with print-out levels)
constexpr int pow(int base, int exp) noexcept
std::vector< TIDA::Track * > m_tracks
size_type size() const noexcept
Returns the number of elements in the collection.
float nSiHits(const U &p)
const_iterator begin() const noexcept
Return a const_iterator pointing at the beginning of the collection.
Description of CPMTower_v2.