KaliVeda
Toolkit for HIC analysis
KVINDRA Class Reference

Detailed Description

INDRA multidetector array geometry.

Definition at line 66 of file KVINDRA.h.

#include <KVINDRA.h>

Inheritance diagram for KVINDRA:

Public Types

enum  ECodes {
  NO_CALIBRATION_ATTEMPTED = 0 , NORMAL_CALIBRATION = 1 , SOME_ENERGY_LOSSES_CALCULATED = 2 , WARNING_CSI_MAX_ENERGY = 3 ,
  WARNING_CSI_NO_MASS_ID = 4 , BAD_CALIBRATION = 15
}
 Calibration quality codes attributed to particles reconstructed from data. More...
 
enum  IDCodes {
  NO_IDENTIFICATION = 14 , ID_STOPPED_IN_FIRST_STAGE = 5 , ID_GAMMA = 0 , ID_NEUTRON = 1 ,
  ID_PHOSWICH = 2 , ID_CSI_PSA = 2 , ID_SI_CSI = 3 , ID_SI75_SILI = 3 ,
  ID_SILI_CSI = 3 , ID_CI_SI = 4 , ID_CI_CSI = 4 , ID_CI_SI75 = 4 ,
  ID_CI_SI_COHERENCY = 6 , ID_CI_COHERENCY = 7 , ID_CI_MULTIHIT = 8 , ID_CSI_FRAGMENT = 9 ,
  ID_CSI_MASS_OUT_OF_RANGE = 10 , ID_SI_PSA = 111
}
 Identification quality codes attributed to particles reconstructed from data. More...
 
- Public Types inherited from KVMultiDetArray
enum  EFilterType { kFilterType_Geo , kFilterType_GeoThresh , kFilterType_Full }
 filter types. values of fFilterType More...
 
- Public Types inherited from KVBase
enum  EKaliVedaBits { kIsKaliVedaObject = BIT(23) }
 
enum class  GetX_status {
  ok , above_maximum , below_minimum , at_maximum ,
  at_minimum
}
 
- Public Types inherited from TObject
enum  EDeprecatedStatusBits
 
enum  EStatusBits
 

Public Member Functions

 KVINDRA ()
 
virtual ~ KVINDRA ()
 
virtual Bool_t ArePHDSet () const
 
void Build (Int_t run=-1) override
 Correspondance between CsI detectors and pin lasers is set up if known. More...
 
void BuildGeometry ()
 
virtual void cd (Option_t *option="")
 ................ inline functions More...
 
Short_t GetBadIDCode () const override
 
KVLayer * GetChIoLayer ()
 
virtual KVChIoGetChIoOf (const Char_t *detname)
 
Short_t GetCoherencyIDCode () const override
 
TString GetCsIIDType () const
 
KVINDRADetectorGetDetector (const Char_t *name) const override
 
virtual KVINDRADetectorGetDetectorByType (UInt_t cou, UInt_t mod, UInt_t type) const
 
void GetDetectorEvent (KVDetectorEvent *detev, const TSeqCollection *fired_dets=0) override
 
TString GetECodeMeaning (Int_t ec) const override
 
Int_t GetIDCodeForParticlesStoppingInFirstStageOfTelescopes () const override
 
TString GetIDCodeMeaning (Int_t idc) const override
 
const KVSeqCollectionGetListOfChIo () const
 
const KVSeqCollectionGetListOfCsI () const
 
const KVSeqCollectionGetListOfPhoswich () const
 
const KVSeqCollectionGetListOfSi () const
 
Short_t GetMultiHitFirstStageIDCode () const override
 
UChar_t GetNormalCalibrationCode () const override
 
KVGroupReconstructorGetReconstructorForGroup (const KVGroup *) const override
 
UChar_t GetTrigger () const
 
KVINDRATriggerInfoGetTriggerInfo ()
 
void handle_ebyedat_raw_data_parameter (const char *param_name, uint16_t val)
 
void InitialiseRawDataReading (KVRawDataReader *) override
 
void MakeCalibrationTables (KVExpDB *) override
 Override base method in order to read ChIo pressures for each run. More...
 
virtual void PHDSet (Bool_t yes=kTRUE)
 
void SetIDCodeForIDTelescope (KVIDTelescope *) const override
 Set the INDRA-specific general identification code for the given telescope. More...
 
void SetPinLasersForCsI ()
 
void SetRawDataFromReconEvent (const KVReconstructedEvent &) override
 
void SetReconParametersInEvent (KVReconstructedEvent *) const override
 If "INDRA.EN" parameter has been set, we use it to set the event number. More...
 
void SetTrigger (UChar_t trig)
 
- Public Member Functions inherited from KVMultiDetArray
 KVMultiDetArray ()
 Default constructor. More...
 
 KVMultiDetArray (const Char_t *name, const Char_t *type="")
 Constructor with name and optional type. More...
 
