29#ifndef G4AnalysisUtilities_h
30#define G4AnalysisUtilities_h 1
63constexpr unsigned int kDim1 { 1 };
64constexpr unsigned int kDim2 { 2 };
65constexpr unsigned int kDim3 { 3 };
74 const std::string_view inClass,
75 const std::string_view inFunction);
96 std::size_t lastColon = hnTypeLong.rfind(
":");
97 if (lastColon != G4String::npos && lastColon + 1 < hnTypeLong.length()) {
98 G4String potentialType = hnTypeLong.substr(lastColon + 1);
99 if (potentialType.length() >= 2 &&
100 (potentialType.substr(0, 1) ==
"h" || potentialType.substr(0, 1) ==
"p")) {
101 return potentialType.substr(0, 2);
104 G4cerr <<
"Warning: Could not extract short hnType for " << hnTypeLong <<
G4endl;
108template <
typename HT>
112 G4String hnTypeLong = HT::s_class();
113 std::size_t length = hnTypeLong.length();
114 return (length >= 3 && hnTypeLong.substr(length - 3) ==
"p1d") ||
115 (length >= 3 && hnTypeLong.substr(length - 3) ==
"p2d");
136 const G4String& defaultExtension =
"");
172 G4int ntupleFileNumber,
G4GLOB_DLL std::ostream G4cerr
G4String GetExtension(const G4String &fileName, const G4String &defaultExtension="")
constexpr unsigned int kDefaultBasketSize
void Tokenize(const G4String &line, std::vector< G4String > &tokens)
size_t GetOutputId(const G4String &outputName, G4bool warn=true)
constexpr unsigned int kDim3
std::string ToString(const T &value)
std::string ToString< std::string >(const std::string &value)
G4String GetTnFileName(const G4String &fileName, const G4String &fileType, G4int cycle=0)
G4String GetPlotFileName(const G4String &fileName)
constexpr std::string_view kNamespaceName
G4double GetUnitValue(const G4String &unit)
G4String GetOutputName(G4AnalysisOutput outputType)
constexpr unsigned int kMaxDim
G4AnalysisOutput GetOutput(const G4String &outputName, G4bool warn=true)
G4String GetNtupleFileName(const G4String &fileName, const G4String &fileType, const G4String &ntupleName, G4int cycle=0)
constexpr G4int kInvalidId
constexpr unsigned int kDefaultBasketEntries
G4String GetHnFileName(const G4String &fileName, const G4String &fileType, const G4String &hnType, const G4String &hnName)
G4String GetBaseName(const G4String &fileName)
void Warn(const G4String &message, const std::string_view inClass, const std::string_view inFunction)
constexpr unsigned int kDim2
constexpr unsigned int kDim1
std::string to_string(G4FermiAtomicMass mass)