11 #ifdef ENABLE_PRODUCTION_CODE
33 template <
class T>
using TrackFitVariable = std::map<TrTrack::Fit, std::map<TrTrack::Span, T>>;
51 #ifdef ENABLE_PRODUCTION_CODE
52 enum class TrTrackFillType { Full, SecondTrack, Standalone };
87 #ifdef ENABLE_PRODUCTION_CODE
88 bool Fill(TrTrackR *trackPtr, TrTrackFillType type = TrTrackFillType::Full);
89 bool FillElectronVars(TrTrackR *trackPtr,
float zEcalCOG,
bool refitKalman =
false);
91 void SetBeta(
double beta) {
_beta = beta; }
92 void SetMC(
bool isMC) {
_isMC = isMC; }
184 #ifdef ENABLE_PRODUCTION_CODE
185 bool Fill(TrTrackR *trackPtr);
186 bool FillElectronVars(TrTrackR *trackPtr,
bool refitKalman =
false);
LayerVariable< TrackFitOnlyVariable< float > > PartialRigidity
Rigidity obtained from a fit where the hit on an a given layer 'i' is not considered. See TrTrack::Fit for available fits.
std::map< TrTrack::Fit, std::map< TrTrack::Span, T >> TrackFitVariable
LayerVariable< TrackDistanceVariable< TrackSideVariable< unsigned int > > > NClusters
Total number of tracker clusters for each layer, within a given distance from the track...
TrackFitVariable< int > _fit_ID
LayerVariable< TrackSideVariable< float > > LayerEdep
Track hit (X and Y-side) energy deposition for each layer.
static const std::string BranchName
std::map< TrTrack::DistanceFromTrack, T > TrackDistanceVariable
LayerVariable< TrackFitOnlyVariable< float > > PartialInvRigErr
Inverse rigidity error obtained from a fit where a given layer 'i' was excluded. See TrTrack::Fit for...
TrackChargeVariable< float > ChargeRMS
Track charge RMS (including external layers) for each charge reconstruction. See TrTrack::ChargeRecoT...
OnDemandContainer container class description.
LayerVariable< float > ClusterSignalRatio
Ratio between cluster amplitude and its neighbouring 10 strips, for each layer.
TrackFitVariable< float > Theta
theta of track direction in AMS coordinate system, for each available fit and span. See TrTrack::Fit and TrTrack::Span for available fits and spans.
std::map< TrTrack::FitPositionHeight, T > TrackFitPosVariable
std::map< TrTrack::ChargeRecoType, T > TrackChargeVariable
bool FitIDExists(TrTrack::Fit fit, TrTrack::Span span) const
Check if a given combination of fit and span is available for this track.
LayerVariable< TrackChargeVariable< float > > LayerChargeXY
Track hit charge (for each single layer, using both sides clusters) for each available reconstruction...
LayerVariable< int > LayerChargeStatus
Track hit charge reconstruction status for each layer (this is a bitmask. Bits 0-11 refer to the X-si...
static const std::string BranchName
LayerVariable< TrackFitOnlyVariable< TrackSideVariable< float > > > PartialTrTrackFitPos
Track X and Y position obtained from a fit where a given layer 'i' was excluded. See TrTrack::Fit for...
TrackChargeVariable< float > InnerChargeRMS
Track charge RMS (inner tracker only) for each charge reconstruction. See TrTrack::ChargeRecoType for...
void Dump() const
Dump on screen container content.
std::map< TrTrack::Fit, T > TrackFitOnlyVariable
LayerVariable< TrackFitOnlyVariable< TrackSideVariable< float > > > PartialTrTrackResidual
Track X and Y residuals obtained from a fit where the hit on an a given layer 'i' is not considered...
Container class for base Trd info.
LayerVariable< float > TrackFeetDistance
Track distance to the inner tracker supporting feet for each layer.
LayerVariable< TrackDistanceVariable< TrackSideVariable< float > > > ClustersEdep
Total energy deposition of tracker clusters for each layer, within a given distance from the track...
LayerVariable< TrackFitOnlyVariable< TrackSideVariable< float > > > PartialTrChiSq
Normalized chi-square obtained from a fit where a given layer 'i' was excluded. See TrTrack::Fit for ...
LayerVariable< TrackSideVariable< float > > MaxClusterDistance
Distance from the track of the cluster with the highest energy deposition for each layer...
std::map< unsigned int, T > LayerVariable
Container class for base TrTrack info.
TrackFitVariable< TrackSideVariable< float > > TrChiSq
Normalized track chi-square (X and Y) for each available fit and span. See TrTrack::Fit and TrTrack::...
std::map< TrTrack::Side, T > TrackSideVariable
TrTrack::Span GetBestSpan(TrTrack::Fit fit=TrTrack::Fit::Choutko) const
Get the best Span available for this track.
TrackChargeVariable< float > UnbiasedCharge
"Unbiased" tracker charge for each charge reconstruction. It is a simple truncated mean between the h...
Mixin class to add "read-on-demand" behavior to an existing container class.
TrackFitPosVariable< TrackFitVariable< TrackSideVariable< float > > > TrTrackFitPos
Track X and Y position at different heights in AMS and for each available fit and span...
std::array< float, 2 > DirectionalStoermerCutoff
Stoermer cutoff estimated by the TrdK track direction (for both negative and positive particles) ...
TrackFitVariable< float > Phi
phi of track direction in AMS coordinate system, for each available fit and span. See TrTrack::Fit an...
TrackChargeVariable< float > InnerCharge
Track charge (inner tracker only) for each available reconstruction. See TrTrack::ChargeRecoType for ...
LayerVariable< TrackSideVariable< float > > MaxClusterEdep
Max cluster energy deposit for each layer, for each side.
LayerVariable< std::array< float, 3 > > TrTrackHitPos
X,Y and Z position of hit on each layer, if available.
void Clear()
Clear container content.
Container class for additional TrTrack info.
LayerVariable< TrackChargeVariable< TrackSideVariable< float > > > LayerCharge
Track hit charge (X and Y-side) for each layer, for each charge reconstruction. See TrTrack::ChargeRe...
TrackFitVariable< float > InvRigErr
Error on the deflection ( = 1 / rigidity) estimation, for each available fit and span. See TrTrack::Fit and TrTrack::Span for available fits and spans.
Accessor class for additional TrTrack info.
TrackFitVariable< float > RigidityRICH
Track rigidity at RICH for each available fit and span (only available for Kalman fit)...
Accessor class for base TrTrack info.
Accessor class for base TrTrack info reconstructed without Tof information.
static const std::string BranchName
std::bitset< 9 > GetTrackPattern(TrTrack::Side side)
Get the track pattern for a given tracker side. One bit per layer, set to 1 if there is a hit on that...
TrackFitVariable< int > _fit_ID
needed to get basic info without computing twice
static const std::string BranchName
TrackFitVariable< float > Rigidity
Track rigidity, corrected for time-dependent rigidity scale shifts and geometry volume correction...
TrackFitVariable< float > RigidityTOI
Track rigidity at Top-Of-Instrument, for both downward and upward going partitcles, for each available fit and span (only available for Kalman fit). See TrTrack::Fit and TrTrack::Span for available fits and spans.
TrackChargeVariable< float > Charge
Track charge (including external layers) for each available reconstruction. See TrTrack::ChargeRecoTy...
const TrTrackBaseData * trkBase
void Dump() const
Dump on screen container content.
LayerVariable< TrackFitVariable< TrackSideVariable< float > > > TrTrackResidual
Track X and Y residuals in each layer for each available fit and span. See TrTrack::Fit and TrTrack::...
float FitCharge
Initial charge estimate used for track re-fitting.
Accessor class for base TrTrack info about the second track.
void Clear()
Clear container content.