![]() |
KaliVeda
Toolkit for HIC analysis
|
Base class for FAZIA detectors.
Created by KVClassFactory on Fri Jan 23 18:44:27 2015 Author: ,,,
Detector names are assumed to be defined as label-xxx where xxx is computed as follows (see KVFAZIADetector::GetIndex) :
and label can be SI1, SI2 or CSI
For example SI1-123 is the Silicon Si1 of the block 1, the quartet 2 and the telescope 3
Definition at line 29 of file KVFAZIADetector.h.
#include <KVFAZIADetector.h>

Public Types | |
| enum | { kSI1 , kSI2 , kCSI , kOTHER } |
Public Member Functions | |
| KVFAZIADetector () | |
| Default constructor. More... | |
| KVFAZIADetector (const Char_t *type, const Float_t thick=0.0) | |
| Create detector of given material type and thickness (in centimetres) More... | |
| virtual | ~KVFAZIADetector () |
| Destructor. More... | |
| void | Clear (Option_t *opt="") override |
| If opt="N" we do not reset any raw data, signals, etc. More... | |
| void | ComputePSA () |
| Perform Pulse Shape Analysis on all signals. More... | |
| void | Copy (TObject &obj) const override |
| Bool_t | Fired (Option_t *opt="any") const override |
| Int_t | GetBlockNumber () const |
| Int_t | GetDetTag () const |
| Int_t | GetGTTag () const |
| Int_t | GetIdentifier () const |
| Int_t | GetIndex () const override |
| const KVSeqCollection * | GetListOfSignals () const |
| Int_t | GetNumberOfSignals () const |
| Int_t | GetQuartetNumber () const |
| Double_t | GetSetupParameter (const Char_t *parname) |
| KVSignal * | GetSignal (const Char_t *name) const |
| KVSignal * | GetSignal (Int_t idx) const |
| KVSignal * | GetSignalByType (const Char_t *type) const |
| Int_t | GetTelescopeNumber () const |
| Bool_t | HasSignal () const |
| Returns kTRUE if detector has at least 1 associated signal. More... | |
| Bool_t | IsRutherford () const |
| void | SetDetTag (Int_t t) |
| void | SetGTTag (Int_t t) |
| void | SetName (const char *name) override |
| void | SetSignal (TGraph *signal, const Char_t *signal_name) |
Static Public Member Functions | |
| static const Char_t * | GetNewName (KVString oldname) |
Private Member Functions | |
| void | init () |
| default initialisations More... | |
| KVDetectorSignal * | set_psa_detector_signal_value (const TString &sig_type, const TString &psa_val, double val) |
| KVDetectorSignal * | SetBaseLine (int sigid, Float_t baseline) |
| KVDetectorSignal * | SetFPGAEnergy (int sigid, Int_t idx, Double_t energy) |
| Bool_t | SetProperties () |
| void | SetPSAResults (const KVSignal *sig) |
| Bool_t | use_signal_for_raw_data_tree (const TString &) const override |
| Restrict list of signals which are used to fill raw data TTrees. More... | |
Private Attributes | |
| Int_t | fBlock |
| Int_t | fIdentifier |
| SI1=0(kSI1) SI2=1(kSI2) CSI=2(kCSI) More... | |
| Int_t | fIndex |
| 100*block+10*quartet+telescope More... | |
| Bool_t | fIsFiredFromSignals |
| Bool_t | fIsRutherford |
| Double_t | fQ2Threshold |
| Double_t | fQ3Threshold |
| Double_t | fQH1Threshold |
| thresholds defined for this detector More... | |
| Int_t | fQuartet |
| KVUniqueNameList | fSignals |
| list of electronics signal (current, charge, etc... ) More... | |
| Int_t | fTelescope |
Friends | |
| class | KVFAZIA |
| anonymous enum |
| Enumerator | |
|---|---|
| kSI1 | |
| kSI2 | |
| kCSI | |
| kOTHER | |
Definition at line 128 of file KVFAZIADetector.h.
| KVFAZIADetector::KVFAZIADetector | ( | ) |
Default constructor.
Definition at line 52 of file KVFAZIADetector.cpp.
Create detector of given material type and thickness (in centimetres)
Definition at line 63 of file KVFAZIADetector.cpp.
|
virtual |
Destructor.
Definition at line 74 of file KVFAZIADetector.cpp.
If opt="N" we do not reset any raw data, signals, etc.
Definition at line 107 of file KVFAZIADetector.cpp.
| void KVFAZIADetector::ComputePSA | ( | ) |
Perform Pulse Shape Analysis on all signals.
Definition at line 515 of file KVFAZIADetector.cpp.
This method copies the current state of 'this' object into 'obj' You should add here any member variables, for example: (supposing a member variable KVFAZIADetector::fToto) CastedObj.fToto = fToto; or CastedObj.SetToto( GetToto() );
Definition at line 89 of file KVFAZIADetector.cpp.
Returns kTRUE if detector was hit (fired) in an event
Several methods are implemented.
If the detector has a "Fired" signal (defined by a calibration file containing threshold values for individual detectors), we simply test it (if "Fired" > 0, then we are above threshold).
If the detector is fired based on FPGA energy values (i.e. the [dataset].*.IsFiredFromSignal value is set to 0 for the dataset), thresholds are given for all SI1/SI2/CSI detectors using "[dataset].*.MinimumAmplitude" values for the QH1/QL1, Q2 and/or Q3 FPGA values, these will be used to test the corresponding "*.FPGAEnergy" signal of the detector.
Otherwise, the test is made on charge signals of the detectors:
If the detector is in "simulation mode", i.e. if SetSimMode(kTRUE) has been called, this method returns kTRUE if the calculated energy loss in the active layer is > 0.
Definition at line 333 of file KVFAZIADetector.cpp.
|
inline |
Definition at line 164 of file KVFAZIADetector.h.
|
inline |
Definition at line 192 of file KVFAZIADetector.h.
|
inline |
Definition at line 196 of file KVFAZIADetector.h.
|
inline |
Return the identifier of the detector. This is one of KVFAZIADetector::kSI1 KVFAZIADetector::kSI2 KVFAZIADetector::kCSI KVFAZIADetector::kOTHER
Definition at line 154 of file KVFAZIADetector.h.
|
inlineoverride |
Return index of detector, defined as 100*block+10*quartet+telescope
Definition at line 168 of file KVFAZIADetector.h.
| const KVSeqCollection * KVFAZIADetector::GetListOfSignals | ( | ) | const |
Definition at line 505 of file KVFAZIADetector.cpp.
Translate an old-style FAZIA detector name (e.g. "SI1-T1-Q2-B001") to the new format ("SI1-121")
Definition at line 276 of file KVFAZIADetector.cpp.
| Int_t KVFAZIADetector::GetNumberOfSignals | ( | ) | const |
Definition at line 496 of file KVFAZIADetector.cpp.
|
inline |
Definition at line 181 of file KVFAZIADetector.h.
Definition at line 37 of file KVFAZIADetector.cpp.
Access detector signal by name, i.e. as in FAZIA raw data e.g. "QL1-231"
Definition at line 453 of file KVFAZIADetector.cpp.
Access signal with given index in list of detector's signals 0 <= idx < KVFAZIADetector::GetNumberOfSignals()
Definition at line 483 of file KVFAZIADetector.cpp.
Access detector signal of given type: "I1", "I2", "Q2", "Q3", "QH1", "QL1"
Definition at line 468 of file KVFAZIADetector.cpp.
|
inline |
Definition at line 185 of file KVFAZIADetector.h.
| Bool_t KVFAZIADetector::HasSignal | ( | ) | const |
Returns kTRUE if detector has at least 1 associated signal.
Definition at line 441 of file KVFAZIADetector.cpp.
default initialisations
Definition at line 19 of file KVFAZIADetector.cpp.
|
inline |
Returns kTRUE if detector is part of elastic scattering monitor telescope
Definition at line 175 of file KVFAZIADetector.h.
|
inlineprivate |
Definition at line 54 of file KVFAZIADetector.h.
|
inlineprivate |
Set signal baseline computed inside the FPGA. Returns address of the signal which was set.
Definition at line 91 of file KVFAZIADetector.h.
Definition at line 200 of file KVFAZIADetector.h.
|
inlineprivate |
Set FPGA energy value in appropriate KVDetectorSignal of detector and set its state to 'fired'. Returns address of the signal which was set.
Definition at line 66 of file KVFAZIADetector.h.
Definition at line 204 of file KVFAZIADetector.h.
|
override |
Definition at line 119 of file KVFAZIADetector.cpp.
|
private |
detector name are assumed to be defined as label-xxx where xxx is computed as follow : 100*block number+10*quartet number+telescope number and label can be SI1, SI2 or CSI For example SI1-123 is the Silicon Si1 of the block 1, the quartet 2 and the telescope 3
Definition at line 137 of file KVFAZIADetector.cpp.
Set PSA results in appropriate KVDetectorSignals of detector and set their state to 'fired'
Definition at line 115 of file KVFAZIADetector.h.
Copy waveform data from TGraph into the signal with the given name (QH1-345 etc.)
Then perform analysis of signal and set the values of the corresponding KVDetectorSignalValue objects
Definition at line 419 of file KVFAZIADetector.cpp.
Restrict list of signals which are used to fill raw data TTrees.
Definition at line 244 of file KVFAZIADetector.cpp.
|
friend |
Definition at line 31 of file KVFAZIADetector.h.
|
private |
Definition at line 35 of file KVFAZIADetector.h.
|
private |
SI1=0(kSI1) SI2=1(kSI2) CSI=2(kCSI)
Definition at line 38 of file KVFAZIADetector.h.
|
private |
100*block+10*quartet+telescope
Definition at line 39 of file KVFAZIADetector.h.
|
private |
Definition at line 47 of file KVFAZIADetector.h.
|
private |
Definition at line 40 of file KVFAZIADetector.h.
|
private |
Definition at line 44 of file KVFAZIADetector.h.
|
private |
Definition at line 45 of file KVFAZIADetector.h.
|
private |
thresholds defined for this detector
Definition at line 43 of file KVFAZIADetector.h.
|
private |
Definition at line 36 of file KVFAZIADetector.h.
|
private |
list of electronics signal (current, charge, etc... )
Definition at line 33 of file KVFAZIADetector.h.
|
private |
Definition at line 37 of file KVFAZIADetector.h.