4 #include <Containers/Utils.hpp>
11 constexpr std::array<float, 9>
fid_R = {62, 62, 46, 46, 46, 46, 46, 46, 43};
12 constexpr std::array<float, 9>
fid_Y = {47, 40, 44, 44, 36, 36, 44, 44, 29};
14 bool IsInsideFiducial(
unsigned int ilayer, NAIA::TrTrack::Fit fitType, NAIA::TrTrack::Span spanType,
17 assert(ilayer > 0 && ilayer < 10);
18 auto layer =
static_cast<NAIA::TrTrack::FitPositionHeight
>(ilayer-1);
20 float x =
event.trTrackBase->TrTrackFitPos[layer][fitType][spanType][NAIA::TrTrack::Side::X];
21 float y =
event.trTrackBase->TrTrackFitPos[layer][fitType][spanType][NAIA::TrTrack::Side::Y];
23 if (layer == NAIA::TrTrack::FitPositionHeight::Layer9) {
24 if (std::fabs(x) >
fid_R[layer] || std::fabs(y) >
fid_Y[layer])
27 if (std::sqrt(x * x + y * y) >
fid_R[layer] || std::fabs(y) >
fid_Y[layer])
36 if (!event.trTrackBase->FitIDExists(fitType, spanType))
39 unsigned int nhits = 0;
41 for (
unsigned int layer = 2; layer < 9; ++layer)
62 if (!event.trTrackBase->FitIDExists(fitType, spanType))
71 if (!event.trTrackBase->FitIDExists(fitType, spanType))
constexpr std::array< float, 9 > fid_R
constexpr std::array< float, 9 > fid_Y
bool IsInsideFiducial(unsigned int ilayer, NAIA::TrTrack::Fit fitType, NAIA::TrTrack::Span spanType, NAIA::Event &event)
InnerFiducialVolume(NAIA::TrTrack::Fit fitType, NAIA::TrTrack::Span spanType)
L1FiducialVolume(NAIA::TrTrack::Fit fitType, NAIA::TrTrack::Span spanType)
L9FiducialVolume(NAIA::TrTrack::Fit fitType, NAIA::TrTrack::Span spanType)