4 #include "KVINDRABackwardGroupReconstructor.h"
16 PART.SetParameter(
"UseFullChIoEnergyForCalib", !(theChio && theChio->GetNHits() > 1));
18 if (PART.GetStoppingDetector()->IsType(
"CSI")) {
21 ok = CoherencyChIoCsI(PART);
25 ok = PART.IsIdentified() && identifying_telescope;
64 if (PART->
GetIDCode() == KVINDRA::IDCodes::ID_CI_SI_COHERENCY
65 || PART->
GetIDCode() == KVINDRA::IDCodes::ID_CI_COHERENCY
66 || PART->
GetIDCode() == KVINDRA::IDCodes::ID_CI_MULTIHIT)
70 auto csi = GetCsI(PART);
73 if (csi->IsCalibrated(
Form(
"Z=%d,A=%d",PART->
GetZ(),PART->
GetA())) && csi->GetDetectorSignalValue(
"TotLight") > 0) {
76 fECsI = DoBeryllium8Calibration(PART);
79 fECsI = csi->GetCorrectedEnergy(PART, -1.,
kFALSE);
82 SetNoCalibrationStatus(PART);
85 if (fECsI <= 0 && (PART->
GetECode() != KVINDRA::ECodes::SOME_ENERGY_LOSSES_CALCULATED)) {
86 SetBadCalibrationStatus(PART);
100 && theChio->IsCalibrated()) {
103 if (stopped_in_chio) {
107 theChio->SetEResAfterDetector(ERES);
109 fEChIo = theChio->GetCorrectedEnergy(PART, -1., ci_transmission);
111 if (!stopped_in_chio && ERES > 0) {
112 if (!CalculateChIoDEFromResidualEnergy(PART, ERES))
return;
117 if (!stopped_in_chio && ERES > 0) {
118 if (!CalculateChIoDEFromResidualEnergy(PART, ERES))
return;
122 SetNoCalibrationStatus(PART);
161 if (IDcsi && !IDcsi->
IDOK) {
162 if (IDcicsi && IDcicsi->
IDOK) {
164 identifying_telescope = idt_cicsi;
170 if (IDcsi && IDcsi->
IDOK) {
177 if (IDcicsi && IDcicsi->
IDOK) {
181 IDcicsi->
SetComment(
"Possible pile-up in ChIo");
187 identifying_telescope = idt_csi;
char * Form(const char *fmt,...)
virtual const Char_t * GetType() const
const KVSeqCollection * GetIDTelescopes() const
Base class for all detectors or associations of detectors in array which can identify charged particl...
Reconstruct data in rings 10-17 of INDRA.
void DoCalibration(KVReconstructedNucleus *PART) override
Full result of one attempted particle identification.
Bool_t IDOK
general quality of identification, =kTRUE if acceptable identification made
void SetComment(const Char_t *c)
Int_t Z
Z of particle found (if Zident==kTRUE)
Bool_t GetBoolValue(const Char_t *name) const
Bool_t IsIsotope(Int_t Z, Int_t A) const
Int_t GetZ() const
Return the number of proton / atomic number.
KVNameValueList * GetParameters() const
void SetParameter(const Char_t *name, ValType value) const
void SetEnergy(Double_t e)
Nuclei reconstructed from data measured by a detector array .
virtual Int_t GetECode() const
KVIdentificationResult * GetIdentificationResult(Int_t i)
const KVReconNucTrajectory * GetReconstructionTrajectory() const
virtual Int_t GetIDCode() const
virtual TObject * FindObjectByType(const Char_t *) const