KaliVeda
Toolkit for HIC analysis
Loading...
Searching...
No Matches
KVDetectorSignal Class Reference

Detailed Description

Base class for output signal data produced by a detector.

Detectors (see KVDetector) are composed of one or more absorber layers. Among these, a single active layer allows to measure the energy loss of charged particles, which can be reconstructed by calibration of one or more signals associated to the detector read out by some electronics/DAQ system. Both the raw data and any calibrated quantities derived from them are handled by KVDetectorSignal and its child classes.

Example of use

auto sig = det.AddDetectorSignal("raw");
OBJ: KVUniqueNameList KVSeqCollection_156 Optimised list in which objects with the same name can only be placed once : 0
KVDetectorSignal raw Signal raw of detector Det_1 [0.000000]
sig->SetValue(50);
det.GetDetectorSignal("raw")->GetValue() // WARNING: if no signal "raw" defined, GetDetectorSignal() returns nullptr!
(double) 50.000000
det.GetDetectorSignalValue("raw") // Same as previous, but returns 0 if signal not defined
(double) 50.000000
char name[80]
Base class for output signal data produced by a detector.
virtual void SetValue(Double_t x)
virtual Double_t GetValue(const KVNameValueList &params="") const
Base class for detector geometry description.
Definition KVDetector.h:160
virtual KVDetectorSignal * GetDetectorSignal(const KVString &type) const
Definition KVDetector.h:533
void AddDetectorSignal(KVDetectorSignal *ds)
Definition KVDetector.h:261
const KVSeqCollection & GetListOfDetectorSignals() const
Definition KVDetector.h:786
Double_t GetDetectorSignalValue(const KVString &type, const KVNameValueList &params="") const
Definition KVDetector.h:493
Optimised list in which named objects can only be placed once.
void ls(Option_t *option="") const override
See also
KVDetectorSignalExpression
KVCalibratedSignal

Definition at line 46 of file KVDetectorSignal.h.

#include <KVDetectorSignal.h>

Inheritance diagram for KVDetectorSignal:

Public Member Functions

 KVDetectorSignal ()
 
 KVDetectorSignal (const Char_t *type, const KVDetector *det=nullptr)
 
virtual ~KVDetectorSignal ()
 
void Clear (Option_t *="")
 
const KVDetectorGetDetector () const
 
TString GetFullName () const
 
virtual Double_t GetInverseValue (Double_t out_val, const TString &in_sig, const KVNameValueList &params="") const
 
virtual Int_t GetStatus (const TString &) const
 Override in child classes to report on the 'status' of the signal.
 
const Char_tGetType () const
 
virtual Double_t GetValue (const KVNameValueList &params="") const
 
virtual Bool_t GetValueNeedsExtraParameters () const
 
virtual Bool_t IsAvailableFor (const KVNameValueList &) const
 
virtual Bool_t IsExpression () const
 
Bool_t IsFired () const
 
virtual Bool_t IsRaw () const
 
virtual Bool_t IsValid () const
 
void ls (Option_t *="") const
 Print compact listing of infos on signal: name/type, associated detector, value.
 
virtual void Reset ()
 
void SetDetector (const KVDetector *d)
 
void SetFired (Bool_t yes=true)
 
void SetType (const Char_t *typ)
 
virtual void SetValue (Double_t x)
 
- Public Member Functions inherited from KVBase
 KVBase ()
 Default constructor.
 
 KVBase (const Char_t *name, const Char_t *title="")
 Ctor for object with given name and type.
 
 KVBase (const KVBase &)
 copy ctor
 
virtual ~KVBase ()
 
virtual void Copy (TObject &) const
 Make a copy of this object.
 
const Char_tGetLabel () const
 
UInt_t GetNumber () const
 
UInt_t GetNumberOfObjects () const
 
virtual TObjectGetObject () 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
 
virtual void Print (Option_t *option="") const
 
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)
 
- 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 ()
 
void Clear (Option_t *option="") override
 
TObjectClone (const char *newname="") const override
 
Int_t Compare (const TObject *obj) const override
 
void Copy (TObject &named) 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)
 
void Print (Option_t *option="") const override
 
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 Draw (Option_t *option="")
 
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 set_value (double x)
 

Private Attributes

const KVDetectorfDetector
 associated detector
 
Bool_t fFired
 set for raw parameters when read from raw data
 
Double_t fValue
 signal value
 

Additional Inherited Members

