ROOT logo
(UNKNOWN PRODUCT) » INCLUDE » TMrbTemplate

class TMrbTemplate: public TObject

_________________________________________________[C++ CLASS DEFINITION FILE]

 Name:           utils/inc/TMrbTemplate.h
 Purpose:        Define utilities to be used with MARaBOU
 Class:          TMrbTemplate     -- decode templates
 Description:    Common class definitions to be used within MARaBOU
 Author:         R. Lutter
 Revision:       $Id: TMrbTemplate.h,v 1.13 2007-07-27 11:17:23 Rudolf.Lutter Exp $
 Date:
 Keywords:

Function Members (Methods)

public:
TMrbTemplate()
TMrbTemplate(const TMrbTemplate&)
virtual~TMrbTemplate()
voidTObject::AbstractMethod(const char* method) const
virtual voidTObject::AppendPad(Option_t* option = "")
virtual voidTObject::Browse(TBrowser* b)
static TClass*Class()
virtual const char*TObject::ClassName() const
virtual voidTObject::Clear(Option_t* = "")
virtual TObject*TObject::Clone(const char* newname = "") const
voidClose()
virtual Int_tTObject::Compare(const TObject* obj) const
virtual voidTObject::Copy(TObject& object) const
const Char_t*CopyCode(TString& CodeString, const Char_t* Seperator = " ")
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
TString&Encode(TString& Line, const Char_t* TagReplacement)
virtual voidTObject::Error(const char* method, const char* msgfmt) const
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)
Bool_tExpandPathName()
virtual voidTObject::Fatal(const char* method, const char* msgfmt) const
Bool_tFindCode(Int_t TagIndex)
virtual TObject*TObject::FindObject(const char* name) const
virtual TObject*TObject::FindObject(const TObject* obj) const
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
virtual const char*TObject::GetIconName() const
virtual const char*TObject::GetName() const
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
virtual Option_t*TObject::GetOption() const
TMrbLofNamedX*GetTagWords()
virtual const char*TObject::GetTitle() const
virtual UInt_tTObject::GetUniqueID() const
virtual Bool_tTObject::HandleTimer(TTimer* timer)
Bool_tHasCode() const
virtual ULong_tTObject::Hash() const
Bool_tHasOtherTags() const
voidHelp()
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
Bool_tInitializeCode(const Char_t* Prefix = 0)
virtual voidTObject::Inspect() constMENU
voidTObject::InvertBit(UInt_t f)
virtual TClass*IsA() const
Bool_tIsEof() const
virtual Bool_tTObject::IsEqual(const TObject* obj) const
Bool_tIsError() const
Bool_tIsExpanded() const
virtual Bool_tTObject::IsFolder() const
Bool_tIsOk() const
Bool_tTObject::IsOnHeap() const
virtual Bool_tTObject::IsSortable() const
Bool_tTObject::IsZombie() const
virtual voidTObject::ls(Option_t* option = "") const
voidTObject::MayNotUse(const char* method) const
TMrbNamedX*Next(TString& Line, Bool_t ForceNextLine = kTRUE)
virtual Bool_tTObject::Notify()
voidTObject::Obsolete(const char* method, const char* asOfVers, const char* removedFromVers) const
Bool_tOpen(const Char_t* TemplateFile, TMrbLofNamedX* LofTagWords)
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)
TObject&TObject::operator=(const TObject& rhs)
virtual voidTObject::Paint(Option_t* option = "")
virtual voidTObject::Pop()
virtual voidTObject::Print(Option_t* option = "") const
Bool_tPrintCode() const
virtual Int_tTObject::Read(const char* name)
Bool_tReadCodeFromFile(const Char_t* TemplateFile, TMrbLofNamedX* LofTagWords)
virtual voidTObject::RecursiveRemove(TObject* obj)
voidTObject::ResetBit(UInt_t f)
virtual voidTObject::SaveAs(const char* filename = "", Option_t* option = "") constMENU
virtual voidTObject::SavePrimitive(ostream& out, Option_t* option = "")
voidTObject::SetBit(UInt_t f)
voidTObject::SetBit(UInt_t f, Bool_t set)
virtual voidTObject::SetDrawOption(Option_t* option = "")MENU
static voidTObject::SetDtorOnly(void* obj)
static voidTObject::SetObjectStat(Bool_t stat)
virtual voidTObject::SetUniqueID(UInt_t uid)
virtual voidShowMembers(TMemberInspector&)
TMrbTemplate::EMrbTagWordStatusStatus() const
virtual voidStreamer(TBuffer&)
voidStreamerNVirtual(TBuffer& ClassDef_StreamerNVirtual_b)
Bool_tSubstitute(const Char_t* ArgName, const Char_t* ArgValue)
Bool_tSubstitute(const Char_t* ArgName, Double_t ArgValue)
Bool_tSubstitute(const Char_t* ArgName, Int_t ArgValue, Int_t ArgBase = 10)
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 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
Bool_tWriteCode(ostream& Out)
protected:
virtual voidTObject::DoError(int level, const char* location, const char* fmt, va_list va) const
voidTObject::MakeZombie()
Bool_tTestIfBeginOrEndOfCode()
TObjString*TestIfInCodeSegment(TObjString* Code, Bool_t& InSegmentFlag, TString& Label, Bool_t& ErrorFlag)

