10#define TRGECLCLUSTER_SHORT_NAMES
11#include <framework/gearbox/Unit.h>
13#include "trg/ecl/TrgEclTiming.h"
44 const std::vector<double>& HitTCEnergy,
45 const std::vector<double>& HitTCTiming)
58 double EventTiming = 0;
63 }
else if (method == 1) {
79 double FastestEnergy = 0;
80 double FastestTiming = 9999;
84 for (
int ihit = 0; ihit < hit_size; ihit++) {
87 FastestTCId =
m_TCId[ihit];
92 if (FastestTCId < 81) {
94 }
else if (FastestTCId < 513) {
104 return FastestTiming;
113 double maxEnergy = 0;
114 double maxTiming = 0;
118 for (
int ihit = 0; ihit < hit_size; ihit++) {
127 }
else if (maxTCId < 513) {
157 std::vector<double> maxEnergy;
158 std::vector<double> maxTiming;
165 maxEnergy.resize(NtopTC, 0);
166 maxTiming.resize(NtopTC, 0);
170 double EventTiming = 0;
172 for (
int iNtopTC = 0; iNtopTC < NtopTC ; iNtopTC++) {
173 for (
int ihit = 0; ihit < hit_size; ihit++) {
180 }
else if (iNtopTC > 0) {
181 if (maxEnergy[iNtopTC - 1] >
m_TCEnergy[ihit] &&
188 E_sum += maxEnergy[iNtopTC];
189 EventTiming += maxEnergy[iNtopTC] * maxTiming[iNtopTC];
192 EventTiming /= E_sum;
196 }
else if (maxTCId < 513) {
double getEventTiming00()
Fastest TC Timing.
std::vector< double > m_TCTiming
TC Timing.
void Setup(const std::vector< int > &, const std::vector< double > &, const std::vector< double > &)
SetUp.
int m_EventTimingQualityFlag
Event timing quality flag (for SVD DAQ) 3:= super-fine timing 2:= fine timing 1:= other 0:= no TC hit...
int m_Source
Timing Source (FWD, Barrel, Backward)
int m_EventTimingTCThetaId
TC ThetaId of event timing source.
std::vector< double > m_TCEnergy
TC Energy.
double getEventTiming02()
Energy weighted Timing of Top 3 energetic TC.
int m_EventTimingTCId
TCId of event timing source.
double getEventTiming01()
The Most energetic TC Timing.
std::vector< int > m_TCId
TC Id.
virtual ~TrgEclTiming()
Constructor.
std::vector< double > m_EventTimingQualityThreshold
energy threshold(low, high) for quality flag (GeV)
double getEventTiming(int)
get Evnet-timing
TrgEclTiming()
Constructor.
TrgEclMapping * m_TCMap
Object of TC Mapping.
double m_EventTimingTCEnergy
TC Energy of event timing source.
Abstract base class for different kinds of events.