ATLAS Offline Software
Static Public Member Functions | List of all members
Muon::MuonTSOSHelper Class Reference

#include <MuonTSOSHelper.h>

Collaboration diagram for Muon::MuonTSOSHelper:

Static Public Member Functions

static std::unique_ptr< Trk::TrackStateOnSurfacecloneTSOS (const Trk::TrackStateOnSurface &tsos, Trk::TrackStateOnSurface::TrackStateOnSurfaceType type)
 clone input, update the type More...
 
static std::unique_ptr< Trk::TrackStateOnSurfacecloneTSOSWithUpdate (const Trk::TrackStateOnSurface &tsos, const Trk::MeasurementBase &meas, const Trk::TrackParameters &pars, Trk::TrackStateOnSurface::TrackStateOnSurfaceType type)
 clone input, replacing the track parameteres and the measurement base and updating the type More...
 
static std::unique_ptr< Trk::TrackStateOnSurfacecreatePerigeeTSOS (std::unique_ptr< Trk::TrackParameters > perigee)
 create a perigee TSOS, takes ownership of the Perigee More...
 
static std::unique_ptr< Trk::TrackStateOnSurfacecreateMeasTSOS (std::unique_ptr< Trk::MeasurementBase > meas, std::unique_ptr< Trk::TrackParameters > pars, Trk::TrackStateOnSurface::TrackStateOnSurfaceType type)
 create a TSOS with a measurement, takes ownership of the pointers More...
 
static std::unique_ptr< Trk::TrackStateOnSurfacecreateMeasTSOSWithUpdate (const Trk::TrackStateOnSurface &tsos, std::unique_ptr< Trk::MeasurementBase > meas, std::unique_ptr< Trk::TrackParameters > pars, Trk::TrackStateOnSurface::TrackStateOnSurfaceType type)
 create a TSOS with a measurement, takes ownership of the pointers More...
 
static std::unique_ptr< Trk::TrackStateOnSurfacecreateHoleTSOS (std::unique_ptr< Trk::TrackParameters > pars)
 create a hole TSOS, takes ownership of the pointers More...
 

Detailed Description

Definition at line 12 of file MuonTSOSHelper.h.

Member Function Documentation

◆ cloneTSOS()

static std::unique_ptr<Trk::TrackStateOnSurface> Muon::MuonTSOSHelper::cloneTSOS ( const Trk::TrackStateOnSurface tsos,
Trk::TrackStateOnSurface::TrackStateOnSurfaceType  type 
)
inlinestatic

clone input, update the type

Definition at line 15 of file MuonTSOSHelper.h.

16  {
17  std::bitset<Trk::TrackStateOnSurface::NumberOfTrackStateOnSurfaceTypes> typePattern = tsos.types();
21  typePattern.set(Trk::TrackStateOnSurface::Outlier, false);
22  typePattern.set(type);
23 
24  return std::make_unique<Trk::TrackStateOnSurface>(
25  tsos.fitQualityOnSurface(),
26  tsos.measurementOnTrack() ? tsos.measurementOnTrack()->uniqueClone() : nullptr,
27  tsos.trackParameters() ? tsos.trackParameters()->uniqueClone() : nullptr,
28  tsos.materialEffectsOnTrack() ? tsos.materialEffectsOnTrack()->uniqueClone() : nullptr,
29  typePattern);
30  }

◆ cloneTSOSWithUpdate()

static std::unique_ptr<Trk::TrackStateOnSurface> Muon::MuonTSOSHelper::cloneTSOSWithUpdate ( const Trk::TrackStateOnSurface tsos,
const Trk::MeasurementBase meas,
const Trk::TrackParameters pars,
Trk::TrackStateOnSurface::TrackStateOnSurfaceType  type 
)
inlinestatic

clone input, replacing the track parameteres and the measurement base and updating the type

Definition at line 34 of file MuonTSOSHelper.h.

36  {
37  std::bitset<Trk::TrackStateOnSurface::NumberOfTrackStateOnSurfaceTypes> typePattern = tsos.types();
41  typePattern.set(Trk::TrackStateOnSurface::Outlier, false);
42  typePattern.set(type);
43 
44  return std::make_unique<Trk::TrackStateOnSurface>(
45  tsos.fitQualityOnSurface(),
46  meas.uniqueClone(),
47  pars.uniqueClone(),
49  typePattern);
50  }

◆ createHoleTSOS()

static std::unique_ptr<Trk::TrackStateOnSurface> Muon::MuonTSOSHelper::createHoleTSOS ( std::unique_ptr< Trk::TrackParameters pars)
inlinestatic

create a hole TSOS, takes ownership of the pointers

Definition at line 92 of file MuonTSOSHelper.h.

92  {
93  std::bitset<Trk::TrackStateOnSurface::NumberOfTrackStateOnSurfaceTypes> typePattern;
94  typePattern.set(Trk::TrackStateOnSurface::Hole);
95  return std::make_unique<Trk::TrackStateOnSurface>(nullptr, std::move(pars), nullptr, typePattern);
96  }

