class THaVform: public THaFormula

Function Members (Methods)

public:
THaVform()
THaVform(const THaVform& vform)
THaVform(const char* type, const char* name, const char* formula, const THaVarList* vlst = gHaVars, const THaCutList* clst = gHaCuts)
virtual~THaVform()
voidTObject::AbstractMethod(const char* method) const
virtual voidTFormula::Analyze(const char* schain, Int_t& err, Int_t offset = 0)
virtual Bool_tTFormula::AnalyzeFunction(TString& chaine, Int_t& err, Int_t offset = 0)
virtual voidTObject::AppendPad(Option_t* option = "")
virtual voidTObject::Browse(TBrowser* b)
static TClass*Class()
virtual const char*TObject::ClassName() const
virtual voidTFormula::Clear(Option_t* option = "")
virtual TObject*TNamed::Clone(const char* newname = "") const
virtual Int_tTNamed::Compare(const TObject* obj) const
virtual Int_tTHaFormula::Compile(const char* expression = "")
virtual voidTFormula::Copy(TObject& formula) const
virtual Int_tTHaFormula::DefinedCut(const TString& variable)
virtual Int_tDefinedGlobalVariable(const TString& variable)
virtual char*THaFormula::DefinedString(Int_t i)
virtual Double_tTHaFormula::DefinedValue(Int_t i)
virtual Int_tTHaFormula::DefinedVariable(TString& variable, Int_t& action)
virtual voidTObject::Delete(Option_t* option = "")MENU
virtual Int_tTObject::DistancetoPrimitive(Int_t px, Int_t py)
virtual voidTObject::Draw(Option_t* option = "")
virtual voidTObject::DrawClass() constMENU
virtual TObject*TObject::DrawClone(Option_t* option = "") constMENU
virtual voidTObject::Dump() constMENU
virtual voidTObject::Error(const char* method, const char* msgfmt) const
voidErrPrint(Int_t status) const
virtual Double_tTHaFormula::Eval()
virtual Double_tTHaFormula::Eval(Double_t, Double_t = 0.0, Double_t = 0.0, Double_t = 0.0) const
virtual Double_tTFormula::EvalPar(const Double_t* x, const Double_t* params = 0)
virtual Double_tTFormula::EvalParOld(const Double_t* x, const Double_t* params = 0)
virtual voidTObject::Execute(const char* method, const char* params, Int_t* error = 0)
virtual voidTObject::Execute(TMethod* method, TObjArray* params, Int_t* error = 0)
virtual voidTObject::ExecuteEvent(Int_t event, Int_t px, Int_t py)
virtual voidTObject::Fatal(const char* method, const char* msgfmt) const
virtual voidTNamed::FillBuffer(char*& buffer)
virtual TObject*TObject::FindObject(const char* name) const
virtual TObject*TObject::FindObject(const TObject* obj) const
Double_tGetData(Int_t index = 0) const
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
virtual TStringTHaFormula::GetExpFormula(Option_t* opt = "") const
virtual const char*TObject::GetIconName() const
virtual const TObject*TFormula::GetLinearPart(Int_t i)
virtual const char*TNamed::GetName() const
virtual Int_tTFormula::GetNdim() const
virtual Int_tTFormula::GetNpar() const
virtual Int_tTFormula::GetNumber() const
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
virtual Option_t*TObject::GetOption() const
Double_tTFormula::GetParameter(Int_t ipar) const
Double_tTFormula::GetParameter(const char* name) const
virtual Double_t*TFormula::GetParameters() const
virtual voidTFormula::GetParameters(Double_t* params)
virtual const char*TFormula::GetParName(Int_t ipar) const
virtual Int_tTFormula::GetParNumber(const char* name) const
Int_tGetSize() const
virtual const char*TNamed::GetTitle() const
virtual UInt_tTObject::GetUniqueID() const
vector<string>GetVars() const
virtual Bool_tTObject::HandleTimer(TTimer* timer)
virtual ULong_tTNamed::Hash() const
virtual voidTObject::Info(const char* method, const char* msgfmt) const
virtual Bool_tTObject::InheritsFrom(const char* classname) const
virtual Bool_tTObject::InheritsFrom(const TClass* cl) const
Int_tInit()
virtual voidTObject::Inspect() constMENU
voidTObject::InvertBit(UInt_t f)
virtual TClass*IsA() const
Bool_tIsCut() const
virtual Bool_tTObject::IsEqual(const TObject* obj) const
Bool_tTHaFormula::IsError() const
Bool_tIsEye() const
virtual Bool_tTObject::IsFolder() const
Bool_tIsFormula() const
virtual Bool_tTFormula::IsLinear()
virtual Bool_tTFormula::IsNormalized()
Bool_tTObject::IsOnHeap() const
virtual Bool_tTNamed::IsSortable() const
Bool_tIsVarray() const
Bool_tTObject::IsZombie() const
voidLongPrint() const
virtual voidTNamed::ls(Option_t* option = "") const
voidTObject::MayNotUse(const char* method) const
virtual Bool_tTObject::Notify()
static voidTObject::operator delete(void* ptr)
static voidTObject::operator delete(void* ptr, void* vp)
static voidTObject::operator delete[](void* ptr)
static voidTObject::operator delete[](void* ptr, void* vp)
void*TObject::operator new(size_t sz)
void*TObject::operator new(size_t sz, void* vp)
void*TObject::operator new[](size_t sz)
void*TObject::operator new[](size_t sz, void* vp)
THaVform&operator=(const THaVform& vform)
voidTFormula::Optimize()
virtual voidTObject::Paint(Option_t* option = "")
virtual voidTObject::Pop()
virtual voidTHaFormula::Print(Option_t* option = "") constMENU
Int_tProcess()
virtual voidTFormula::ProcessLinear(TString& replaceformula)
virtual Int_tTObject::Read(const char* name)
voidReAttach()
virtual voidTObject::RecursiveRemove(TObject* obj)
voidTObject::ResetBit(UInt_t f)
virtual voidTObject::SaveAs(const char* filename = "", Option_t* option = "") constMENU
virtual voidTObject::SavePrimitive(basic_ostream<char,char_traits<char> >& out, Option_t* option = "")
voidTObject::SetBit(UInt_t f)
voidTObject::SetBit(UInt_t f, Bool_t set)
voidTHaFormula::SetCutList(const THaCutList* lst)
virtual voidTObject::SetDrawOption(Option_t* option = "")MENU
static voidTObject::SetDtorOnly(void* obj)
voidTHaFormula::SetList(const THaVarList* lst)
static voidTFormula::SetMaxima(Int_t maxop = 1000, Int_t maxpar = 1000, Int_t maxconst = 1000)
virtual voidTNamed::SetName(const char* name)MENU
virtual voidTNamed::SetNameTitle(const char* name, const char* title)
virtual voidTFormula::SetNumber(Int_t number)
static voidTObject::SetObjectStat(Bool_t stat)
Int_tSetOutput(TTree* tree)
virtual voidTFormula::SetParameter(const char* name, Double_t parvalue)
virtual voidTFormula::SetParameter(Int_t ipar, Double_t parvalue)
virtual voidTFormula::SetParameters(const Double_t* params)
virtual voidTFormula::SetParameters(Double_t p0, Double_t p1, Double_t p2 = 0, Double_t p3 = 0, Double_t p4 = 0, Double_t p5 = 0, Double_t p6 = 0, Double_t p7 = 0, Double_t p8 = 0, Double_t p9 = 0, Double_t p10 = 0)MENU
virtual voidTFormula::SetParName(Int_t ipar, const char* name)
virtual voidTFormula::SetParNames(const char* name0 = "p0", const char* name1 = "p1", const char* name2 = "p2", const char* name3 = "p3", const char* name4 = "p4", const char* name5 = "p5", const char* name6 = "p6", const char* name7 = "p7", const char* name8 = "p8", const char* name9 = "p9", const char* name10 = "p10")MENU
virtual voidTNamed::SetTitle(const char* title = "")MENU
virtual voidTObject::SetUniqueID(UInt_t uid)
voidShortPrint() const
virtual voidShowMembers(TMemberInspector& insp, char* parent)
virtual Int_tTNamed::Sizeof() const
virtual voidStreamer(TBuffer& b)
voidStreamerNVirtual(TBuffer& b)
virtual voidTObject::SysError(const char* method, const char* msgfmt) const
Bool_tTObject::TestBit(UInt_t f) const
Int_tTObject::TestBits(UInt_t f) const
virtual voidTFormula::Update()
virtual voidTObject::UseCurrentStyle()
virtual voidTObject::Warning(const char* method, const char* msgfmt) const
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0)
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0) const
protected:
voidTFormula::ClearFormula(Option_t* option = "")
virtual voidTFormula::Convert(UInt_t fromVersion)
voidCreate(const THaVform& vf)
virtual voidTObject::DoError(int level, const char* location, const char* fmt, va_list va) const
Double_tTFormula::EvalParFast(const Double_t* x, const Double_t* params)
Double_tTFormula::EvalPrimitive(const Double_t* x, const Double_t* params)
Double_tTFormula::EvalPrimitive0(const Double_t* x, const Double_t* params)
Double_tTFormula::EvalPrimitive1(const Double_t* x, const Double_t* params)
Double_tTFormula::EvalPrimitive2(const Double_t* x, const Double_t* params)
Double_tTFormula::EvalPrimitive3(const Double_t* x, const Double_t* params)
Double_tTFormula::EvalPrimitive4(const Double_t* x, const Double_t* params)
Short_tTFormula::GetAction(Int_t code) const
Short_tTFormula::GetActionOptimized(Int_t code) const
Int_tTFormula::GetActionParam(Int_t code) const
Int_tTFormula::GetActionParamOptimized(Int_t code) const
voidGetForm(Int_t size)
Int_t*TFormula::GetOper() const
Int_t*TFormula::GetOperOptimized() const
virtual Bool_tTHaFormula::IsString(Int_t oper) const
Int_tMakeFormula(Int_t flo, Int_t fhi)
voidTFormula::MakePrimitive(const char* expr, Int_t pos)
voidTObject::MakeZombie()
Int_tTFormula::PreCompile()
voidTFormula::SetAction(Int_t code, Int_t value, Int_t param = 0)
voidTFormula::SetActionOptimized(Int_t code, Int_t value, Int_t param = 0)
stringStripBracket(const string& var) const
stringStripPrefix(const char* formula)
voidUncreate()

