library: libHist #include "TFormulaPrimitive.h"

# TFormulaPrimitive

class description - source file - inheritance tree (.pdf)

## class TFormulaPrimitive : public TNamed

| Inheritance Chart:
`TObject`
| <- | `TNamed`
| <- | `TFormulaPrimitive` |

        protected:

          static Int_t BuildBasicFormulas()

        public:

                                    TFormulaPrimitive()
                                    TFormulaPrimitive(const char* name, const char* formula, TFormulaPrimitive::GenFunc0 fpointer)
                                    TFormulaPrimitive(const char* name, const char* formula, TFormulaPrimitive::GenFuncG fpointer, Int_t npar)
                                    TFormulaPrimitive(const char* name, const char* formula, TFormulaPrimitive::TFunc0 fpointer)
                                    TFormulaPrimitive(const TFormulaPrimitive&)
                                    ~TFormulaPrimitive()
                       static Int_t AddFormula(TFormulaPrimitive* formula)
                     static TClass* Class()
                           Double_t Eval(Double_t* x)
                           Double_t Eval(TObject* o, Double_t* x)
                           Double_t Eval(Double_t* x, Double_t* param)
          static TFormulaPrimitive* FindFormula(const char* name)
                    virtual TClass* IsA() const
                 TFormulaPrimitive& operator=(const TFormulaPrimitive&)
                       virtual void ShowMembers(TMemberInspector& insp, char* parent)
                       virtual void Streamer(TBuffer& b)
                               void StreamerNVirtual(TBuffer& b)

### Data Members

        protected:

          static TObjArray* fgListOfFunction  !list of global primitive formulas
                      void* fFuncG            //!pointer to the TFormula generic function
                      void* fFunc0            //!pointer to the function
                      void* fFunc10           //!pointer to the function
                      void* fFunc110          //!pointer to the function
                      void* fFunc1110         //!pointer to the function
               G__p2memfunc fTFuncG           !pointer to the TFormula generic function
               G__p2memfunc fTFunc0           //! pointer to member function
               G__p2memfunc fTFunc10          //! pointer to member function
               G__p2memfunc fTFunc110         //! pointer to member function
               G__p2memfunc fTFunc1110        //! pointer to member function
                      Int_t fType             type of the function
                      Int_t fNArguments       number of arguments
                      Int_t fNParameters      number of parameters
                     Bool_t fIsStatic         indication if the function is static

## Class Description

    *-*-*-*-*-*-*-*-*-*-*The  F O R M U L A   P R I M I T I V E   class*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
    *-*                  =========================
    *-*
    *-*
    *-*    Helper class for TFormula to speed up TFormula evaluation
    *-*    TFormula can use all functions registered in the list of TFormulaPrimitives
    *-*    User can add new function to the list of primitives
    *-*    if FormulaPrimitive with given name is already defined new primitive is ignored
    *-*    Example:
    *-*      TFormulaPrimitive::AddFormula(new TFormulaPrimitive("Pow2","Pow2",TFastFun::Pow2));
    *-*      TF1 f1("f1","Pow2(x)");
    *-*
    *-*
    *-*

TFormulaPrimitive() : TNamed()

TFormulaPrimitive(const char *name,const char *formula, GenFunc0 fpointer) : TNamed(name,formula)

TFormulaPrimitive(const char *name,const char *formula, GenFunc10 fpointer) : TNamed(name,formula)

TFormulaPrimitive(const char *name,const char *formula, GenFunc110 fpointer) : TNamed(name,formula)

TFormulaPrimitive(const char *name,const char *formula, GenFunc1110 fpointer) : TNamed(name,formula)

TFormulaPrimitive(const char *name,const char *formula, GenFuncG fpointer,Int_t npar) : TNamed(name,formula)

TFormulaPrimitive(const char *name,const char *formula, TFuncG fpointer) : TNamed(name,formula)

TFormulaPrimitive(const char *name,const char *formula, TFunc0 fpointer) : TNamed(name,formula)

TFormulaPrimitive(const char *name,const char *formula, TFunc10 fpointer) : TNamed(name,formula)

TFormulaPrimitive(const char *name,const char *formula, TFunc110 fpointer) : TNamed(name,formula)

TFormulaPrimitive(const char *name,const char *formula, TFunc1110 fpointer) :TNamed(name,formula)

TFormulaPrimitive* FindFormula(const char* name)

    find the formula in the list of formulas

Int_t AddFormula(TFormulaPrimitive * formula)

     add formula to the list of primitive formulas
     if primitive formula already defined do nothing

Double_t Eval(Double_t* x)

     Eval primitive function at point x

Double_t Eval(TObject *o, Double_t *x)

     Eval member function of object o at point x

Double_t Eval(Double_t *x, Double_t *param)

    eval primitive parametric function

Int_t BuildBasicFormulas()

     built-in functions

### Inline Functions

                          void ~TFormulaPrimitive()
                       TClass* Class()
                       TClass* IsA() const
                          void ShowMembers(TMemberInspector& insp, char* parent)
                          void Streamer(TBuffer& b)
                          void StreamerNVirtual(TBuffer& b)
            TFormulaPrimitive& operator=(const TFormulaPrimitive&)

Author: Marian Ivanov, 2005
Last update: root/hist:$Name: $:$Id: TFormulaPrimitive.cxx,v 1.2 2005/05/18 12:31:09 brun Exp $