virtual ~KVMultiDetArray ()
 destroy (delete) the MDA and all the associated structure, detectors etc. More...
 
virtual void AcceptAllECodes ()
 
virtual void AcceptAllIDCodes ()
 
void AcceptECodes (const KVNumberList &codelist)
 
void AcceptIDCodes (const KVNumberList &codelist)
 
virtual void AcceptParticleForAnalysis (KVReconstructedNucleus *) const
 
void CalculateIdentificationGrids ()
 For each IDtelescope in array, calculate an identification grid. More...
 
Bool_t CalParamsSet ()
 
void CheckStatusOfDetectors (KVDBRun *, const TString &="")
 
void Clear (Option_t *opt="") override
 
void CreateGeoManager (Double_t dx=500, Double_t dy=500, Double_t dz=500)
 
void Draw (Option_t *option="") override
 
virtual void FillDetectorList (KVReconstructedNucleus *rnuc, KVHashList *DetList, const KVString &DetNames)
 
void FillListOfIDTelescopes (KVIDGraph *gr) const
 
const KVNumberListGetAcceptedECodes () const
 
const KVNumberListGetAcceptedIDCodes () const
 
virtual KVMultiDetArrayGetArray (const Char_t *) const
 
virtual const KVSeqCollectionGetArrays () const
 
virtual UChar_t GetCalculatedCalibrationCode () const
 
TListGetCalibrationStatusOfDetectors ()
 
UInt_t GetCurrentRunNumber () const
 
TString GetDataSet () const
 
const KVSeqCollectionGetExtraRawDataSignals () const
 
const KVSeqCollectionGetFiredDetectors () const
 
const KVSeqCollectionGetFiredSignals () const
 
TGeoManagerGetGeometry () const
 Return pointer to the (ROOT) geometry of the array. More...
 
KVGroupGetGroup (const Char_t *name) const
 
KVGroupGetGroup (Int_t number) const
 
KVIDTelescopeGetIDTelescope (const Char_t *name) const
 Return pointer to DeltaE-E ID Telescope with "name". More...
 
KVSeqCollectionGetIDTelescopesWithType (const Char_t *type)
 
KVUniqueNameList GetIDTelescopeTypes ()
 
KVSeqCollectionGetListOfIDTelescopes () const
 
KVGeoNavigatorGetNavigator () const
 
virtual UChar_t GetNoCalibrationCode () const
 
Int_t GetNumberOfGroups () const
 
virtual const Char_tGetPartSeedCond () const
 
KVNameValueListGetReconParameters ()
 
const KVNameValueListGetReconParameters () const
 
TListGetStatusOfIDTelescopes ()
 
KVTargetGetTarget ()
 
virtual Double_t GetTargetEnergyLossCorrection (KVReconstructedNucleus *)
 
virtual Double_t GetTotalSolidAngle (void) const
 
const TSeqCollectionGetTrajectories () const
 
KVUpDaterGetUpDater ()
 
Short_t GetZminCode () const
 
Bool_t HandledRawData () const
 
Bool_t HandleRawDataBuffer (MFMBufferReader &)
 
virtual Bool_t HandleRawDataEvent (KVRawDataReader *)
 
Bool_t IDParamsSet ()
 
void init ()
 
virtual void InitializeIDTelescopes ()
 
Bool_t IsBeingDeleted ()
 
virtual Bool_t IsBuilt () const
 
Bool_t IsRemoving ()
 
Bool_t IsSimMode () const
 
void MakeHistogramsForAllIDTelescopes (KVSeqCollection *list, Int_t dimension=100)
 
Bool_t ParamsSet ()
 
void prepare_to_handle_new_raw_data ()
 reset acquisition parameters etc. before reading new raw data event More...
 
void PrintCalibStatusOfDetectors ()
 
void PrintStatusOfIDTelescopes ()
 
Bool_t ReadGridsFromAsciiFile (const Char_t *) const
 
void RecursiveTrajectoryClustering (KVGeoDetectorNode *N, KVUniqueNameList &tried_trajectories, KVUniqueNameList &multitraj_nodes, KVUniqueNameList &detectors_of_group)
 
virtual void SetCalibratorParameters (KVDBRun *, const TString &="")
 
void SetCurrentRunNumber (UInt_t r)
 
void SetDetectorThicknesses ()
 
void SetDetectorTransparency (Char_t)
 Modify the transparency of detector volumes in OpenGL view. More...
 
void SetFilterType (Int_t t)
 
void SetGeometry (TGeoManager *)
 
void SetGridsInTelescopes (UInt_t run)
 
virtual void SetIdentifications ()
 
void SetNavigator (KVGeoNavigator *geo)
 
virtual void SetParameters (UInt_t n, Bool_t physics_parameters_only=kFALSE)
 