Data Members

public:
enum FTy { kCut
kForm
kEye
kVarArray
kUnknown
};
enum FAr { kScaler
kAElem
kFAType
kVAType
};
enum FAp { kNoPrefix
kAnd
kOr
kSum
};
enum FEr { kOK
kIllVar
kIllTyp
kNoGlo
kIllMix
kArrZer
kArrSiz
kUnkPre
kIllPre
};
enum THaFormula::[unnamed] { kMAXCODES
};
enum THaFormula::EVariableType { kUndefined
kVariable
kCut
kString
};
enum TFormula::[unnamed] { kEnd
kAdd
kSubstract
kMultiply
kDivide
kModulo
kcos
ksin
ktan
kacos
kasin
katan
katan2
kfmod
kpow
ksq
ksqrt
kstrstr
kmin
kmax
klog
kexp
klog10
kpi
kabs
ksign
kint
kSignInv
krndm
kAnd
kOr
kEqual
kNotEqual
kLess
kGreater
kLessThan
kGreaterThan
kNot
kcosh
ksinh
ktanh
kacosh
kasinh
katanh
kStringEqual
kStringNotEqual
kBitAnd
kBitOr
kLeftShift
kRightShift
kexpo
kxexpo
kyexpo
kzexpo
kxyexpo
kgaus
kxgaus
kygaus
kzgaus
kxygaus
klandau
kxlandau
kylandau
kzlandau
kxylandau
kpol
kxpol
kypol
kzpol
kParameter
kConstant
kBoolOptimize
kStringConst
kVariable
kFunctionCall
kData
kUnary
kBinary
kThree
kDefinedVariable
kDefinedString
kPlusD
kPlusDD
kMultD
kMultDD
kBoolOptimizeOr
kBoolOptimizeAnd
kBoolSet
kFDM
kFD0
kFD1
kFD2
kFD3
kNotGlobal
kNormalized
kLinear
};
enum TObject::EStatusBits { kCanDelete
kMustCleanup
kObjInCanvas
kIsReferenced
kHasUUID
kCannotPick
kNoContextMenu
kInvalidObject
};
enum TObject::[unnamed] { kIsOnHeap
kNotDeleted
kZombie
kBitMask
kSingleKey
kOverwrite
kWriteDelete
};
public:
G__p2memfuncTFormula::fOptimal!pointer to optimal function
static Option_t *constTHaFormula::kPRINTBRIEF
static Option_t *constTHaFormula::kPRINTFULL
protected:
TBitsTFormula::fAlreadyFound! cache for information
Double_t*TFormula::fConst[fNconst] Array of fNconst formula constants
vector<THaCut*>fCut
const THaCutList*THaFormula::fCutListPointer to list of cuts
Double_tfData
Bool_tTHaFormula::fErrorFlag indicating error in expression
TString*TFormula::fExpr[fNoper] List of expressions
TString*TFormula::fExprOptimized![fNOperOptimized] List of expressions
vector<THaFormula*>fFormula
TObjArrayTFormula::fFunctionsArray of function calls to make
TObjArrayTFormula::fLinearParts! Linear parts if the formula is linear (contains '|')
Int_tTFormula::fNOperOptimized!Number of operators after optimization
TStringTNamed::fNameobject identifier
TString*TFormula::fNames[fNpar] Array of parameter names
Int_tTHaFormula::fNcodesNumber of global variables referenced in formula
Int_tTFormula::fNconstNumber of constants
Int_tTFormula::fNdimDimension of function (1=1-Dim, 2=2-Dim,etc)
Int_tTFormula::fNoperNumber of operators
Int_tTFormula::fNparNumber of parameters
Int_tTFormula::fNstringNumber of different constants character strings
Int_tTFormula::fNumberformula number identifier
Int_tTFormula::fNvalNumber of different variables in expression
Int_tfNvar
Int_tfObjSize
THaOdata*fOdata
TOperOffset*TFormula::fOperOffset![fNOperOptimized] Offsets of operrands
Int_t*TFormula::fOperOptimized![fNOperOptimized] List of operators. (See documentation for changes made at version 7)
Double_t*TFormula::fParams[fNpar] Array of fNpar parameters
TFormulaPrimitive**TFormula::fPredefined![fNPar] predefined function
Int_tfPrefix
Bool_tTHaFormula::fRegisterIf true, register this formula in ROOT's global list
vector<string>fSarray
stringfStitle
TStringTNamed::fTitleobject title
THaVform::FTyfType
THaFormula::FVarDef_t*THaFormula::fVarDefArray of variable definitions
const THaVarList*THaFormula::fVarListPointer to list of variables
vector<string>fVarName
THaVar*fVarPtr
vector<Int_t>fVarStat
vector<string>fVectSform
stringfgAndStr
static const Int_tfgDebug
stringfgOrStr
stringfgSumStr
static const Int_tfgVFORM_HUGE

