4#include "KVDataPatch_CorrectEtalonModuleIDCode.h"
5#include <KVINDRAReconNuc.h>
6#include <KVINDRAReconEvent.h>
20 SetTitle(
Class()->GetTitle());
44 return (dataset ==
"INDRA_camp5"
45 && (datatype ==
"root" || datatype ==
"ident")
46 && dataseries ==
"1.8" && datareleasenumber == 11);
82 if (
N->IsIdentified() &&
N->GetRingNumber() > 9 &&
N->StoppedInCsI() && (
N->GetSiLi() ||
N->GetSi75())
89 N->SetIdentification(idr,
N->GetIdentifyingTelescope());
91 N->GetParameters()->SetValue(
"KVDataPatch_CorrectEtalonModuleIDCode",
"correction applied");
97 Bool_t ok =
N->CoherencyChIoCsI(ID);
99 N->SetIdentification(&ID,
N->GetIdentifyingTelescope());
101 N->GetParameters()->SetValue(
"KVDataPatch_CorrectEtalonModuleIDCode",
"correction applied");
104 Warning(
"ApplyToParticle",
"Rustine failed for the following particle:");
105 N->GetParameters()->SetValue(
"KVDataPatch_CorrectEtalonModuleIDCode",
"correction failed");
121 std::cout <<
"Correct bad attribution of IDCode & calibration of particles stopping" << std::endl;
122 std::cout <<
"in CsI detectors behind etalon telescopes." << std::endl;
123 std::cout <<
"Gammas (IDcode=0) and light charged particles (IDcode=2) were given" << std::endl;
124 std::cout <<
"IDcode=5 due to a bug in v1.8.11 (lp:bug#1271634)" << std::endl << std::endl;
125 std::cout <<
"The status of the correction can be obtained from parameter" << std::endl;
126 std::cout <<
"KVDataPatch_CorrectEtalonModuleIDCode: " << std::endl;
127 std::cout <<
" ='correction applied' or 'correction failed'" << std::endl;
virtual Bool_t IsType(const Char_t *typ) const
Patch for correcting bad id-code & calibration for particles stopping in CsI member of etalon modules...
void ApplyToEvent(KVReconstructedEvent *e)
Just used to set pointer to current event.
virtual Bool_t IsRequired(TString dataset, TString datatype, Int_t runnumber, TString dataseries, Int_t datareleasenumber, const TList *streamerinfolist)
virtual void PrintPatchInfo() const
void ApplyToParticle(KVReconstructedNucleus *)
virtual ~KVDataPatch_CorrectEtalonModuleIDCode()
Destructor.
KVINDRAReconEvent * fEvent
pointer to current event
Event reconstructed from energy losses in INDRA multidetector.
Nuclei reconstructed from data measured in the INDRA array.
Full result of one attempted particle identification.
Bool_t IDattempted
=kTRUE if identification was attempted
Bool_t IDOK
general quality of identification, =kTRUE if acceptable identification made
Int_t IDcode
a general identification code for this type of identification
virtual void AcceptParticleForAnalysis(KVReconstructedNucleus *) const
Event containing KVReconstructedNucleus nuclei reconstructed from hits in detectors.
Nuclei reconstructed from data measured by a detector array .
virtual void Warning(const char *method, const char *msgfmt,...) const
RooCmdArg ClassName(const char *name)