virtual void SetPartSeedCond (const Char_t *cond)
 
virtual void SetRunCalibrationParameters (UShort_t n)
 
virtual void SetRunIdentificationParameters (UShort_t n)
 
virtual void SetSimMode (Bool_t on=kTRUE)
 
virtual void SetTarget (KVTarget *target)
 
- Public Member Functions inherited from KVGeoStrucElement
 KVGeoStrucElement ()
 Default constructor. More...
 
 KVGeoStrucElement (const Char_t *name, const Char_t *type="")
 Create a geometry structure element with given name and type. More...
 
virtual ~KVGeoStrucElement ()
 Destructor. More...
 
virtual void Add (KVBase *)
 
void Clear (Option_t *opt="") override
 Empty lists of detectors, daughter structures, and parent structures. More...
 
void ClearDetectors (const Char_t *type="")
 
void ClearStructures (const Char_t *type="")
 
virtual Bool_t Contains (KVBase *name) const
 
virtual Bool_t Fired (Option_t *opt="any") const
 
KVDetectorGetDetectorAny (const Char_t *name)
 
KVDetectorGetDetectorByType (const Char_t *type) const
 Return detector in this structure with given type. More...
 
KVSeqCollectionGetDetectorNameList (const Char_t *name) const
 
KVSeqCollectionGetDetectors ()
 
const KVSeqCollectionGetDetectors () const
 
KVSeqCollectionGetDetectorTypeList (const Char_t *type) const
 
const KVSeqCollectionGetParents () const
 
template<typename ParentClass >
ParentClass * GetParentStructure () const
 
KVGeoStrucElementGetParentStructure (const Char_t *type, const Char_t *name="") const
 
KVGeoStrucElementGetStructure (const Char_t *name) const
 
KVGeoStrucElementGetStructure (const Char_t *type, const Char_t *name) const
 Get structure with type and name. More...
 
KVGeoStrucElementGetStructure (const Char_t *type, Int_t num) const
 Get structure with type and number. More...
 
const KVSeqCollectionGetStructures () const
 
KVSeqCollectionGetStructureTypeList (const Char_t *type) const
 
bool OwnsDaughters () const
 
bool OwnsDetectors () const
 
void Print (Option_t *option="") const override
 
void RehashParentList ()
 
virtual void Remove (KVBase *)
 
void SetOwnsDaughters (Bool_t yes=kTRUE)
 
void SetOwnsDetectors (Bool_t yes=kTRUE)
 
void Sort (Bool_t order=kSortAscending)
 
void SortDetectors (Bool_t order=kSortAscending)
 
void SortStructures (Bool_t order=kSortAscending)
 
- Public Member Functions inherited from KVBase
 KVBase ()
 Default constructor. More...
 
 KVBase (const Char_t *name, const Char_t *title="")
 Ctor for object with given name and type. More...
 
 KVBase (const KVBase &)
 copy ctor More...
 
void Copy (TObject &) const override
 Make a copy of this object. More...
 
const Char_tGetLabel () const
 
UInt_t GetNumber () const
 
virtual TObjectGetObject () const
 
virtual const Char_tGetType () const
 
Bool_t HasLabel () const
 
virtual Bool_t IsCalled (const Char_t *name) const
 
Bool_t IsLabelled (const Char_t *l) const
 
virtual Bool_t IsType (const Char_t *typ) const
 
virtual void List ()
 
KVBaseoperator= (const KVBase &)
 copy assignment operator More...
 
void SetLabel (const Char_t *lab)
 
virtual void SetNumber (UInt_t num)
 
virtual void SetType (const Char_t *str)
 
- Public Member Functions inherited from TNamed
 TNamed ()
 
 TNamed (const char *name, const char *title)
 
 TNamed (const TNamed &named)
 
 TNamed (const TString &name, const TString &title)
 
virtual ~TNamed ()
 
TObjectClone (const char *newname="") const override
 
Int_t Compare (const TObject *obj) const override
 
virtual void FillBuffer (char *&buffer)
 
const char * GetName () const override
 
const char * GetTitle () const override
 
ULong_t Hash () const override
 
TClassIsA () const override
 
Bool_t IsSortable () const override
 
void ls (Option_t *option="") const override
 
TNamedoperator= (const TNamed &rhs)
 
virtual void SetName (const char *name)
 
virtual void SetNameTitle (const char *name, const char *title)
 
virtual void SetTitle (const char *title="")
 
virtual Int_t Sizeof () const
 
void Streamer (TBuffer &) override
 
void StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b)
 
- Public Member Functions inherited from TObject
 TObject ()
 
 TObject (const TObject &object)
 
virtual ~TObject ()
 
void AbstractMethod (const char *method) const
 
virtual void AppendPad (Option_t *option="")
 
