|
ATLAS Offline Software
|
#include <MultiComponentStateOnSurface.h>
|
enum | TrackStateOnSurfaceType {
Measurement = 0,
InertMaterial = 1,
BremPoint = 2,
Scatterer = 3,
Perigee = 4,
Outlier = 5,
Hole = 6,
Unknown = 7,
CaloDeposit = 8,
Parameter = 9,
FitQuality = 10,
Alignment = 11,
NumberOfTrackStateOnSurfaceTypes = 12
} |
|
enum | PersistencyHint {
PartialPersistification = 0,
PersistifyMeasurement = 1,
PersistifyTrackParameters = 2,
PersistifySlimCaloDeposit = 3,
NumberOfPersistencyHints = 4
} |
|
enum | Variety { SingleComponent = 0,
MultiComponent = 1,
Align = 2
} |
|
◆ PersistencyHint
Enumerator |
---|
PartialPersistification | |
PersistifyMeasurement | Mark the measuremenet for persistification.
|
PersistifyTrackParameters | Mark track parameters for persisitification.
|
PersistifySlimCaloDeposit | Mark track parameters for persisitification.
|
NumberOfPersistencyHints | |
Definition at line 155 of file TrackStateOnSurface.h.
◆ TrackStateOnSurfaceType
Enumerator |
---|
Measurement | This is a measurement, and will at least contain a Trk::MeasurementBase.
|
InertMaterial | This represents inert material, and so will contain MaterialEffectsBase.
|
BremPoint | This represents a brem point on the track, and so will contain TrackParameters and MaterialEffectsBase.
|
Scatterer | This represents a scattering point on the track, and so will contain TrackParameters and MaterialEffectsBase.
|
Perigee | This represents a perigee, and so will contain a Perigee object only.
|
Outlier | This TSoS contains an outlier, that is, it contains a MeasurementBase/RIO_OnTrack which was not used in the track fit.
|
Hole | A hole on the track - this is defined in the following way.
A hole is a missing measurement BETWEEN the first and last actual measurements. i.e. if your track starts in the SCT, you should not consider a missing b-layer hit as a hole.
|
Unknown | For some reason this does not fall into any of the other categories PLEASE DO NOT USE THIS - DEPRECATED!
|
CaloDeposit | This TSOS contains a CaloEnergy object.
|
Parameter | This TSOS contains a Trk::ParameterBase.
|
FitQuality | This TSOS contains a Trk::FitQualityOnSurface.
|
Alignment | This TSOS contains a Trk::AlignmentEffectsOnTrack.
|
NumberOfTrackStateOnSurfaceTypes | |
Definition at line 97 of file TrackStateOnSurface.h.
◆ Variety
◆ MultiComponentStateOnSurface() [1/5]
Trk::MultiComponentStateOnSurface::MultiComponentStateOnSurface |
( |
| ) |
|
◆ MultiComponentStateOnSurface() [2/5]
◆ MultiComponentStateOnSurface() [3/5]
◆ MultiComponentStateOnSurface() [4/5]
◆ MultiComponentStateOnSurface() [5/5]
Move constructor and assignment.
◆ ~MultiComponentStateOnSurface()
virtual Trk::MultiComponentStateOnSurface::~MultiComponentStateOnSurface |
( |
| ) |
|
|
virtualdefault |
◆ alignmentEffectsOnTrack() [1/2]
return the the alignment effects non-const overload
◆ alignmentEffectsOnTrack() [2/2]
return the the alignment effects const overload
◆ clone()
◆ components() [1/2]
Method to return a reference to the multi-component state non const overload.
◆ components() [2/2]
Method to return a referenceto the multi-component state const overload.
◆ dumpType()
std::string Trk::TrackStateOnSurface::dumpType |
( |
| ) |
const |
|
inherited |
returns a string with the expanded type of the object (i.e.
if it has several type bits set, they all will be returned)
Definition at line 147 of file TrackStateOnSurface.cxx.
150 const auto& typesSet =
types();
152 type +=
"Measurement ";
155 type +=
"InertMaterial ";
158 type +=
"BremPoint ";
161 type +=
"Scatterer ";
173 type +=
"CaloDeposit ";
176 type +=
"Parameter ";
179 type +=
"FitQuality ";
182 type +=
"Alignment ";
◆ fitQualityOnSurface() [1/2]
◆ fitQualityOnSurface() [2/2]
◆ hints()
Use this method to get the persistification hints.
◆ isSane()
bool Trk::TrackStateOnSurface::isSane |
( |
| ) |
const |
|
inherited |
Definition at line 203 of file TrackStateOnSurface.cxx.
205 bool surfacesDiffer =
209 if (surfacesDiffer) {
210 std::cerr <<
"TrackStateOnSurface::isSane. With :" <<
'\n';
211 std::cerr <<
"Types : " <<
types().to_string() <<
'\n';
212 std::cerr <<
"Hints " <<
hints().to_string() <<
'\n';
213 std::cerr <<
"Surfaces differ! " << std::endl;
224 std::cerr <<
"matSurf: ["
◆ joinBitsets()
◆ materialEffectsOnTrack() [1/2]
return material effects non-const overload
◆ materialEffectsOnTrack() [2/2]
return material effects const overload
◆ measurementOnTrack() [1/2]
◆ measurementOnTrack() [2/2]
◆ operator=() [1/2]
◆ operator=() [2/2]
◆ setFlags()
void Trk::TrackStateOnSurface::setFlags |
( |
| ) |
|
|
privateinherited |
set sensible default flags
◆ setHints()
void Trk::TrackStateOnSurface::setHints |
( |
const uint8_t |
hints | ) |
const |
|
inherited |
Use this method to set persistification hints.
This can be called only once per TSOS It will set a cached Value which we can not reset But this allows it to be const..
Definition at line 235 of file TrackStateOnSurface.cxx.
240 if (!
m_hints.compare_exchange_strong(
242 throw std::runtime_error(
243 "TSOS trying to set again already set Persistification Hints");
◆ splitToBitsets()
Definition at line 196 of file TrackStateOnSurface.h.
202 constexpr
unsigned int long maskTypesSet =
205 types = std::bitset<NumberOfTrackStateOnSurfaceTypes>(
input & maskTypesSet);
207 hints = std::bitset<NumberOfPersistencyHints>(
◆ surface()
return associated surface
Used to perform sanity checks on this object (i.e. all consistuents are on the same surface). Returns 'true' if it seems okay.
Definition at line 188 of file TrackStateOnSurface.cxx.
199 throw std::runtime_error(
"TrackStateOnSurface without Surface!");
◆ trackParameters() [1/2]
return ptr to trackparameters non-const overload
◆ trackParameters() [2/2]
return ptr to trackparameters const overload
◆ type()
Use this method to find out if the TSoS is of a certain type: i.e.
if ( tsos->type(TrackStateOnSurface::Measurement) { //etc }
- Returns
- true if the TrackStateOnSurface is of this type
◆ types()
returns a bitset with the types of this bitset.
As an example of how this is used, see the type( const TrackStateOnSurfaceType& type ) method but a better example would be if you wanted to check several type flags at once.
const bitset<NumberOfTrackStateOnSurfaceTypes>
mask;
if (tsos.types() &
mask ) {
◆ variety()
◆ ::TrackCollectionCnv
◆ ::TrackStateOnSurfaceCnv_p3
◆ m_alignmentEffectsOnTrack
◆ m_fitQualityOnSurface
◆ m_hints
std::atomic<uint8_t> Trk::TrackStateOnSurface::m_hints {} |
|
mutableprotectedinherited |
◆ m_materialEffectsOnTrack
◆ m_measurementOnTrack
std::unique_ptr<MeasurementBase> Trk::TrackStateOnSurface::m_measurementOnTrack {} |
|
privateinherited |
◆ m_multiComponentState
◆ m_trackParameters
std::unique_ptr<TrackParameters> Trk::TrackStateOnSurface::m_trackParameters {} |
|
privateinherited |
◆ m_typeFlags
uint16_t Trk::TrackStateOnSurface::m_typeFlags {} |
|
protectedinherited |
The documentation for this class was generated from the following files:
const TrackParameters * trackParameters() const
return ptr to trackparameters const overload
@ CaloDeposit
This TSOS contains a CaloEnergy object.
Trk::TrackStateOnSurface & operator=(const Trk::TrackStateOnSurface &rhs)
@ Perigee
This represents a perigee, and so will contain a Perigee object only.
@ NumberOfPersistencyHints
TrackStateOnSurface()
Default ctor for POOL.
@ PersistifyTrackParameters
Mark track parameters for persisitification.
std::unique_ptr< MaterialEffectsBase > m_materialEffectsOnTrack
const MeasurementBase * measurementOnTrack() const
returns MeasurementBase const overload
const std::bitset< NumberOfTrackStateOnSurfaceTypes > types() const
returns a bitset with the types of this bitset.
@ PersistifyMeasurement
Mark the measuremenet for persistification.
@ Alignment
This TSOS contains a Trk::AlignmentEffectsOnTrack.
const FitQualityOnSurface & fitQualityOnSurface() const
return FitQuality On Surface const overload
@ Outlier
This TSoS contains an outlier, that is, it contains a MeasurementBase/RIO_OnTrack which was not used ...
bool type(const TrackStateOnSurfaceType type) const
Use this method to find out if the TSoS is of a certain type: i.e.
@ Hole
A hole on the track - this is defined in the following way.
const MaterialEffectsBase * materialEffectsOnTrack() const
return material effects const overload
std::pair< std::vector< unsigned int >, bool > res
MultiComponentState clone(const MultiComponentState &in)
Clone TrackParameters method.
MultiComponentStateOnSurface()
Default constructor for POOL.
@ PersistifySlimCaloDeposit
Mark track parameters for persisitification.
@ Parameter
This TSOS contains a Trk::ParameterBase.
@ BremPoint
This represents a brem point on the track, and so will contain TrackParameters and MaterialEffectsBas...
std::unique_ptr< TrackParameters > m_trackParameters
@ InertMaterial
This represents inert material, and so will contain MaterialEffectsBase.
const std::bitset< NumberOfPersistencyHints > hints() const
Use this method to get the persistification hints.
std::atomic< uint8_t > m_hints
@ Scatterer
This represents a scattering point on the track, and so will contain TrackParameters and MaterialEffe...
@ FitQuality
This TSOS contains a Trk::FitQualityOnSurface.
MultiComponentState m_multiComponentState
std::unique_ptr< MeasurementBase > m_measurementOnTrack
bool consistentSurfaces(U)
@ Unknown
For some reason this does not fall into any of the other categories PLEASE DO NOT USE THIS - DEPRECAT...
@ PartialPersistification
@ Measurement
This is a measurement, and will at least contain a Trk::MeasurementBase.
@ NumberOfTrackStateOnSurfaceTypes