12 const char* elecArmName,
const char* hadArmName,
13 const char* coinname) :
15 fCoinDetName(coinname),
17 felecArmName(elecArmName),
18 fhadArmName(hadArmName),
53 cout <<
"*************************************************" << endl;
54 cout <<
"Initializing THcNPSCointTime Physics Modue" << endl;
55 cout <<
"Hadron Arm -------> " <<
fhadArmName << endl;
56 cout <<
"Electron Arm -------> " <<
felecArmName << endl;
58 cout <<
"**************************************************" << endl;
87 cout <<
"THcCoinTime module Cannnot find TrigDet = " <<
fCoinDetName.
Data() << endl;
137 {
"epCoinTime1_ROC1",
"ROC1 Corrected ep Coincidence Time, NPS & HMS 3/4",
"fROC1_epCoinTime1"},
138 {
"epCoinTime2_ROC1",
"ROC1 Corrected ep Coincidence Time, NPS & El-Real",
"fROC1_epCoinTime2"},
139 {
"epCoinTime_NPS",
"NPS Corrected ep Coincidence Time",
"fNPS_epCoinTime"},
140 {
"epCoinTime_HMS",
"HMS Corrected ep Coincidence Time",
"fHMS_epCoinTime"},
142 {
"CoinTime1_RAW_ROC1",
"ROC1 RAW Coincidence Time, NPS & HMS 3/4",
"fROC1_RAW_CoinTime1"},
143 {
"CoinTime2_RAW_ROC1",
"ROC1 RAW Coincidence Time, NPS & El-Real",
"fROC1_RAW_CoinTime2"},
144 {
"CoinTime1_RAW_ROC1_NoTrack",
"ROC1 RAW Coincidence Time w/o Track Param, NPS & HMS 3/4",
"fROC1_RAW_CoinTime1_NoTrack"},
145 {
"CoinTime2_RAW_ROC1_NoTrack",
"ROC1 RAW Coincidence Time w/o Track Paarm, NPS & El-Real",
"fROC1_RAW_CoinTime2_NoTrack"},
146 {
"CoinTime_RAW_NPS",
"NPS RAW Coincidence Time",
"fNPS_RAW_CoinTime"},
147 {
"CoinTime_RAW_HMS",
"HMS RAW Coincidence Time",
"fHMS_RAW_CoinTime"},
149 {
"DeltaHMSPathLength",
"DeltaHMSpathLength (cm)",
"fDeltaHMSpathLength"},
151 {
"elec_coinCorr",
"",
"elec_coinCorr"},
152 {
"had_coinCorr_proton",
"",
"had_coinCorr_proton"},
163 if( !
IsOK() )
return -1;
178 if( !hms_trkifo )
return 1;
194 if( cluster.E() > ClusterMaxE ) {
195 ClusterMaxE = cluster.E();
201 NPS_FPtime = cluster.GetTime();
214 if (NPS_FPtime == -2000 || HMS_FPtime == -2000)
return 1;
215 if (NPS_FPtime == -1000 || HMS_FPtime == -1000)
return 1;
217 fDeltaHMSpathLength = -1.0*(12.462*hms_xpfp + 0.1138*hms_xpfp*hms_xfp - 0.0154*hms_xfp - 72.292*hms_xpfp*hms_xpfp - 0.0000544*hms_xfp*hms_xfp - 116.52*hms_ypfp*hms_ypfp);
Option_t Option_t TPoint TPoint const char mode
ClassImp(VDC::AnalyticTTDConv) using namespace std
R__EXTERN class THcParmList * gHcParms
static Int_t DefineVarsFromList(const void *list, EType type, EMode mode, const char *def_prefix, const TObject *obj, const char *prefix, const char *here, const char *comment_subst="")
THaAnalysisObject * FindModule(const char *name, const char *classname, bool do_error=true)
virtual THaDetector * GetDetector(const char *name)
THaTrack * GetGoldenTrack() const
Double_t GetTheta() const
Double_t GetTTheta() const
Double_t GetFPTime() const
THaTrackInfo * GetTrackInfo()
A dummy spectrometer apparatus for testing detectors.
Generic segmented shower detector.
vector< THcNPSCluster > GetClusters()
Double_t fHMScentralPathLen
Double_t fDeltaHMSpathLength
void Clear(Option_t *opt="")
Double_t fROC1_RAW_CoinTime1
Double_t fNPScentralPathLen
THcHallCSpectrometer * fHMSSpect
Double_t pNPS_TdcTime_ROC1
Double_t fROC1_RAW_CoinTime2_NoTrack
THcNPSCalorimeter * fNPSCalo
THcNPSApparatus * fNPSSpect
Double_t pELRE_TdcTime_ROC1
Double_t fROC1_epCoinTime2
void Reset(Option_t *opt="")
virtual Int_t ReadDatabase(const TDatime &date)
Double_t had_coinCorr_proton
Double_t fNPS_RAW_CoinTime
THcNPSCoinTime(const char *name, const char *description, const char *elecArmName="", const char *hadArmName="", const char *coinname="")
Double_t fHMS_RAW_CoinTime
Double_t fROC1_epCoinTime1
Double_t fROC1_RAW_CoinTime2
Double_t pHMS_TdcTime_ROC1
virtual Int_t Process(const THaEvData &)
virtual Int_t DefineVariables(EMode mode=kDefine)
virtual ~THcNPSCoinTime()
Double_t fROC1_RAW_CoinTime1_NoTrack
Int_t LoadParmValues(const DBRequest *list, const char *prefix="")
Double_t Get_CT_Trigtime(Int_t ii)
const char * Data() const
Expr< UnaryOp< Sqrt< T >, Expr< A, T, D, D2, R >, T >, T, D, D2, R > sqrt(const Expr< A, T, D, D2, R > &rhs)
constexpr Double_t DegToRad()