virtual void Browse (TBrowser *b)
 
ULong_t CheckedHash ()
 
virtual const char * ClassName () const
 
virtual void Delete (Option_t *option="")
 
virtual Int_t DistancetoPrimitive (Int_t px, Int_t py)
 
virtual void DrawClass () const
 
virtual TObjectDrawClone (Option_t *option="") const
 
virtual void Dump () const
 
virtual void Error (const char *method, const char *msgfmt,...) const
 
virtual void Execute (const char *method, const char *params, Int_t *error=nullptr)
 
virtual void Execute (TMethod *method, TObjArray *params, Int_t *error=nullptr)
 
virtual void ExecuteEvent (Int_t event, Int_t px, Int_t py)
 
virtual void Fatal (const char *method, const char *msgfmt,...) const
 
virtual TObjectFindObject (const char *name) const
 
virtual TObjectFindObject (const TObject *obj) const
 
virtual Option_tGetDrawOption () const
 
virtual const char * GetIconName () const
 
virtual char * GetObjectInfo (Int_t px, Int_t py) const
 
virtual Option_tGetOption () const
 
virtual UInt_t GetUniqueID () const
 
virtual Bool_t HandleTimer (TTimer *timer)
 
Bool_t HasInconsistentHash () const
 
virtual void Info (const char *method, const char *msgfmt,...) const
 
virtual Bool_t InheritsFrom (const char *classname) const
 
virtual Bool_t InheritsFrom (const TClass *cl) const
 
virtual void Inspect () const
 
void InvertBit (UInt_t f)
 
Bool_t IsDestructed () const
 
virtual Bool_t IsEqual (const TObject *obj) const
 
virtual Bool_t IsFolder () const
 
R__ALWAYS_INLINE Bool_t IsOnHeap () const
 
R__ALWAYS_INLINE Bool_t IsZombie () const
 
void MayNotUse (const char *method) const
 
virtual Bool_t Notify ()
 
void Obsolete (const char *method, const char *asOfVers, const char *removedFromVers) const
 
void operator delete (void *ptr)
 
void operator delete (void *ptr, void *vp)
 
void operator delete[] (void *ptr)
 
void operator delete[] (void *ptr, void *vp)
 
voidoperator new (size_t sz)
 
voidoperator new (size_t sz, void *vp)
 
voidoperator new[] (size_t sz)
 
voidoperator new[] (size_t sz, void *vp)
 
TObjectoperator= (const TObject &rhs)
 
virtual void Paint (Option_t *option="")
 
virtual void Pop ()
 
virtual Int_t Read (const char *name)
 
virtual void RecursiveRemove (TObject *obj)
 
void ResetBit (UInt_t f)
 
virtual void SaveAs (const char *filename="", Option_t *option="") const
 
virtual void SavePrimitive (std::ostream &out, Option_t *option="")
 
void SetBit (UInt_t f)
 
void SetBit (UInt_t f, Bool_t set)
 
virtual void SetDrawOption (Option_t *option="")
 
virtual void SetUniqueID (UInt_t uid)
 
void StreamerNVirtual (TBuffer &ClassDef_StreamerNVirtual_b)
 
virtual void SysError (const char *method, const char *msgfmt,...) const
 
R__ALWAYS_INLINE Bool_t TestBit (UInt_t f) const
 
Int_t TestBits (UInt_t f) const
 
virtual void UseCurrentStyle ()
 
virtual void Warning (const char *method, const char *msgfmt,...) const
 
virtual Int_t Write (const char *name=nullptr, Int_t option=0, Int_t bufsize=0)
 
virtual Int_t Write (const char *name=nullptr, Int_t option=0, Int_t bufsize=0) const
 

Static Public Attributes

static Char_t SignalTypes [16][3]
 Use this static array to translate EBaseIndra_type signal type to a string giving the signal type. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from KVMultiDetArray
static TGeoHMatrixGetVolumePositioningMatrix (Double_t distance, Double_t theta, Double_t phi, TGeoTranslation *postTrans=nullptr)
 
static KVMultiDetArrayMakeMultiDetector (const Char_t *dataset_name, Int_t run=-1, TString classname="KVMultiDetArray", KVExpDB *db=nullptr)
 
static void SetMakeMultiDetectorPhysicsParametersOnly (Bool_t on=kTRUE)
 
- Static Public Member Functions inherited from KVBase
static std::optional< TStringAbsoluteUnixPath (const TString &)
 
static Bool_t AreEqual (Double_t x, Double_t y, Long64_t maxdif=1)
 Comparison between two 64-bit floating-point values. More...
 
static void BackupFileWithDate (const Char_t *path)
 
static void CombineFiles (const Char_t *file1, const Char_t *file2, const Char_t *newfilename, Bool_t keep=kTRUE)
 
