KaliVeda
Toolkit for HIC analysis
KVExpSetUp Class Reference

Detailed Description

Describe an experimental set-up coupling two or more different detector arrays.

KVExpSetUp combines two or more existing KVMultiDetArray objects to describe the geometry, detectors, etc. of an experiment coupling several different arrays. Each KVMultiDetArray can have its own dedicated calibration database (KVExpDB and KVUpdater class) used to store and set calibration parameters.

Note
All detector & structure names in individual arrays must be unique! The group numbering has to be modified (in Build()) to make them unique.

Definition at line 25 of file KVExpSetUp.h.

#include <KVExpSetUp.h>

Inheritance diagram for KVExpSetUp:

Public Member Functions

 KVExpSetUp ()
 Default constructor. More...
 
virtual ~KVExpSetUp ()
 Destructor. More...
 
void AcceptAllECodes () override
 
void AcceptAllIDCodes () override
 
void AcceptParticleForAnalysis (KVReconstructedNucleus *) const override
 
void Build (Int_t run=-1) override
 
void Clear (Option_t *opt="") override
 
void FillDetectorList (KVReconstructedNucleus *rnuc, KVHashList *DetList, const KVString &DetNames) override
 
KVMultiDetArrayGetArray (const Char_t *name) const override
 
void GetArrayMultiplicities (KVReconstructedEvent *, KVNameValueList &, Option_t *="")
 
void GetDetectorEvent (KVDetectorEvent *detev, const TSeqCollection *fired_params=nullptr) override
 
KVGroupReconstructorGetReconstructorForGroup (const KVGroup *g) const override
 
Bool_t HandleRawDataEvent (KVRawDataReader *) override
 
void InitialiseRawDataReading (KVRawDataReader *R) override
 
void InitializeIDTelescopes () override
 
void MakeCalibrationTables (KVExpDB *db) override
 
void SetCalibratorParameters (KVDBRun *r, const TString &="") override
 
void SetDetectorParametersForRun (KVDBRun *r, const TString &="") override
 
void SetRawDataFromReconEvent (KVNameValueList &l) override
 
void SetSimMode (Bool_t on=kTRUE) override
 
void SetTarget (KVTarget *target) override
 
- 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...
 
void AcceptECodes (const KVNumberList &codelist)
 
void AcceptIDCodes (const KVNumberList &codelist)
 
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
 
void FillHistogramsForAllIDTelescopes (KVSeqCollection *list)
 Fill TH2F histograms for all IDTelescopes of the array. More...
 
void FillListOfIDTelescopes (KVIDGraph *gr) const
 
const KVNumberListGetAcceptedECodes () const
 
const KVNumberListGetAcceptedIDCodes () const
 
virtual UShort_t GetBadIDCode () const
 
virtual UChar_t GetCalculatedCalibrationCode () const
 
TListGetCalibrationStatusOfDetectors ()
 
virtual UShort_t GetCoherencyIDCode () const
 
UInt_t GetCurrentRunNumber () const
 
TString GetDataSet () const
 
virtual TString GetECodeMeaning (Int_t) 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
 
virtual Int_t GetIDCodeForParticlesStoppingInFirstStageOfTelescopes () const
 
virtual TString GetIDCodeMeaning (Int_t) const
 
KVIDTelescopeGetIDTelescope (const Char_t *name) const
 Return pointer to DeltaE-E ID Telescope with "name". More...
 
KVSeqCollectionGetIDTelescopesWithType (const Char_t *type)
 
KVUniqueNameListGetIDTelescopeTypes ()
 
KVSeqCollectionGetListOfIDTelescopes () const
 
virtual UShort_t GetMultiHitFirstStageIDCode () const
 
KVGeoNavigatorGetNavigator () const
 
virtual UChar_t GetNoCalibrationCode () const
 
virtual UChar_t GetNormalCalibrationCode () 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 ()
 
UShort_t GetZminCode () const
 
Bool_t HandledRawData () const
 
Bool_t HandleRawDataBuffer (MFMBufferReader &)
 
Bool_t IDParamsSet ()
 
void init ()
 
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)
 
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 SetReconParametersInEvent (KVReconstructedEvent *) const
 Copy any parameters in fReconParameters in to the reconstructed event parameter list. More...
 
virtual void SetRunCalibrationParameters (UShort_t n)
 
virtual void SetRunIdentificationParameters (UShort_t n)
 
- 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
 
virtual KVDetector * GetDetector (const Char_t *name) const
 Return detector in this structure with given name. More...
 
KVDetector * GetDetectorAny (const Char_t *name)
 
