14#ifndef RooFit_Detail_CFunctionBinding_h
15#define RooFit_Detail_CFunctionBinding_h
42 template <
class... ArgNames>
43 void add(
const char *
name, Func ptr, ArgNames... argNames)
120 if (tmpName ==
"UNKNOWN" && R__v > 0) {
123 <<
"WARNING: Objected embeds function pointer to unknown function, object will not be functional"
132 if (ptr ==
nullptr) {
134 <<
"ERROR: Objected embeds pointer to function named " << tmpName
135 <<
" but no such function is registered, object will not be functional" << std::endl;
148 if (tmpName.
Length() == 0) {
151 <<
" written object will not be functional when read back" << std::endl;
165 os <<
"[ function=" << funcName <<
" ";
size_t size(const MatrixT &matrix)
retrieve the size of a square matrix
short Version_t
Class version identifier (short)
winID h TVirtualViewer3D TVirtualGLPainter p
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t Float_t Float_t Float_t Int_t Int_t UInt_t UInt_t Rectangle_t result
char * Form(const char *fmt,...)
Formats a string in a circular formatting buffer.
Common abstract base class for objects that represent a value and a "shape" in RooFit.
Int_t numProxies() const
Return the number of registered proxies.
RooAbsProxy * getProxy(Int_t index) const
Return the nth proxy from the proxy list.
Abstract interface for proxy classes.
Name <-> pointer mapping service for C functions of type Func, used to persist the RooCFunction[1-4]R...
Func lookupPtr(const char *name)
Return pointer of function given by name.
const char * nameOrAddress(Func ptr)
Return registered name of a function.
void add(const char *name, Func ptr, ArgNames... argNames)
Register function with given name and argument names.
const char * lookupArgName(Func ptr, UInt_t iarg)
Return name of i-th argument of function.
static void * toVoidPtr(Func ptr)
std::map< Func, std::vector< std::string > > _argnamemap
std::map< Func, std::string > _namemap
const char * lookupName(Func ptr)
Return name of function given by pointer.
std::map< std::string, Func > _ptrmap
Buffer base class used for serializing objects.
virtual Version_t ReadVersion(UInt_t *start=nullptr, UInt_t *bcnt=nullptr, const TClass *cl=nullptr)=0
virtual void SetByteCount(UInt_t cntpos, Bool_t packInVersion=kFALSE)=0
virtual Int_t CheckByteCount(UInt_t startpos, UInt_t bcnt, const TClass *clss)=0
virtual UInt_t WriteVersion(const TClass *cl, Bool_t useBcnt=kFALSE)=0
Mother of all ROOT objects.
virtual TClass * IsA() const
const char * Data() const
Bool_t BeginsWith(const char *s, ECaseCompare cmp=kExact) const
virtual void Streamer(TBuffer &)
Stream a string object.
void printCFunctionArgs(std::ostream &os, RooAbsArg const &arg, const char *funcName)
Print arguments of a function binding and name/address of the function pointer.
void streamCFunctionRef(TBuffer &R__b, TObject const &self, Func &ptr, Func dummyFunction, CFunctionMap< Func > &fmap)
Custom streamer for function pointer reference objects.
The namespace RooFit contains mostly switches that change the behaviour of functions of PDFs (or othe...