TCint


class description - source file - inheritance tree

class TCint : public TInterpreter

    private:
TCint TCint() virtual void Execute(TMethod*, TObjArray*) protected:
virtual void ExecThreadCB(TWin32SendClass* command) public:
TCint TCint(char* name, char* title) TCint TCint(TCint&) virtual void ~TCint() virtual Long_t Calc(char* line) TClass* Class() virtual void CreateListOfBaseClasses(TClass* cl) virtual void CreateListOfDataMembers(TClass* cl) virtual void CreateListOfMethodArgs(TFunction* m) virtual void CreateListOfMethods(TClass* cl) virtual void CreateListOfTypes() virtual Int_t DeleteGlobal(void* obj) virtual void EndOfLineAction() virtual void Execute(Text_t* function, Text_t* params) virtual void Execute(TObject* obj, TClass* cl, Text_t* method, Text_t* params) virtual void Execute(TObject* obj, TClass* cl, TMethod* method, TObjArray* params) virtual Int_t ExecuteMacro(char* filename) void* FindObject(char* name, G__ClassInfo* type, void** prevObj, void** assocPtr) virtual const char* GetIncludePath() virtual void* GetInterfaceMethod(TClass* cl, Text_t* method, Text_t* params) virtual void* GetInterfaceMethodWithPrototype(TClass* cl, Text_t* method, Text_t* proto) virtual Int_t GetMore() virtual char* GetPrompt() virtual const char* GetSharedLibs() virtual Int_t InitializeDictionaries() virtual TClass* IsA() virtual void LoadMacro(char* filename) virtual void PrintIntro() virtual Int_t ProcessLine(char* line) Int_t ProcessLineAsynch(char* line) virtual Int_t ProcessLineSynch(char* line) virtual void Reset() virtual void ResetAll() virtual void ResetGlobals() virtual void RewindDictionary() virtual void SaveContext() virtual void SaveGlobalsContext() virtual void SetClassInfo(TClass* cl) virtual void ShowMembers(TMemberInspector& insp, char* parent) virtual void Streamer(TBuffer& b) virtual const char* TypeName(char* typeDesc) void UpdateAllCanvases() virtual void UpdateListOfGlobalFunctions() virtual void UpdateListOfGlobals()

Data Members

private:
Int_t fMore 1 if more input is required char fPrompt[64] proposed prompt string G__dictposition fDictPos CINT dictionary context after init G__dictposition fDictPosGlobals CINT dictionary context after ResetGlobals() TString fSharedLibs Hold a list of lib loaded by G__loadfile TString fIncludePath Hold a list of lib include path

Class Description

                                                                      
 This class defines an interface to the CINT C/C++ interpreter made   
 by Masaharu Goto from HP Japan.                                      
                                                                      
 CINT is an almost full ANSI compliant C/C++ interpreter.             
                                                                      


TCint(const char *name, const char *title) : TInterpreter(name, title)
 Initialize the CINT interpreter interface.

~TCint()
 Destroy the CINT interpreter interface.

Int_t InitializeDictionaries()
 Initialize all registered dictionaries. Normally this is already done
 by G__init_cint() and G__dlmod().

void EndOfLineAction()
 It calls a "fantom" method to synchronize user keyboard input
 and ROOT prompt line.

void ExecThreadCB(TWin32SendClass *command)
 This function must be called from the "Command thread only".

void LoadMacro(const char *filename)
 Load a macro file in CINT's memory.

Int_t ProcessLine(const char *line)
 Let CINT process a command line.

Int_t ProcessLineAsynch(const char *line)
 Let CINT process a command line asynch.

Int_t ProcessLineSynch(const char *line)
 Let CINT process a command line synchronously, i.e we are waiting
 it will be finished.

Long_t Calc(const char *line)
 Directly execute an executable statement (e.g. "func()", "3+5", etc.
 however not declarations, like "Int_t x;").

void PrintIntro()
 Print CINT introduction and help message.

void Reset()
 Reset the CINT state to the state saved by the last call to
 TCint::SaveContext().