KVDetector * GetDetectorByType (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...
 
Double_t ProtectedGetX (const TF1 *func, Double_t val, int &status, Double_t xmin=0.0, Double_t xmax=0.0) const
 
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
 

Private Member Functions

void copy_fired_parameters_to_recon_param_list () override
 
void for_each_array (const std::function< void(KVMultiDetArray *)> &f, const std::function< bool(KVMultiDetArray *)> &break_cond=[](KVMultiDetArray *) { return false;}) const
 
Bool_t handle_raw_data_event_mfmframe (const MFMCommonFrame &mfmframe) override
 
void init ()
 
void SetExpectedDetectorSignalNames () override
 

Private Attributes

KVList fMDAList
 list of multidetarrays More...
 
KVString lmultidetarrayclasses
 

Additional Inherited Members

- 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) }
 
- Public Types inherited from TObject
enum  EDeprecatedStatusBits
 
enum  EStatusBits
 
- 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")
 
static void SetMakeMultiDetectorPhysicsParametersOnly (Bool_t on=kTRUE)
 
- Static Public Member Functions inherited from KVBase
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="")
 
static KVString GetDataSetEnv (const KVString &dataset, const KVString &type, const char *defval)
 
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 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 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
 

Constructor & Destructor Documentation

◆ KVExpSetUp()

KVExpSetUp::KVExpSetUp ( )

Default constructor.

Definition at line 32 of file KVExpSetUp.cpp.

◆ ~KVExpSetUp()

KVExpSetUp::~KVExpSetUp ( )
virtual

Destructor.

Definition at line 43 of file KVExpSetUp.cpp.

Member Function Documentation

◆ AcceptAllECodes()

void KVExpSetUp::AcceptAllECodes ( )
inlineoverridevirtual

Calling this method disables any selection of "OK" reconstructed particles according to their calibration code status, for all arrays in the setup.

Reimplemented from KVMultiDetArray.

Definition at line 199 of file KVExpSetUp.h.

◆ AcceptAllIDCodes()

void KVExpSetUp::AcceptAllIDCodes ( )
inlineoverridevirtual

Calling this method disables any selection of "OK" reconstructed particles according to their identification code status, for all arrays in the setup.

Reimplemented from KVMultiDetArray.

Definition at line 189 of file KVExpSetUp.h.

◆ AcceptParticleForAnalysis()

void KVExpSetUp::AcceptParticleForAnalysis ( KVReconstructedNucleus NUC) const
overridevirtual

Overrides KVMultiDetArray method We use the "ARRAY" parameter of the reconstructed particle (if set) to know which array of the setup detected it.

Reimplemented from KVMultiDetArray.

Definition at line 143 of file KVExpSetUp.cpp.

◆ Build()

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

Build the combined arrays

The name of the setup will be "[det1]-[det2]-..." default ROOT geometry for all arrays

Reimplemented from KVMultiDetArray.

Definition at line 58 of file KVExpSetUp.cpp.

◆ Clear()

void KVExpSetUp::Clear ( Option_t opt = "")
inlineoverridevirtual

call Clear(opt) for each multidetector in the setup

Reimplemented from KVBase.

Definition at line 95 of file KVExpSetUp.h.

◆ copy_fired_parameters_to_recon_param_list()

void KVExpSetUp::copy_fired_parameters_to_recon_param_list ( )
inlineoverrideprivatevirtual

Reimplemented from KVMultiDetArray.

Definition at line 74 of file KVExpSetUp.h.

◆ FillDetectorList()

void KVExpSetUp::FillDetectorList ( KVReconstructedNucleus rnuc,
KVHashList DetList,
const KVString DetNames 
)
inlineoverridevirtual

Call FillDetectorList for each array in turn, until DetList gets filled This is because some arrays may override the KVMultiDetArray::FillDetectorList method

Reimplemented from KVMultiDetArray.

Definition at line 104 of file KVExpSetUp.h.

◆ for_each_array()

void KVExpSetUp::for_each_array ( const std::function< void(KVMultiDetArray *)> &  f,
const std::function< bool(KVMultiDetArray *)> &  break_cond = [](KVMultiDetArray*) { return false; } 
) const
inlineprivate

perform the same function call f for each array in the setup

if break_cond is given, it is tested after each call to f, and if it returns true, we stop the loop

Definition at line 27 of file KVExpSetUp.h.

◆ GetArray()

KVMultiDetArray* KVExpSetUp::GetArray ( const Char_t name) const
inlineoverridevirtual

Return pointer to array in set up with given name

Reimplemented from KVMultiDetArray.

Definition at line 118 of file KVExpSetUp.h.

◆ GetArrayMultiplicities()

void KVExpSetUp::GetArrayMultiplicities ( KVReconstructedEvent e,
KVNameValueList m,
Option_t opt = "" 
)

Calculate multiplicities of particles in each array of the setup. They will appear in the KVNameValueList as parameters with the name of the array. e.g.

"INDRA" = 21 "FAZIA" = 3

Any option given will be used to determine the type of event iterator used - see KVEvent::GetNextParticleIterator(Option_t*).

