37    TNamed(
"RooNameReg",
"RooFit Name Registry")
 
   64  if (inStr==0) 
return 0 ;
 
   67  auto elm = 
_map.find(inStr) ;
 
   68  if (elm != 
_map.end()) 
return elm->second.get();
 
   71  auto t = make_unique<TNamed>(inStr,inStr);
 
   73  _map.emplace(std::string(inStr), std::move(t));
 
   85  if (namePtr) 
return namePtr->
GetName() ;
 
   95  if (stringPtr==0) 
return 0 ;
 
  105  if (
ptr==0) 
return 0 ;
 
  116  if (inStr==0) 
return 0 ;
 
  118  const auto elm = reg.
_map.find(inStr);
 
  119  return elm != reg.
_map.end() ? elm->second.get() : 
nullptr;
 
RooNameReg is a registry for const char* names.
 
std::unordered_map< std::string, std::unique_ptr< TNamed > > _map
 
static const char * str(const TNamed *ptr)
Return C++ string corresponding to given TNamed pointer.
 
static const TNamed * ptr(const char *stringPtr)
Return a unique TNamed pointer for given C++ string.
 
virtual ~RooNameReg()
Destructor.
 
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)...
 
const char * constStr(const TNamed *namePtr)
Return C++ string corresponding to given TNamed pointer.
 
The TNamed class is the base class for all named ROOT classes.
 
virtual const char * GetName() const
Returns name of object.