5#ifndef ISF_FASTCALOSIMEVENT_TFCSEnergyAndHitGANV2_h
6#define ISF_FASTCALOSIMEVENT_TFCSEnergyAndHitGANV2_h
17class LightweightGraph;
23 const char *title =
nullptr);
57 return simulstate.
getAuxInfo<
int>(
"GANlayer"_FCShash);
59 virtual const std::string
70 return m_slice->GetExtrapolatorWeights();
74 const std::string &FastCaloGANInputFolderName);
82 virtual void Print(Option_t *option =
"")
const override;
84 static void test_path(
const std::string& path,
88 const std::string& outputname =
"unnamed",
int pid = 211);
96 std::string FastCaloGANInputFolderName);
static const std::vector< std::string > bins
FCSReturnCode
Base class for all FastCaloSim parametrizations Functionality in derivde classes is provided through ...
virtual ~TFCSEnergyAndHitGANV2()
std::vector< int > m_bin_ninit
bool initializeNetwork(int const &pid, int const &etaMin, const std::string &FastCaloGANInputFolderName)
TFCSGANEtaSlice * m_slice
virtual bool is_match_all_calosample() const override
static void unit_test(TFCSSimulationState *simulstate=nullptr, const TFCSTruthState *truth=nullptr, const TFCSExtrapolationState *extrapol=nullptr)
unsigned int get_nr_of_init(unsigned int bin) const
void reset_OnlyScaleEnergy()
virtual int get_bin(TFCSSimulationState &simulstate, const TFCSTruthState *, const TFCSExtrapolationState *) const override
use the layer to be done as binning of the GAN chain
static void test_path(const std::string &path, TFCSSimulationState *simulstate=nullptr, const TFCSTruthState *truth=nullptr, const TFCSExtrapolationState *extrapol=nullptr, const std::string &outputname="unnamed", int pid=211)
virtual const std::string get_variable_text(TFCSSimulationState &simulstate, const TFCSTruthState *, const TFCSExtrapolationState *) const override
void SetRegionAndSliceFromXML(int pid, int etaMax, std::string FastCaloGANInputFolderName)
int GetAlphaBinsForRBin(const TAxis *x, int ix, int yBinNum) const
bool OnlyScaleEnergy() const
static int GetBinsInFours(double const &bins)
void set_OnlyScaleEnergy()
virtual void Print(Option_t *option="") const override
const TFCSGANXMLParameters::Binning & get_Binning() const
virtual bool is_match_all_Ekin_bin() const override
FCSEnergyInitializationStatusBits
Status bit for energy initialization.
@ kOnlyScaleEnergy
Set this bit in the TObject bit field the simulated energy.
virtual bool is_match_calosample(int calosample) const override
virtual bool is_match_Ekin_bin(int) const override
const TFCSGANEtaSlice::ExtrapolatorWeights get_ExtrapolationWeights() const
TFCSEnergyAndHitGANV2(const char *name=nullptr, const char *title=nullptr)
bool fillEnergy(TFCSSimulationState &simulstate, const TFCSTruthState *truth, const TFCSExtrapolationState *extrapol) const
FCSGANfreemem
Status bit for chain persistency.
@ kGANfreemem
Set this bit in the TObject bit if the memory for m_input should be freed after reading in athena.
virtual FCSReturnCode simulate(TFCSSimulationState &simulstate, const TFCSTruthState *truth, const TFCSExtrapolationState *extrapol) const override
Method in all derived classes to do some simulation.
void set_nr_of_init(unsigned int bin, unsigned int ninit)
TFCSGANXMLParameters m_param
std::map< int, double > ExtrapolatorWeights
std::map< int, TH2D > Binning
TFCSParametrizationBinnedChain(const char *name=nullptr, const char *title=nullptr)
const T getAuxInfo(std::uint32_t index) const