Definition at line 176 of file KVExpSetUp.cpp.

◆ GetDetectorEvent()

void KVExpSetUp::GetDetectorEvent ( KVDetectorEvent detev,
const TSeqCollection fired_params = nullptr 
)
inlineoverridevirtual

Override KVMultiDetArray method Call each array in turn and add fired groups to the KVDetectorEvent

Reimplemented from KVMultiDetArray.

Definition at line 125 of file KVExpSetUp.h.

◆ GetReconstructorForGroup()

KVGroupReconstructor* KVExpSetUp::GetReconstructorForGroup ( const KVGroup g) const
inlineoverridevirtual

Override KVMultiDetArray method Call each array in turn to get reconstructor for group

Reimplemented from KVMultiDetArray.

Definition at line 136 of file KVExpSetUp.h.

◆ handle_raw_data_event_mfmframe()

Bool_t KVExpSetUp::handle_raw_data_event_mfmframe ( const MFMCommonFrame &  mfmframe)
inlineoverrideprivatevirtual

Handle single (not merged) MFM frames of raw data. It is assumed that each frame type corresponds to a different detector array. Therefore as soon as one of them treats the data in the frame, we return kTRUE.

Reimplemented from KVMultiDetArray.

Definition at line 53 of file KVExpSetUp.h.

◆ HandleRawDataEvent()

Bool_t KVExpSetUp::HandleRawDataEvent ( KVRawDataReader rawdata)
overridevirtual

Set fRawDataReader pointer in each sub-array and call prepare_to_handle_new_raw_data() for each sub-array, before treating raw data.

copy fired signals & detectors of sub-arrays to main lists

copy any reconstruction parameters from sub-arrays to main list

Reimplemented from KVMultiDetArray.

Definition at line 204 of file KVExpSetUp.cpp.

◆ init()

void KVExpSetUp::init ( void  )
private

Definition at line 16 of file KVExpSetUp.cpp.

◆ InitialiseRawDataReading()

void KVExpSetUp::InitialiseRawDataReading ( KVRawDataReader R)
inlineoverridevirtual

Calls InitialiseRawDataReading() for each array of the setup in turn

Reimplemented from KVMultiDetArray.

Definition at line 220 of file KVExpSetUp.h.

◆ InitializeIDTelescopes()

void KVExpSetUp::InitializeIDTelescopes ( )
inlineoverridevirtual

Override base method in order to set general identification codes for telescopes in each array

Reimplemented from KVMultiDetArray.

Definition at line 210 of file KVExpSetUp.h.

◆ MakeCalibrationTables()

void KVExpSetUp::MakeCalibrationTables ( KVExpDB db)
inlineoverridevirtual

Reimplemented from KVMultiDetArray.

Definition at line 162 of file KVExpSetUp.h.

◆ SetCalibratorParameters()

void KVExpSetUp::SetCalibratorParameters ( KVDBRun r,
const TString = "" 
)
inlineoverridevirtual

Set calibrators for all detectors for the run

Reimplemented from KVMultiDetArray.

Definition at line 171 of file KVExpSetUp.h.

◆ SetDetectorParametersForRun()

void KVExpSetUp::SetDetectorParametersForRun ( KVDBRun r,
const TString = "" 
)
inlineoverridevirtual

Call method for each array in the set up

Reimplemented from KVMultiDetArray.

Definition at line 179 of file KVExpSetUp.h.

◆ SetExpectedDetectorSignalNames()

void KVExpSetUp::SetExpectedDetectorSignalNames ( )
inlineoverrideprivatevirtual

Reimplemented from KVMultiDetArray.

Definition at line 82 of file KVExpSetUp.h.

◆ SetRawDataFromReconEvent()

void KVExpSetUp::SetRawDataFromReconEvent ( KVNameValueList l)
inlineoverridevirtual

Reimplemented from KVMultiDetArray.

Definition at line 152 of file KVExpSetUp.h.

◆ SetSimMode()

void KVExpSetUp::SetSimMode ( Bool_t  on = kTRUE)
inlineoverridevirtual

Set simulation mode of each array

Reimplemented from KVMultiDetArray.

Definition at line 230 of file KVExpSetUp.h.

◆ SetTarget()

void KVExpSetUp::SetTarget ( KVTarget target)
inlineoverridevirtual

Set target both for the overall combined array and each individual array

Reimplemented from KVMultiDetArray.

Definition at line 239 of file KVExpSetUp.h.

Member Data Documentation

◆ fMDAList

KVList KVExpSetUp::fMDAList
private

list of multidetarrays

Definition at line 47 of file KVExpSetUp.h.

◆ lmultidetarrayclasses

KVString KVExpSetUp::lmultidetarrayclasses
private

Definition at line 48 of file KVExpSetUp.h.