void ResetAll()
 Reset the CINT state to its initial state.

void ResetGlobals()
 Reset the CINT global object state to the state saved by the last
 call to TCint::SaveGlobalsContext().

void RewindDictionary()
 Rewind CINT dictionary to the point where it was before executing
 the current macro. This function is typically called after SEGV or
 ctlr-C after doing a longjmp back to the prompt.

Int_t DeleteGlobal(void *obj)
 Delete obj from CINT symbol table so it cannot be accessed anymore.
 Returns 1 in case of success and 0 in case object was not in table.

void SaveContext()
 Save the current CINT state.

void SaveGlobalsContext()
 Save the current CINT state of global objects.

void UpdateListOfGlobals()
 Update the list of pointers to global variables. This function
 is called by TROOT::GetListOfGlobals().

void UpdateListOfGlobalFunctions()
 Update the list of pointers to global functions. This function
 is called by TROOT::GetListOfGlobalFunctions().

void SetClassInfo(TClass *cl)
 Set pointer to CINT's G__ClassInfo in TClass.

void CreateListOfBaseClasses(TClass *cl)
 Create list of pointers to base class(es) for TClass cl.

void CreateListOfDataMembers(TClass *cl)
 Create list of pointers to data members for TClass cl.

void CreateListOfMethods(TClass *cl)
 Create list of pointers to methods for TClass cl.

void CreateListOfMethodArgs(TFunction *m)
 Create list of pointers to method arguments for TMethod m.

void CreateListOfTypes()
 Create list of pointers to datatype (typedef) definitions. This
 function is called by TROOT::GetListOfTypes().

void* GetInterfaceMethod(TClass *cl, Text_t *method, Text_t *params)
 Return pointer to CINT interface function for a method of a class with
 parameters params (params is a string of actual arguments, not formal
 ones). If the class is 0 the global function list will be searched.

void* GetInterfaceMethodWithPrototype(TClass *cl, Text_t *method, Text_t *proto)
 Return pointer to CINT interface function for a method of a class with
 a certain prototype, i.e. "char*,int,float". If the class is 0 the global
 function list will be searched.

void Execute(Text_t *function, Text_t *params)
 Execute a global function with arguments params.

void Execute(TObject *obj, TClass *cl, Text_t *method, Text_t *params)
 Execute a method from class cl with arguments params.

void Execute(TObject *obj, TClass *cl, TMethod *method, TObjArray *params)
 Execute a method from class cl with the arguments in array params
 (params[0] ... params[n] = array of TObjString parameters).

Int_t ExecuteMacro(const char *filename)
 Execute a CINT macro.

const char* TypeName(const char *typeDesc)
 Return the absolute type of typeDesc.
 E.g.: typeDesc = "class TNamed**", returns "TNamed".
 You need to use the result immediately before it is being overwritten.

void* FindObject(char *item, G__ClassInfo *type, void **prevObj, void **assocPtr)
 Static function called by CINT when it finds an un-indentified object.
 This function tries to find the UO in the ROOT files, directories, etc.
 This functions has been registered by the TCint ctor.

void UpdateAllCanvases()
 Update all canvases at end the terminal input command.

const char* GetSharedLibs()
 Refresh the list of shared libraries and return it.

const char* GetIncludePath()
 Refresh the list of include path known to the interpreter and return it,
 with -I prepended.



Inline Functions


              TCint TCint(char* name, char* title)
              Int_t GetMore()
              char* GetPrompt()
               void Execute(TObject* obj, TClass* cl, TMethod* method, TObjArray* params)
            TClass* Class()
            TClass* IsA()
               void ShowMembers(TMemberInspector& insp, char* parent)
               void Streamer(TBuffer& b)
              TCint TCint(TCint&)


Author: Fons Rademakers 01/03/96
Last update: 2.22/07 02/07/99 08.34.09 by Rene Brun
Copyright (c) 1995-1999, The ROOT System, All rights reserved. *


ROOT page - Class index - Top of the page

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.