◆ createMeasTSOS()

static std::unique_ptr<Trk::TrackStateOnSurface> Muon::MuonTSOSHelper::createMeasTSOS ( std::unique_ptr< Trk::MeasurementBase meas,
std::unique_ptr< Trk::TrackParameters pars,
Trk::TrackStateOnSurface::TrackStateOnSurfaceType  type 
)
inlinestatic

create a TSOS with a measurement, takes ownership of the pointers

Definition at line 62 of file MuonTSOSHelper.h.

64  {
65  std::bitset<Trk::TrackStateOnSurface::NumberOfTrackStateOnSurfaceTypes> typePattern;
67  typePattern.set(type);
68  return std::make_unique<Trk::TrackStateOnSurface>(std::move(meas), std::move(pars), nullptr, typePattern);
69  }

◆ createMeasTSOSWithUpdate()

static std::unique_ptr<Trk::TrackStateOnSurface> Muon::MuonTSOSHelper::createMeasTSOSWithUpdate ( const Trk::TrackStateOnSurface tsos,
std::unique_ptr< Trk::MeasurementBase meas,
std::unique_ptr< Trk::TrackParameters pars,
Trk::TrackStateOnSurface::TrackStateOnSurfaceType  type 
)
inlinestatic

create a TSOS with a measurement, takes ownership of the pointers

Definition at line 74 of file MuonTSOSHelper.h.

76  {
77  std::bitset<Trk::TrackStateOnSurface::NumberOfTrackStateOnSurfaceTypes> typePattern = tsos.types();
81  typePattern.set(Trk::TrackStateOnSurface::Outlier, false);
82  typePattern.set(type);
83  return std::make_unique<Trk::TrackStateOnSurface>(
84  tsos.fitQualityOnSurface(),
85  std::move(meas),
86  std::move(pars),
88  typePattern);
89  }

◆ createPerigeeTSOS()

static std::unique_ptr<Trk::TrackStateOnSurface> Muon::MuonTSOSHelper::createPerigeeTSOS ( std::unique_ptr< Trk::TrackParameters perigee)
inlinestatic

create a perigee TSOS, takes ownership of the Perigee

Definition at line 54 of file MuonTSOSHelper.h.

54  {
55  std::bitset<Trk::TrackStateOnSurface::NumberOfTrackStateOnSurfaceTypes> typePattern;
56  typePattern.set(Trk::TrackStateOnSurface::Perigee);
57  return std::make_unique<Trk::TrackStateOnSurface>(nullptr, std::move(perigee), nullptr, typePattern);
58  }

The documentation for this class was generated from the following file:
make_hlt_rep.pars
pars
Definition: make_hlt_rep.py:90
Trk::TrackStateOnSurface::trackParameters
const TrackParameters * trackParameters() const
return ptr to trackparameters const overload
Trk::TrackStateOnSurface::Perigee
@ Perigee
This represents a perigee, and so will contain a Perigee object only.
Definition: TrackStateOnSurface.h:117
Trk::ParametersBase::uniqueClone
std::unique_ptr< ParametersBase< DIM, T > > uniqueClone() const
clone method for polymorphic deep copy returning unique_ptr; it is not overriden, but uses the existi...
Definition: ParametersBase.h:97
Trk::TrackStateOnSurface::measurementOnTrack
const MeasurementBase * measurementOnTrack() const
returns MeasurementBase const overload
Trk::TrackStateOnSurface::types
const std::bitset< NumberOfTrackStateOnSurfaceTypes > types() const
returns a bitset with the types of this bitset.
Trk::MaterialEffectsBase::uniqueClone
std::unique_ptr< MaterialEffectsBase > uniqueClone() const
NVI uniqueClone.
Definition: MaterialEffectsBase.h:87
Trk::TrackStateOnSurface::fitQualityOnSurface
const FitQualityOnSurface & fitQualityOnSurface() const
return FitQuality On Surface const overload
Trk::TrackStateOnSurface::Outlier
@ Outlier
This TSoS contains an outlier, that is, it contains a MeasurementBase/RIO_OnTrack which was not used ...
Definition: TrackStateOnSurface.h:122
Trk::TrackStateOnSurface::Hole
@ Hole
A hole on the track - this is defined in the following way.
Definition: TrackStateOnSurface.h:128
Trk::TrackStateOnSurface::materialEffectsOnTrack
const MaterialEffectsBase * materialEffectsOnTrack() const
return material effects const overload
Trk::MeasurementBase::uniqueClone
std::unique_ptr< MeasurementBase > uniqueClone() const
NVI Clone giving up unique pointer.
Definition: MeasurementBase.h:77
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
Trk::TrackStateOnSurface::Measurement
@ Measurement
This is a measurement, and will at least contain a Trk::MeasurementBase.
Definition: TrackStateOnSurface.h:101