Data Members

public:
enum EMrbTagWordStatus { kTagError
kNoTag
kTagOK
kTagNotFound
kEOF
};
enum TObject::EStatusBits { kCanDelete
kMustCleanup
kObjInCanvas
kIsReferenced
kHasUUID
kCannotPick
kNoContextMenu
kInvalidObject
};
enum TObject::[unnamed] { kIsOnHeap
kNotDeleted
kZombie
kBitMask
kSingleKey
kOverwrite
kWriteDelete
};
protected:
TListfCodeBufferbuffer to store expandable code
TStringfExpandedLineoriginal data with tag words replaced
TListfExpansionBufferbuffer to store code after expansion
Bool_tfHasOtherTagskTRUE if line has some more tags pending
Bool_tfInIfClausekTRUE if inside %%IF_xxx%%, kFALSE if inside %%IFNOT_xxx%% or %%ELSE_xxx%%
Bool_tfIsActiveflag to store open status
Int_tfLineCountline count
TListfLofCodeSegmentsa list of codes copied to from file to memory
TMrbLofNamedX*fLofTagWordslist of tag words
TStringfOrigLineoriginal data
TMrbStringfPrefixprefix %XX%
TMrbNamedXfTagcurrent tag
Int_tfTagEndwhere tagword ends
Int_tfTagStartwhere possible tagword starts
TMrbTemplate::EMrbTagWordStatusfTagStatuscurrent status bits
ifstreamfTemplStreamstream where to read data from
TStringfTemplateFilename of template file
Bool_tfVerbosekTRUE if verbose

Class Charts

Inheritance Inherited Members Includes Libraries
Class Charts

Function documentation

TMrbTemplate()
~TMrbTemplate()
this-> Close()
TMrbTemplate(const TMrbTemplate& )
{}
Bool_t Open(const Char_t* TemplateFile, TMrbLofNamedX* LofTagWords)
TMrbNamedX * Next(TString& Line, Bool_t ForceNextLine = kTRUE)
TString & Encode(TString& Line, const Char_t* TagReplacement)
Bool_t InitializeCode(const Char_t* Prefix = 0)
Bool_t Substitute(const Char_t* ArgName, const Char_t* ArgValue)
Bool_t Substitute(const Char_t* ArgName, Int_t ArgValue, Int_t ArgBase = 10)
Bool_t Substitute(const Char_t* ArgName, Double_t ArgValue)
Bool_t ExpandPathName()
Bool_t WriteCode(ostream& Out)
const Char_t * CopyCode(TString& CodeString, const Char_t* Seperator = " ")
Bool_t HasCode() const
{ return(fCodeBuffer.First() != NULL); }
Bool_t IsExpanded() const
{ return(fExpansionBuffer.First() != NULL); }
Bool_t ReadCodeFromFile(const Char_t* TemplateFile, TMrbLofNamedX* LofTagWords)
Bool_t FindCode(Int_t TagIndex)
Bool_t PrintCode() const
Bool_t IsError() const
{ return((fTagStatus & (kTagError | kTagNotFound)) != 0); }
Bool_t IsEof() const
{ return((fTagStatus & kEOF) != 0); }
Bool_t IsOk() const
{ return((fTagStatus & (kNoTag | kTagOK)) != 0); }
Bool_t HasOtherTags() const
{ return(fHasOtherTags); }
TMrbLofNamedX * GetTagWords()
{ return fLofTagWords; }
void Help()
{ gSystem->Exec(Form("mrbHelp %s", this->ClassName())); }
Bool_t TestIfBeginOrEndOfCode()
TObjString * TestIfInCodeSegment(TObjString* Code, Bool_t& InSegmentFlag, TString& Label, Bool_t& ErrorFlag)