ATLAS Offline Software
Loading...
Searching...
No Matches
TFCSParametrizationBinnedChain.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
3*/
4
5#ifndef ISF_FASTCALOSIMEVENT_TFCSParametrizationBinnedChain_h
6#define ISF_FASTCALOSIMEVENT_TFCSParametrizationBinnedChain_h
7
9
11public:
12 TFCSParametrizationBinnedChain(const char *name = nullptr,
13 const char *title = nullptr)
14 : TFCSParametrizationChain(name, title), m_bin_start(1, 0){};
17
19 virtual void push_back_in_bin(TFCSParametrizationBase *param,
20 unsigned int bin);
21
22 virtual unsigned int get_number_of_bins() const {
23 return m_bin_start.size() - 1;
24 };
25
29 virtual int get_bin(TFCSSimulationState &simulstate, const TFCSTruthState *,
30 const TFCSExtrapolationState *) const;
31 virtual const std::string
33 const TFCSExtrapolationState *) const;
35 virtual const std::string get_bin_text(int bin) const;
36
37 virtual FCSReturnCode
38 simulate(TFCSSimulationState &simulstate, const TFCSTruthState *truth,
39 const TFCSExtrapolationState *extrapol) const override;
40
41 void Print(Option_t *option = "") const override;
42
43 static void unit_test(TFCSSimulationState *simulstate = nullptr,
44 const TFCSTruthState *truth = nullptr,
45 const TFCSExtrapolationState *extrapol = nullptr);
46
47protected:
53 std::vector<unsigned int> m_bin_start;
54
55private:
56 ClassDefOverride(TFCSParametrizationBinnedChain,
57 1) // TFCSParametrizationBinnedChain
58};
59
60#endif
const boost::regex ref(r_ef)
FCSReturnCode
Base class for all FastCaloSim parametrizations Functionality in derivde classes is provided through ...
virtual void push_before_first_bin(TFCSParametrizationBase *param)
virtual unsigned int get_number_of_bins() const
TFCSParametrizationBinnedChain(const char *name=nullptr, const char *title=nullptr)
std::vector< unsigned int > m_bin_start
Contains the index where the TFCSParametrizationBase* instances to run for a given bin start.
static void unit_test(TFCSSimulationState *simulstate=nullptr, const TFCSTruthState *truth=nullptr, const TFCSExtrapolationState *extrapol=nullptr)
virtual void push_back_in_bin(TFCSParametrizationBase *param, unsigned int bin)
virtual const std::string get_variable_text(TFCSSimulationState &, const TFCSTruthState *, const TFCSExtrapolationState *) const
TFCSParametrizationBinnedChain(const TFCSParametrizationBinnedChain &ref)
virtual FCSReturnCode simulate(TFCSSimulationState &simulstate, const TFCSTruthState *truth, const TFCSExtrapolationState *extrapol) const override
Method in all derived classes to do some simulation.
virtual int get_bin(TFCSSimulationState &simulstate, const TFCSTruthState *, const TFCSExtrapolationState *) const
this method should determine in derived classes which bin to simulate, so that the simulate method ca...
virtual const std::string get_bin_text(int bin) const
print the range of a bin; for bin -1, print the allowed range
void Print(Option_t *option="") const override
TFCSParametrizationChain(const char *name=nullptr, const char *title=nullptr)