Class Charts

Inheritance Chart:
TFormula
THaFormula
THaVform

Function documentation

THaVform(const char* type, const char* name, const char* formula, const THaVarList* vlst = gHaVars, const THaCutList* clst = gHaCuts)
THaVform(const THaVform& vform)
 Copy ctor
~THaVform()
THaVform & operator=(const THaVform& vform)
void Create(const THaVform& vf)
void Uncreate()
void LongPrint()
void ShortPrint()
void ErrPrint(Int_t status) const
 Gives friendly explanation of the usage errors.
 The possibilities are only bounded by human imagination.
vector<string> GetVars()
 Get names of variable that are used by this formula.
Int_t Init()
 Initialize the variables of this Vform.
 For explanation of return status see "ExplainErr"
void ReAttach( )
 Store one pointer to be able to get the size.
 (see explanation in Init).  Also recompile the
 THaCut's and THaFormula's to reattach to variables.
Int_t MakeFormula(Int_t flo, Int_t fhi)
 Return status :
    0 = ok
 kUnkPre = tried to use an unknown prefix ("OR:", etc)
 kIllPre = ambiguity of whether this is a cut.
string StripPrefix(const char* formula)
string StripBracket(const string& var) const
 If the string contains "[anything]", we strip
 it away.
Int_t SetOutput(TTree* tree)
Int_t Process()
 Process this THaVform.  Must be done once per event.
 fData is the data of 1st element which is relevant
 if this is a scaler.  Otherwise fOdata is vector data.
Int_t DefinedGlobalVariable(const TString& variable)
 We use the parsing functionality of THaFormula to
 tell if the variables are global variables and, if so,
 if they are arrays or elements of arrays.
void GetForm(Int_t size)
Double_t GetData(Int_t index = 0) const
THaVform(const THaVform& vform)
{}
Bool_t IsFormula()
 This object is either a formula, a variable sized array, a cut, or
 an "eye" ("[I]" variable)
{ return (fType == kForm); }
Bool_t IsVarray()
{ return (fVarPtr != NULL && fType == kVarArray); }
Bool_t IsCut()
{ return (fType == kCut); }
Bool_t IsEye()
 Get the size (dimension) of this object
{ return (fType == kEye); }
Int_t GetSize()
 Get names of variable that are used by this formula.
{ return fObjSize; }

Last change: Sat Nov 7 21:26:56 2009
Last generated: 2009-11-07 21:26

This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.