static void Deprecated (const char *method, const char *advice)
 
static Bool_t FindClassSourceFiles (const KVString &class_name, KVString &imp_file, KVString &dec_file, const KVString &dir_name=".")
 
static Bool_t FindExecutable (TString &exec, const Char_t *path="$(PATH)")
 
static const Char_tFindFile (const Char_t *search, TString &wfil)
 
static const Char_tGetBINDIRFilePath (const Char_t *namefile="")
 
static const Char_tGetDATABASEFilePath ()
 
static const Char_tGetDATADIRFilePath (const Char_t *namefile="")
 
template<typename ValType >
static ValType GetDataSetEnv (const KVString &dataset, const KVString &type, const ValType &defval={})
 
static const Char_tGetETCDIRFilePath (const Char_t *namefile="")
 
static const Char_tGetExampleFilePath (const Char_t *library, const Char_t *namefile)
 Return full path to example file for given library (="KVMultiDet", "BackTrack", etc.) More...
 
static const Char_tGetINCDIRFilePath (const Char_t *namefile="")
 
static const Char_tGetKVBuildDate ()
 Returns KaliVeda build date. More...
 
static const Char_tGetKVBuildDir ()
 Returns top-level directory used for build. More...
 
static const Char_tGetKVBuildTime ()
 Returns KaliVeda build time. More...
 
static const Char_tGetKVBuildType ()
 Returns KaliVeda build type (cmake build: Release, Debug, RelWithDebInfo, ...) More...
 
static const Char_tGetKVBuildUser ()
 Returns username of person who performed build. More...
 
static int GetKVMajorVersion ()
 
static int GetKVMinorVersion ()
 
static int GetKVPatchVersion ()
 
static const Char_tGetKVSourceDir ()
 Returns top-level directory of source tree used for build. More...
 
static const Char_tGetKVVersion ()
 Returns KaliVeda version string. More...
 
static const Char_tGetLIBDIRFilePath (const Char_t *namefile="")
 
static const Char_tGetListOfPlugins (const Char_t *base)
 
static const Char_tGetListOfPluginURIs (const Char_t *base)
 
static const Char_tGetPluginURI (const Char_t *base, const Char_t *plugin)
 
static void GetTempFileName (TString &base)
 
static const Char_tGetTEMPLATEDIRFilePath (const Char_t *namefile="")
 
static const Char_tGetWORKDIRFilePath (const Char_t *namefile="")
 
static const Char_tgitBranch ()
 Returns git branch of sources. More...
 
static const Char_tgitCommit ()
 Returns last git commit of sources. More...
 
static void InitEnvironment ()
 
static bool is_gnuinstall ()
 
static Bool_t IsEnvInit ()
 
static Bool_t IsThisAPlugin (const TString &uri, TString &base)
 
static TPluginHandlerLoadPlugin (const Char_t *base, const Char_t *uri="0")
 
static Bool_t OpenContextMenu (const char *method, TObject *obj, const char *alt_method_name="")
 
static void OpenTempFile (TString &base, std::ofstream &fp)
 
static void PrintSplashScreen ()
 Prints welcome message and infos on version etc. More...
 
static Double_t ProtectedGetX (const TF1 &func, Double_t val, GetX_status &status, std::optional< Double_t > xmin={}, std::optional< Double_t > xmax={})
 
static Double_t ProtectedGetX (const TF1 *func, Double_t val, GetX_status &status, std::optional< Double_t > xmin={}, std::optional< Double_t > xmax={})
 
static Bool_t SearchAndOpenKVFile (const Char_t *name, KVSQLite::database &dbfile, const Char_t *kvsubdir="")
 
static Bool_t SearchAndOpenKVFile (const Char_t *name, std::ifstream &file, const Char_t *kvsubdir="", KVLockfile *locks=0)
 
static Bool_t SearchAndOpenKVFile (const Char_t *name, std::ofstream &file, const Char_t *kvsubdir="", KVLockfile *locks=0)
 
static Bool_t SearchKVFile (const Char_t *name, TString &fullpath, const Char_t *kvsubdir="")
 
static const Char_tWorkingDirectory ()
 
- Static Public Member Functions inherited from TNamed
static TClassClass ()
 
static const char * Class_Name ()
 
static constexpr Version_t Class_Version ()
 
static const char * DeclFileName ()
 
- Static Public Member Functions inherited from TObject
static TClassClass ()
 
static const char * Class_Name ()
 
static constexpr Version_t Class_Version ()
 
static const char * DeclFileName ()
 
static Longptr_t GetDtorOnly ()
 
static Bool_t GetObjectStat ()
 
static void SetDtorOnly (void *obj)
 
static void SetObjectStat (Bool_t stat)
 
