ATTPCROOT  0.3.0-alpha
A ROOT-based framework for analyzing data from active target detectors
AtPadArray.h
Go to the documentation of this file.
1 #ifndef ATPADARRAY_H
2 #define ATPADARRAY_H
3 
4 #include "AtPadBase.h" // for AtPadBase
5 
6 #include <Rtypes.h> // for Double_t, ClassDefOverride
7 
8 #include <array> // for array
9 #include <memory> // for unique_ptr
10 #include <string>
11 #include <utility> // for move
12 
13 class TBuffer;
14 class TClass;
15 class TMemberInspector;
16 class TH1D;
17 
24 class AtPadArray : public AtPadBase {
25 public:
26  using traceDouble = std::array<Double_t, 512>;
27 
28 protected:
30 
31 public:
32  virtual std::unique_ptr<AtPadBase> Clone() const override;
33 
34  void SetArray(traceDouble val) { fArray = std::move(val); }
35  void SetArray(Int_t idx, Double_t val) { fArray.at(idx) = val; }
36 
37  const traceDouble &GetArray() const { return fArray; }
38  Double_t GetArray(Int_t idx) const { return fArray[idx]; }
39  std::unique_ptr<TH1D> GetHist(std::string name) const;
41 };
42 
43 #endif //#ifndef ATPADCHARGE_H
AtPadArray::GetArray
const traceDouble & GetArray() const
Definition: AtPadArray.h:37
AtPadBase
Base class for AtPad composition pattern.
Definition: AtPadBase.h:37
AtPadArray::SetArray
void SetArray(traceDouble val)
Definition: AtPadArray.h:34
AtPadArray::GetArray
Double_t GetArray(Int_t idx) const
Definition: AtPadArray.h:38
AtPadArray::traceDouble
std::array< Double_t, 512 > traceDouble
Definition: AtPadArray.h:26
AtPadArray::GetHist
std::unique_ptr< TH1D > GetHist(std::string name) const
Definition: AtPadArray.cxx:10
AtPadArray::ClassDefOverride
ClassDefOverride(AtPadArray, 1)
AtPadArray::SetArray
void SetArray(Int_t idx, Double_t val)
Definition: AtPadArray.h:35
AtPadArray::fArray
traceDouble fArray
Definition: AtPadArray.h:29
AtPadArray
Holds an addition array of doubles for an AtPad.
Definition: AtPadArray.h:24
AtPadArray::Clone
virtual std::unique_ptr< AtPadBase > Clone() const override
Definition: AtPadArray.cxx:5
AtPadBase.h