Logo ROOT  
Reference Guide
RooHelpers Namespace Reference

Classes

struct  DisableCachingRAII
 Disable all caches for sub-branches in an expression tree. More...
 
class  HijackMessageStream
 Hijacks all messages with given level and topic (and optionally object name) while alive. More...
 
class  LocalChangeMsgLevel
 Switches the message service to a different level while the instance is alive. More...
 
struct  WrapIntoTObject
 Wrap an object into a TObject. Sometimes needed to avoid reinterpret_cast or enable RTTI. More...
 

Functions

bool checkIfRangesOverlap (RooAbsPdf const &pdf, RooAbsData const &data, std::vector< std::string > const &rangeNames)
 Check if there is any overlap when a list of ranges is applied to a set of observables. More...
 
void checkRangeOfParameters (const RooAbsReal *callingClass, std::initializer_list< const RooAbsReal * > pars, double min=-std::numeric_limits< double >::max(), double max=std::numeric_limits< double >::max(), bool limitsInAllowedRange=false, std::string const &extraMessage="")
 Check if the parameters have a range, and warn if the range extends below / above the set limits. More...
 
std::string getColonSeparatedNameString (RooArgSet const &argSet)
 Create a string with all sorted names of RooArgSet elements separated by colons. More...
 
std::pair< double, doublegetRangeOrBinningInterval (RooAbsArg const *arg, const char *rangeName)
 Get the lower and upper bound of parameter range if arg can be casted to RooAbsRealLValue. More...
 
RooArgSet selectFromArgSet (RooArgSet const &argSet, std::string const &names)
 Construct a RooArgSet of objects in a RooArgSet whose names match to those in the names string. More...
 
std::vector< std::string > tokenise (const std::string &str, const std::string &delims, bool returnEmptyToken)
 Tokenise the string by splitting at the characters in delims. More...
 

Function Documentation

◆ checkIfRangesOverlap()

bool RooHelpers::checkIfRangesOverlap ( RooAbsPdf const &  pdf,
RooAbsData const &  data,
std::vector< std::string > const &  rangeNames 
)

Check if there is any overlap when a list of ranges is applied to a set of observables.

Parameters
[in]argRooAbsCollection with the observables to check for overlap.
[in]rangeNameThe names of the ranges.

Definition at line 206 of file RooHelpers.cxx.

◆ checkRangeOfParameters()

void RooHelpers::checkRangeOfParameters ( const RooAbsReal callingClass,
std::initializer_list< const RooAbsReal * >  pars,
double  min,
double  max,
bool  limitsInAllowedRange,
std::string const &  extraMessage 
)

Check if the parameters have a range, and warn if the range extends below / above the set limits.

Parameters
[in]callingClassClass that's calling. Needed to include name and type name of the class in error message.
[in]parsList of all parameters to be checked.
[in]minMinimum of allowed range. min itself counts as disallowed.
[in]maxMaximum of allowed range. max itself counts as disallowed.
[in]limitsInAllowedRangeIf true, the limits passed as parameters are part of the allowed range.
[in]extraMessageMessage that should be appended to the warning.

Definition at line 141 of file RooHelpers.cxx.

◆ getColonSeparatedNameString()

std::string RooHelpers::getColonSeparatedNameString ( RooArgSet const &  argSet)

Create a string with all sorted names of RooArgSet elements separated by colons.

Parameters
[in]argargSet The input RooArgSet.

Definition at line 271 of file RooHelpers.cxx.

◆ getRangeOrBinningInterval()

std::pair< double, double > RooHelpers::getRangeOrBinningInterval ( RooAbsArg const *  arg,
const char *  rangeName 
)

Get the lower and upper bound of parameter range if arg can be casted to RooAbsRealLValue.

If no range with rangeName is defined for the argument, this will check if a binning of the same name exists and return the interval covered by the binning. Returns {-infinity, infinity} if agument can't be casted to RooAbsRealLValue* or if no range or binning with the requested name exists.

Parameters
[in]argRooAbsArg for which to get the range.
[in]rangeNameThe name of the range.

Definition at line 190 of file RooHelpers.cxx.

◆ selectFromArgSet()

RooArgSet RooHelpers::selectFromArgSet ( RooArgSet const &  argSet,
std::string const &  names 
)

Construct a RooArgSet of objects in a RooArgSet whose names match to those in the names string.

Parameters
[in]argargSet The input RooArgSet.
[in]argnames The names of the objects to select in a colon-separated string.

Definition at line 292 of file RooHelpers.cxx.

◆ tokenise()

std::vector< std::string > RooHelpers::tokenise ( const std::string &  str,
const std::string &  delims,
bool  returnEmptyToken 
)

Tokenise the string by splitting at the characters in delims.

Consecutive delimiters are collapsed, so that no delimiters will appear in the tokenised strings, and no emtpy strings are returned.

Parameters
[in]strString to tokenise.
[in]delimsOne or more delimiters used to split the string.
[in]returnEmptyTokenIf the string is empty, return one empty token. Default is to return an empty vector.

Definition at line 67 of file RooHelpers.cxx.