/cvmfs/atlas.cern.ch/repo/sw/ASG/AnalysisBase/2.4.31/xAODBPhys/xAODBPhys/BPhysHelper.h File Reference

: B-physcis xAOD helpers. More...

#include "xAODTracking/TrackParticleFwd.h"
#include "xAODTracking/VertexFwd.h"
#include "xAODTracking/VertexContainerFwd.h"
#include "xAODMuon/MuonContainer.h"
#include "TVector3.h"
#include "TLorentzVector.h"
#include "TMatrixTSym.h"
#include <assert.h>

Go to the source code of this file.

Classes

class  xAOD::BPhysHelper

Namespaces

namespace  xAOD
 

Namespace holding all the xAOD EDM classes.


Defines

#define BPHYS_CHECK(EXP)   { if( ! EXP ) ATH_MSG_WARNING ( "Call of \"" << #EXP << "\" failed" ); }

Detailed Description

: B-physcis xAOD helpers.

Author:
: Daniel Scheirich <daniel.scheirich@cern.ch>

This class provides interface to the basic B-physics augmemtation of the xAOD::Vertex, i.e.:

In addition, it provides methods that convert covariance matrix from its native xAOD form (i.e. vector<float>) into the matrix form represented by the TMatrixTSym<double> class

To access hypothesis-specific augmentation (e.g. invariant mass, lifetime, etc) use BPhysHypoHelper.

Note:
The class caches covariance matrix, refitted track momenta, pointers to muons and pointers to other vertices in order to speed up access when getter methods are called repeatedly

Usage example:

    void myFunction(xAOD::Vertex* vtx) {
      // Let "vtx" be some xAOD::Vertex created by the b-physics software
      // We gain access to augmentations through the helper class:
      xAOD::BPhysHelper bVtx(vtx);

      std::cout << "Refitted pT of the 1st track: ";
      if(bVtx.nRefTrks()>0) {
        std::cout <<  bVtx.refTrk(0).Pt();
      }
      std::cout << std::endl;

    }

Define Documentation

#define BPHYS_CHECK ( EXP   )     { if( ! EXP ) ATH_MSG_WARNING ( "Call of \"" << #EXP << "\" failed" ); }

Useful CHECK macro

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on 1 Dec 2017 for RootCore Packages by  doxygen 1.6.1