- 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 KVBase
static Bool_t AreEqual (Double_t x, Double_t y, Long64_t maxdif=1)
 Comparison between two 64-bit floating-point values.
 
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 Char_t *class_name, KVString &imp_file, KVString &dec_file, const Char_t *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 Bool_t GetDataSetEnv (const Char_t *dataset, const Char_t *type, Bool_t defval)
 
static const Char_tGetDataSetEnv (const Char_t *dataset, const Char_t *type, const Char_t *defval)
 
static Double_t GetDataSetEnv (const Char_t *dataset, const Char_t *type, Double_t 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.)
 
static const Char_tGetINCDIRFilePath (const Char_t *namefile="")
 
static const Char_tGetKVBuildDate ()
 Returns KaliVeda build date.
 
static const Char_tGetKVBuildDir ()
 Returns top-level directory used for build.
 
static const Char_tGetKVBuildTime ()
 Returns KaliVeda build time.
 
static const Char_tGetKVBuildType ()
 Returns KaliVeda build type (cmake build: Release, Debug, RelWithDebInfo, ...)
 
static const Char_tGetKVBuildUser ()
 Returns username of person who performed build.
 
static const Char_tGetKVSourceDir ()
 Returns top-level directory of source tree used for build.
 
static const Char_tGetKVVersion ()
 Returns KaliVeda version string.
 
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.
 
static const Char_tgitCommit ()
 Returns last git commit of sources.
 
static void InitEnvironment ()
 
static bool is_gnuinstall ()
 
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.
 
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

◆ KVDetectorSignal() [1/2]

KVDetectorSignal::KVDetectorSignal ( )
inline

Definition at line 59 of file KVDetectorSignal.h.

◆ KVDetectorSignal() [2/2]

KVDetectorSignal::KVDetectorSignal ( const Char_t type,
const KVDetector det = nullptr 
)

Constructor

Parameters
[in]typedefines the name of the signal
[in]det[optional] if given, detector to which signal is associated

Definition at line 15 of file KVDetectorSignal.cpp.

◆ ~KVDetectorSignal()

virtual KVDetectorSignal::~KVDetectorSignal ( )
inlinevirtual

Definition at line 64 of file KVDetectorSignal.h.

Member Function Documentation

◆ Clear()

void KVDetectorSignal::Clear ( Option_t = "")
inlinevirtual

Override base method in KVBase which resets the name, type and label of the object.

Calls Reset(). The Option_t string is not used.

Reimplemented from KVBase.

Definition at line 91 of file KVDetectorSignal.h.

◆ GetDetector()

const KVDetector * KVDetectorSignal::GetDetector ( ) const
inline
Returns
pointer to detector associated with this signal

Definition at line 116 of file KVDetectorSignal.h.

◆ GetFullName()

TString KVDetectorSignal::GetFullName ( ) const
Returns
full name of detector signal, i.e. [detector].[signal-type] if associated to a detector, or [signal-type] if not.

Definition at line 56 of file KVDetectorSignal.cpp.

◆ GetInverseValue()

virtual Double_t KVDetectorSignal::GetInverseValue ( Double_t  out_val,
const TString in_sig,
const KVNameValueList params = "" 
) const
inlinevirtual
Parameters
[in]out_valoutput value of signal to invert
[in]name/typeof input signal to calculate by inversion
[in][optional]list of extra parameters possibly required to calculate value of signal (see child classes)
Returns
the value of the input signal for a given value of the output, using the inverse calibration function

Reimplemented in KVCalibratedSignal, and KVZDependentCalibratedSignal.

Definition at line 98 of file KVDetectorSignal.h.

◆ GetStatus()

Int_t KVDetectorSignal::GetStatus ( const TString ) const
virtual

Override in child classes to report on the 'status' of the signal.

Reimplemented in KVINDRACsITotLightReconstructor.

Definition at line 45 of file KVDetectorSignal.cpp.

◆ GetType()

const Char_t * KVDetectorSignal::GetType ( ) const
inlinevirtual
Returns
the type of the signal - this is the same as the signal name

Reimplemented from KVBase.

Definition at line 171 of file KVDetectorSignal.h.

◆ GetValue()

virtual Double_t KVDetectorSignal::GetValue ( const KVNameValueList params = "") const
inlinevirtual
Parameters
[in]params[optional] list of extra parameters possibly required to calculate value of signal (see child classes)
Returns
value of the signal

Reimplemented in KVINDRACsITotLightReconstructor, KVCalibratedSignal, KVDetectorSignalExpression, and KVZDependentCalibratedSignal.

