32using std::make_unique;
36 TNamed(
"RooNameReg",
"RooFit Name Registry")
55 if (inStr==
nullptr)
return nullptr ;
58 auto elm =
_map.find(inStr) ;
59 if (elm !=
_map.end())
return elm->second.get();
62 auto t = make_unique<TNamed>(inStr,inStr);
64 _map.emplace(std::string(inStr), std::move(t));
75 if (stringPtr==
nullptr)
return nullptr ;
86 if (inStr==
nullptr)
return nullptr ;
88 const auto elm =
reg._map.find(inStr);
89 return elm !=
reg._map.end() ? elm->second.get() :
nullptr;
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void reg
Registry for const char* names.
std::unordered_map< std::string, std::unique_ptr< TNamed > > _map
static const TNamed * ptr(const char *stringPtr)
Return a unique TNamed pointer for given C++ string.
std::size_t _renameCounter
const TNamed * constPtr(const char *stringPtr)
Return a unique TNamed pointer for given C++ string.
static RooNameReg & instance()
Return reference to singleton instance.
static const TNamed * known(const char *stringPtr)
If the name is already known, return its TNamed pointer. Otherwise return 0 (don't register the name)...
static void incrementRenameCounter()
The renaming counter has to be incremented every time a RooAbsArg is renamed.
static const std::size_t & renameCounter()
renamed in this RooFit process.
The TNamed class is the base class for all named ROOT classes.