KaliVeda
Toolkit for HIC analysis
KVFAZIASignal.h
1 #pragma once
2 
3 #include "KVSignal.h"
4 
5 class KVFAZIASignal : public KVSignal {
6 
7 public:
8  enum SignalType {
9  kQH1,
10  kI1,
12  kQ2,
13  kI2,
14  kQ3,
16  kUNKDT
17  };
18 
19 protected:
22 
24 
26 
27  void init();
28  void TreateOldSignalName();
29 
30  void ResetIndexes();
31  public:
32  KVFAZIASignal();
33  KVFAZIASignal(const char* name, const char* title);
34  KVFAZIASignal(const TString& name, const TString& title);
35 
39  const Char_t* GetDetectorName() const override
40  {
41  return fDetName.Data();
42  }
43  void SetDetectorName(const Char_t* name)
44  {
45  fDetName = name;
46  }
47 
49  void DeduceFromName();
50  Int_t GetIndex() const override
51  {
52  return fIndex;
53  }
54 
55  void Print(Option_t* chopt = "") const override;
56 
57  Int_t GetNFPGAValues() const override
58  {
59  return fFPGAOutputNumbers;
60  }
61 
62  Bool_t HasFPGA() const override
63  {
64  return (GetNFPGAValues() > 0);
65  }
66 
68  Double_t GetPSAParameter(const Char_t* parname) override;
69 
70  static KVFAZIASignal* MakeSignal(const char* sig_type)
71  {
72  return dynamic_cast<KVFAZIASignal*>(KVSignal::MakeSignal(sig_type));
73  }
74 
75  ClassDefOverride(KVFAZIASignal, 1) //Base class for FAZIA signal processing
76 };
int Int_t
bool Bool_t
char Char_t
double Double_t
const char Option_t
#define ClassDefOverride(name, id)
char name[80]
Int_t fIndex
index deduced from block, quartet and telescope numbering
Definition: KVFAZIASignal.h:20
TString fDetName
name of the detector, the signal is linked to, needed to find it in the KVMultiDetector
Definition: KVFAZIASignal.h:23
void TreateOldSignalName()
KVFAZIASignal()
Default constructor.
Bool_t HasFPGA() const override
Definition: KVFAZIASignal.h:62
Double_t GetPSAParameter(const Char_t *parname) override
routines to read/change PSA parameters from configuration file or database
const Char_t * GetDetectorName() const override
Definition: KVFAZIASignal.h:39
Int_t fFPGAOutputNumbers
ASsociated FPGA energy outputs.
Definition: KVFAZIASignal.h:25
static KVFAZIASignal * MakeSignal(const char *sig_type)
Definition: KVFAZIASignal.h:70
Int_t fChannel
signal type (see KVFAZIASignal::SignalType enum)
Definition: KVFAZIASignal.h:21
Int_t GetNFPGAValues() const override
Definition: KVFAZIASignal.h:57
void Print(Option_t *chopt="") const override
Int_t GetIndex() const override
Definition: KVFAZIASignal.h:50
void SetDetectorName(const Char_t *name)
Definition: KVFAZIASignal.h:43
static KVSignal * MakeSignal(const char *sig_type)
Create new KVSignal instance corresponding to sig_type.
Definition: KVSignal.cpp:1664
const char * Data() const