31#ifndef G4THnToolsManager_h
32#define G4THnToolsManager_h 1
46template <
unsigned int DIM,
typename HT>
65 const std::array<G4HnDimension, DIM>& bins,
66 const std::array<G4HnDimensionInformation, DIM>& hnInfo)
override;
69 const std::array<G4HnDimension, DIM>& bins,
70 const std::array<G4HnDimensionInformation, DIM>& hnInfo)
override;
101 virtual const std::shared_ptr<G4HnManager>
GetHnManager()
const override;
112 static constexpr std::string_view
fkClass {
"G4THnToolsManager" };
116 const std::array<G4HnDimensionInformation, DIM>& hnInfo);
119 const std::array<G4HnDimensionInformation, DIM>& hnInfo);
121 void AddAnnotation(HT* ht,
122 const std::array<G4HnDimensionInformation, DIM>& hnInfo);
128 HT* CreateToolsHT(
const G4String& title,
129 const std::array<G4HnDimension, DIM>& bins,
130 const std::array<G4HnDimensionInformation, DIM>& hnInfo);
132 void ConfigureToolsHT(HT* ht,
133 const std::array<G4HnDimension, DIM>& bins,
134 const std::array<G4HnDimensionInformation, DIM>& hnInfo);
137 std::array<G4double, DIM>& value,
141 static const std::array<std::string, 3> fkKeyAxisTitle;
143 std::unique_ptr<G4UImessenger> fMessenger;
149#include "G4THnToolsManager.icc"
150#include "G4THnMessenger.icc"
HT * GetTInFunction(G4int id, std::string_view functionName, G4bool warn=true, G4bool onlyIfActive=true) const
std::pair< HT *, G4HnInformation * > GetTHnInFunction(G4int id, std::string_view functionName, G4bool warn=true, G4bool onlyIfActive=true) const
G4int RegisterT(const G4String &name, HT *ht, G4HnInformation *info=nullptr)
G4int GetTId(const G4String &name, G4bool warn=true) const
void Message(G4int level, const G4String &action, const G4String &objectType, const G4String &objectName="", G4bool success=true) const
G4bool IsVerbose(G4int verboseLevel) const