Definition at line 67 of file KVDetectorSignal.h.

◆ GetValueNeedsExtraParameters()

virtual Bool_t KVDetectorSignal::GetValueNeedsExtraParameters ( ) const
inlinevirtual
Returns
kTRUE if GetValue() must be called with extra parameters in order to calculate the correct value

Reimplemented in KVZDependentCalibratedSignal.

Definition at line 150 of file KVDetectorSignal.h.

◆ IsAvailableFor()

virtual Bool_t KVDetectorSignal::IsAvailableFor ( const KVNameValueList ) const
inlinevirtual

Used by KVCalibratedSignal to determine whether calibrated signals which depend on extra parameters (in the KVNameValueList) are effectively available for a given set of those extra parameters.

Default here is kTRUE: if not overridden in child classes, this is a raw data signal and therefore always available.

Reimplemented in KVCalibratedSignal, and KVZDependentCalibratedSignal.

Definition at line 158 of file KVDetectorSignal.h.

◆ IsExpression()

virtual Bool_t KVDetectorSignal::IsExpression ( ) const
inlinevirtual
Returns
kTRUE if this signal is a mathematical combination of other signals (see child classes)

Reimplemented in KVDetectorSignalExpression.

Definition at line 144 of file KVDetectorSignal.h.

◆ IsFired()

Bool_t KVDetectorSignal::IsFired ( ) const
inline
Returns
"Fired" status of signal

Definition at line 126 of file KVDetectorSignal.h.

◆ IsRaw()

virtual Bool_t KVDetectorSignal::IsRaw ( ) const
inlinevirtual
Returns
kTRUE if signal is available without any calibration being defined i.e. corresponds to raw data

Reimplemented in KVINDRACsITotLightReconstructor, KVCalibratedSignal, and KVDetectorSignalExpression.

Definition at line 138 of file KVDetectorSignal.h.

◆ IsValid()

virtual Bool_t KVDetectorSignal::IsValid ( ) const
inlinevirtual
Returns
kTRUE if this signal is valid (see child classes)

Reimplemented in KVDetectorSignalExpression.

Definition at line 132 of file KVDetectorSignal.h.

◆ ls()

void KVDetectorSignal::ls ( Option_t = "") const
virtual

Print compact listing of infos on signal: name/type, associated detector, value.

Reimplemented from TObject.

Definition at line 31 of file KVDetectorSignal.cpp.

◆ Reset()

virtual void KVDetectorSignal::Reset ( )
inlinevirtual

"Reset" the value of the signal, i.e. usually means set to zero. Only affects signals whose value can be 'Set' (see SetValue).

For raw parameters, also resets 'Fired' flag.

Reimplemented in KVINDRACsITotLightReconstructor.

Definition at line 82 of file KVDetectorSignal.h.

◆ set_value()

void KVDetectorSignal::set_value ( double  x)
inlineprivate

Definition at line 53 of file KVDetectorSignal.h.

◆ SetDetector()

void KVDetectorSignal::SetDetector ( const KVDetector d)
inline
Parameters
[in]dpointer to detector to associate with this signal

Definition at line 110 of file KVDetectorSignal.h.

◆ SetFired()

void KVDetectorSignal::SetFired ( Bool_t  yes = true)
inline
Parameters
[in]yesset "Fired" status of signal

Definition at line 121 of file KVDetectorSignal.h.

◆ SetType()

void KVDetectorSignal::SetType ( const Char_t typ)
inlinevirtual
Parameters
[in]typthe type of the signal - will be used as the name of the signal

Reimplemented from KVBase.

Definition at line 176 of file KVDetectorSignal.h.

◆ SetValue()

virtual void KVDetectorSignal::SetValue ( Double_t  x)
inlinevirtual

Set the value of the signal.

Parameters
[in]xthe value to be set
Note
this has no effect on calibrated signals or signal expressions

Reimplemented in KVDetectorSignalExpression.

Definition at line 75 of file KVDetectorSignal.h.

Member Data Documentation

◆ fDetector

const KVDetector* KVDetectorSignal::fDetector
private

associated detector

Definition at line 48 of file KVDetectorSignal.h.

◆ fFired

Bool_t KVDetectorSignal::fFired
private

set for raw parameters when read from raw data

Definition at line 50 of file KVDetectorSignal.h.

◆ fValue

Double_t KVDetectorSignal::fValue
private

signal value

Definition at line 49 of file KVDetectorSignal.h.