- Public Attributes inherited from TObject
 kBitMask
 
 kCanDelete
 
 kCannotPick
 
 kHasUUID
 
 kInconsistent
 
 kInvalidObject
 
 kIsOnHeap
 
 kIsReferenced
 
 kMustCleanup
 
 kNoContextMenu
 
 kNotDeleted
 
 kObjInCanvas
 
 kOverwrite
 
 kSingleKey
 
 kWriteDelete
 
 kZombie
 
- Protected Member Functions inherited from TObject
virtual void DoError (int level, const char *location, const char *fmt, va_list va) const
 
void MakeZombie ()
 
- Protected Attributes inherited from TNamed
TString fName
 
TString fTitle
 
- Protected Attributes inherited from TObject
 kOnlyPrepStep
 

Member Enumeration Documentation

◆ ECodes

Calibration quality codes attributed to particles reconstructed from data.

Enumerator
NO_CALIBRATION_ATTEMPTED 

particle stopped in detectors with no available calibration

NORMAL_CALIBRATION 

normal well-calibrated particle with no problems

SOME_ENERGY_LOSSES_CALCULATED 

particle calibration OK, with some detector energies calculated

WARNING_CSI_MAX_ENERGY 

particle calibration OK, although apparent energy would mean punching through the CsI

WARNING_CSI_NO_MASS_ID 

particle identified in CsI only in Z, not in A, therefore calculated energy untrustworthy

BAD_CALIBRATION 

calibration attempted but bad result (negative energies etc.)

Definition at line 172 of file KVINDRA.h.

◆ IDCodes

Identification quality codes attributed to particles reconstructed from data.

Enumerator
NO_IDENTIFICATION 

no identification either attempted or available for particle

ID_STOPPED_IN_FIRST_STAGE 

particle stopped in first detector of telescope, only minimum Z can be estimated

ID_GAMMA 

'gamma' particle detected in CsI

ID_NEUTRON 

'neutron' discriminated by coherency between CsI and Si-CsI identifications

ID_PHOSWICH 

particle identified in phoswich (campaigns 1-3)

ID_CSI_PSA 

particle identified in CsI detector by pulse shape analysis

ID_SI_CSI 

particle identified in Si-CsI telescope

ID_SI75_SILI 

particle identified in Si75-SiLi etalon telescope

ID_SILI_CSI 

particle identified in SiLi-CsI etalon telescope

ID_CI_SI 

particle identified in ChIo-Si telescope

ID_CI_CSI 

particle identified in ChIo-CsI telescope

ID_CI_SI75 

particle identified in ChIo-Si75 etalon telescope

ID_CI_SI_COHERENCY 

particle identified in ChIo-Si telescope in coincidence with light particle identified in CsI

ID_CI_COHERENCY 

particle stopped in ChIo revealed by coherency tests (Zmin)

ID_CI_MULTIHIT 

particles stopped in multiple Si (ring<10) or CsI (ring>9) behind same ChIo, bad identification

ID_CSI_FRAGMENT 

particle partially identified in CsI detector, with Z greater than identifiable

ID_CSI_MASS_OUT_OF_RANGE 

particle partially identified in CsI detector, mass out of range of apparent Z (pile-up?)

ID_SI_PSA 

particle identified in Si detector by pulse shape analysis

Definition at line 121 of file KVINDRA.h.

Constructor & Destructor Documentation

◆ KVINDRA()

KVINDRA::KVINDRA ( )

Default constructor Set up lists of ChIo, Si, CsI, Phoswich

Definition at line 85 of file KVINDRA.cpp.

◆ ~ KVINDRA()

virtual KVINDRA::~ KVINDRA ( )
virtual

Member Function Documentation

◆ ArePHDSet()

virtual Bool_t KVINDRA::ArePHDSet ( ) const
inlinevirtual

Definition at line 228 of file KVINDRA.h.

◆ Build()

void KVINDRA::Build ( Int_t  run = -1)
overridevirtual

Correspondance between CsI detectors and pin lasers is set up if known.

Reimplemented from KVMultiDetArray.

Definition at line 119 of file KVINDRA.cpp.

◆ BuildGeometry()

void KVINDRA::BuildGeometry ( )

Definition at line 639 of file KVINDRA.cpp.

◆ cd()

void KVINDRA::cd ( Option_t option = "")
inlinevirtual

................ inline functions

Definition at line 294 of file KVINDRA.h.

◆ GetBadIDCode()

Short_t KVINDRA::GetBadIDCode ( ) const
inlineoverridevirtual

Reimplemented from KVMultiDetArray.

Definition at line 206 of file KVINDRA.h.

◆ GetChIoLayer()

KVLayer * KVINDRA::GetChIoLayer ( void  )

Return pointer to layer in INDRA structure corresponding to ionisation chambers.

Definition at line 189 of file KVINDRA.cpp.

◆ GetChIoOf()

KVChIo * KVINDRA::GetChIoOf ( const Char_t detname)
virtual

Returns a pointer to the Ionisation Chamber placed directly in front of the detector "detname". If no ChIo is present, a null pointer is returned.

Definition at line 171 of file KVINDRA.cpp.

◆ GetCoherencyIDCode()

Short_t KVINDRA::GetCoherencyIDCode ( ) const
inlineoverridevirtual

Note that this returns the code for ChIo-Si coherency (i.e. particles identified in ChIo-Si after subtraction of other particles identified in the same group)

Reimplemented from KVMultiDetArray.

Definition at line 210 of file KVINDRA.h.

◆ GetCsIIDType()

TString KVINDRA::GetCsIIDType ( ) const

Definition at line 775 of file KVINDRA.cpp.

◆ GetDetector()

KVINDRADetector* KVINDRA::GetDetector ( const Char_t name) const
inlineoverridevirtual

Reimplemented from KVGeoStrucElement.

Definition at line 280 of file KVINDRA.h.

◆ GetDetectorByType()

KVINDRADetector * KVINDRA::GetDetectorByType ( UInt_t  cou,
UInt_t  mod,
UInt_t  type 
) const
virtual

Find a detector based on the old BaseIndra type definitions:

enum EBaseIndra_type { ChIo_GG=1, ChIo_PG,//=2 ChIo_T,//=3 Si_GG,//=4 Si_PG,//=5 Si_T,//=6 CsI_R,//=7 CsI_L,//=8 CsI_T,//=9 Si75_GG,//=10 Si75_PG,//=11 Si75_T,//=12 SiLi_GG,//=13 SiLi_PG,//=14 SiLi_T//=15 }; enum EBaseIndra_typePhos { Phos_R=1, Phos_L,//=2 Phos_T,//=3 };

Definition at line 240 of file KVINDRA.cpp.

◆ GetDetectorEvent()

void KVINDRA::GetDetectorEvent ( KVDetectorEvent detev,
const TSeqCollection fired_dets = 0 
)
overridevirtual

Overrides KVASMultiDetArray::GetDetectorEvent. If the list of fired detectors is given (meaning we are reading raw data) then we check that what we have read is in fact an INDRA event (see KVINDRATriggerInfo::IsINDRAEvent()) : if not, we do not try to find the hit groups.

Reimplemented from KVMultiDetArray.

Definition at line 868 of file KVINDRA.cpp.

◆ GetECodeMeaning()

TString KVINDRA::GetECodeMeaning ( Int_t  ec) const
inlineoverridevirtual

Reimplemented from KVMultiDetArray.

Definition at line 183 of file KVINDRA.h.

◆ GetIDCodeForParticlesStoppingInFirstStageOfTelescopes()

Int_t KVINDRA::GetIDCodeForParticlesStoppingInFirstStageOfTelescopes ( ) const
inlineoverridevirtual

Reimplemented from KVMultiDetArray.

Definition at line 202 of file KVINDRA.h.

◆ GetIDCodeMeaning()

TString KVINDRA::GetIDCodeMeaning ( Int_t  idc) const
inlineoverridevirtual

Return a symbolic name corresponding to the IDCode value

Reimplemented from KVMultiDetArray.

Definition at line 144 of file KVINDRA.h.

◆ GetListOfChIo()

const KVSeqCollection* KVINDRA::GetListOfChIo ( ) const
inline

Definition at line 238 of file KVINDRA.h.

◆ GetListOfCsI()

const KVSeqCollection* KVINDRA::GetListOfCsI ( ) const
inline

Definition at line 246 of file KVINDRA.h.

◆ GetListOfPhoswich()

const KVSeqCollection* KVINDRA::GetListOfPhoswich ( ) const
inline

Definition at line 250 of file KVINDRA.h.

◆ GetListOfSi()

const KVSeqCollection* KVINDRA::GetListOfSi ( ) const
inline

Definition at line 242 of file KVINDRA.h.

◆ GetMultiHitFirstStageIDCode()

Short_t KVINDRA::GetMultiHitFirstStageIDCode ( ) const
inlineoverridevirtual

Reimplemented from KVMultiDetArray.

Definition at line 216 of file KVINDRA.h.

◆ GetNormalCalibrationCode()

UChar_t KVINDRA::GetNormalCalibrationCode ( ) const
inlineoverridevirtual

return a general calibration code for correctly calibrated particles

Reimplemented from KVMultiDetArray.

Definition at line 114 of file KVINDRA.h.

◆ GetReconstructorForGroup()

KVGroupReconstructor * KVINDRA::GetReconstructorForGroup ( const KVGroup g) const
overridevirtual

Special INDRA group reconstructors:

Reimplemented from KVMultiDetArray.

Definition at line 895 of file KVINDRA.cpp.

◆ GetTrigger()

UChar_t KVINDRA::GetTrigger ( ) const
inline

Definition at line 261 of file KVINDRA.h.

◆ GetTriggerInfo()

KVINDRATriggerInfo* KVINDRA::GetTriggerInfo ( )
inline

Definition at line 271 of file KVINDRA.h.

◆ handle_ebyedat_raw_data_parameter()

void KVINDRA::handle_ebyedat_raw_data_parameter ( const char *  param_name,
uint16_t  val 
)

Definition at line 422 of file KVINDRA.cpp.

◆ InitialiseRawDataReading()

void KVINDRA::InitialiseRawDataReading ( KVRawDataReader r)
overridevirtual

Call this method just after opening a raw data file in order to perform any necessary initialisations, depending on the type of data

Mesytec data:

Reading data from Mesytec DAQ requires crate map & detector-channel correspondence files, the latter of which may be run-dependent.

Each dataset has to provide the necessary files, as well as a file containing the run-dependent list of detector-channel correspondence files.

The names of the files are given by the following dataset variables, if defined:

[dataset].MesytecCrateConf: [name of crate map file:default="mesytec_crate_map.dat"]
[dataset].MesytecChannelsConf: [name of detector-channel correspondence file:default="mesytec_detector_correspondence.dat"]
[dataset].MesytecChannelsConfList: [list of run-dependent detector-channel correspondence files:default="mesytec_conf_list.dat"]
char name[80]

If given, the run-dependent list of configuration files should be like:

File: [file1]
[file1].RunList: [list of runs]
+File: [file2]
[file2]:RunList: [list of runs]

If not given we assume the same crate map and detector-channel correspondence for all runs.

If the required files are not found for the dataset, an exception will be thrown.

Reimplemented from KVMultiDetArray.

Definition at line 1049 of file KVINDRA.cpp.

◆ MakeCalibrationTables()

void KVINDRA::MakeCalibrationTables ( KVExpDB db)
overridevirtual

Override base method in order to read ChIo pressures for each run.

Reimplemented from KVMultiDetArray.

Definition at line 1007 of file KVINDRA.cpp.

◆ PHDSet()

virtual void KVINDRA::PHDSet ( Bool_t  yes = kTRUE)
inlinevirtual

Definition at line 232 of file KVINDRA.h.

◆ SetIDCodeForIDTelescope()

void KVINDRA::SetIDCodeForIDTelescope ( KVIDTelescope idt) const
overridevirtual

Set the INDRA-specific general identification code for the given telescope.

Reimplemented from KVMultiDetArray.

Definition at line 752 of file KVINDRA.cpp.

◆ SetPinLasersForCsI()

void KVINDRA::SetPinLasersForCsI ( )

Sets the KVCsI::fPinLaser member of each CsI detector with the number of the pin laser associated for the stability control of these detectors.

We look for a file with the following format:

CSI_0101 1 CSI_0102 1 CSI_0103 1 CSI_0104 1 etc.

i.e. 'name of CsI detector' 'number of pin laser (1-8)' Comment lines must begin with '#'

The default name of this file is defined in .kvrootrc by

INDRADB.CsIPinCorr: CsI_PILA.dat

Dataset-specific version can be specified:

INDRA_e999.INDRADB.CsIPinCorr: CorrCsIPin_2054.dat

This file should be in the directory corresponding to the current dataset, i.e. in $KVROOT/KVFiles/name_of_dataset

Definition at line 808 of file KVINDRA.cpp.

◆ SetRawDataFromReconEvent()

void KVINDRA::SetRawDataFromReconEvent ( const KVReconstructedEvent recev)
overridevirtual

Overrides base method in KVMultiDetArray.

If we are reading old reconstructed data with EBYEDAT parameters, we need special treatment to decode the detector name & signal type.

Reimplemented from KVMultiDetArray.

Definition at line 952 of file KVINDRA.cpp.

◆ SetReconParametersInEvent()

void KVINDRA::SetReconParametersInEvent ( KVReconstructedEvent e) const
overridevirtual

If "INDRA.EN" parameter has been set, we use it to set the event number.

Reimplemented from KVMultiDetArray.

Definition at line 936 of file KVINDRA.cpp.

◆ SetTrigger()

void KVINDRA::SetTrigger ( UChar_t  trig)

Define multiplicity trigger used for acquisition and filter. Events with multipicity >= trig are OK.

Definition at line 204 of file KVINDRA.cpp.

Member Data Documentation

◆ SignalTypes

Char_t KVINDRA::SignalTypes
static
Initial value:
= {
"",
"GG", "PG", "T",
"GG", "PG", "T",
"R", "L", "T",
"GG", "PG", "T",
"GG", "PG", "T"
}

Use this static array to translate EBaseIndra_type signal type to a string giving the signal type.

Definition at line 69 of file KVINDRA.h.