Logo ROOT   6.16/01
Reference Guide
TGWin32InterpreterProxy.cxx
Go to the documentation of this file.
1// @(#)root/meta:$Id: TGWin32InterpreterProxy.cxx 38517 2011-03-18 20:20:16Z pcanal $
2// Author: Valeriy Onuchin 15/11/2003
3
4
5/*************************************************************************
6 * Copyright (C) 1995-2001, Rene Brun and Fons Rademakers. *
7 * All rights reserved. *
8 * *
9 * For the licensing terms see $ROOTSYS/LICENSE. *
10 * For the list of contributors see $ROOTSYS/README/CREDITS. *
11 *************************************************************************/
12
13
14#include "TGWin32ProxyDefs.h"
16#include "TROOT.h"
17#include "TGWin32.h"
18
19#if ROOT_VERSION_CODE < ROOT_VERSION(6,00,00)
20
21////////////////////////////////////////////////////////////////////////////////
22/// returns TCint object
23
24TInterpreter *TGWin32InterpreterProxy::RealObject()
25{
26 return gROOT->GetInterpreter();
27}
28
29RETURN_PROXY_OBJECT(Interpreter)
30VOID_METHOD_ARG1(Interpreter,AddIncludePath,const char*,path,1)
31RETURN_METHOD_ARG1(Interpreter,Int_t,AutoLoad,const char *,classname)
32VOID_METHOD_ARG0(Interpreter,ClearFileBusy,1)
33VOID_METHOD_ARG0(Interpreter,ClearStack,1)
34RETURN_METHOD_ARG1(Interpreter,Bool_t,Declare,const char*, code)
35VOID_METHOD_ARG0(Interpreter,EndOfLineAction,1)
36VOID_METHOD_ARG0(Interpreter,EnableAutoLoading,1)
37VOID_METHOD_ARG0(Interpreter,Initialize,0)
38// Does not support references:
39//VOID_METHOD_ARG3(Interpreter,InspectMembers,TMemberInspector&, insp, void*, obj, const TClass*,cl,1)
40void _NAME4_(p2,Interpreter,InspectMembers,insp)(void *in)
41{
42 struct tmp {
43 TMemberInspector *par1; void *par2; const TClass *par3;
44 };
45 tmp *p = (tmp*)in;
46 _NAME3_(TGWin32,Interpreter,Proxy)::RealObject()->InspectMembers(*p->par1,p->par2,p->par3);
47}
48
49void TGWin32InterpreterProxy::InspectMembers(TMemberInspector& insp, void* obj, const TClass* cl)
50{
51 DEBUG_PROFILE_PROXY_START(InspectMembers)
52 struct tmp {
53 TMemberInspector *par1; void *par2; const TClass *par3;
54 tmp(TMemberInspector *par1,void *par2,const TClass *par3):par1(par1),par2(par2),par3(par3) {}
55 };
56 fParam = new tmp(&insp,obj,cl);
57 fCallBack = &_NAME4_(p2,Interpreter,InspectMembers,insp);
58 Bool_t batch = ForwardCallBack(1);
59 // insp = ((tmp*)fParam)->par1;
60 obj = ((tmp*)fParam)->par2;
61 cl = ((tmp*)fParam)->par3;
62 if (!batch) delete fParam;
63 DEBUG_PROFILE_PROXY_STOP(InspectMembers)
64}
65
66RETURN_METHOD_ARG3(Interpreter,TClass*,GenerateTClass,const char *,classname,Bool_t,emulation,Bool_t,silent);
67RETURN_METHOD_ARG2(Interpreter,TClass*,GenerateTClass,ClassInfo_t *,classinfo,Bool_t,silent);
68RETURN_METHOD_ARG3(Interpreter,Int_t,GenerateDictionary,const char*,classes,const char*,headers,const char*,options);
69RETURN_METHOD_ARG0(Interpreter,char*,GetPrompt)
70RETURN_METHOD_ARG0(Interpreter,const char*,GetSharedLibs)
71RETURN_METHOD_ARG0(Interpreter,const char*,GetIncludePath)
72RETURN_METHOD_ARG2(Interpreter,Int_t,Load,const char*,filenam,Bool_t,system)
73RETURN_METHOD_ARG1(Interpreter,Int_t,LoadLibraryMap,const char*,rootmapfile)
74RETURN_METHOD_ARG0(Interpreter,Int_t,RescanLibraryMap)
75RETURN_METHOD_ARG0(Interpreter,Int_t,ReloadAllSharedLibraryMaps)
76RETURN_METHOD_ARG0(Interpreter,Int_t,UnloadAllSharedLibraryMaps)
77RETURN_METHOD_ARG1(Interpreter,Int_t,UnloadLibraryMap,const char*,library)
78VOID_METHOD_ARG2(Interpreter,LoadMacro,const char*,filename,TInterpreter::EErrorCode*,error,1)
79RETURN_METHOD_ARG2(Interpreter,Long_t,ProcessLine,const char*,line,TInterpreter::EErrorCode*,error)
80RETURN_METHOD_ARG2(Interpreter,Long_t,ProcessLineSynch,const char*,line,TInterpreter::EErrorCode*,error)
81VOID_METHOD_ARG0(Interpreter,PrintIntro,1)
82typedef const char* (*GetlineFunc_t)(const char* prompt);
83typedef void (*HistaddFunc_t)(const char* line);
84RETURN_METHOD_ARG2(Interpreter,Int_t,SetClassSharedLibs,const char*,cls,const char*,libs);
85VOID_METHOD_ARG2(Interpreter,SetGetline,GetlineFunc_t, getlineFunc,\
86 HistaddFunc_t, histaddFunc, 1)
87VOID_METHOD_ARG0(Interpreter,Reset,1)
88VOID_METHOD_ARG0(Interpreter,ResetAll,1)
89VOID_METHOD_ARG0(Interpreter,ResetGlobals,1)
90VOID_METHOD_ARG1(Interpreter,ResetGlobalVar,void*,obj,1)
91VOID_METHOD_ARG0(Interpreter,RewindDictionary,1)
92RETURN_METHOD_ARG1(Interpreter,Int_t,DeleteGlobal,void*,obj)
93RETURN_METHOD_ARG1(Interpreter,Int_t,DeleteVariable,const char*,name)
94VOID_METHOD_ARG0(Interpreter,SaveContext,1)
95VOID_METHOD_ARG0(Interpreter,SaveGlobalsContext,1)
96VOID_METHOD_ARG0_LOCK(Interpreter,UpdateListOfGlobals)
97VOID_METHOD_ARG0_LOCK(Interpreter,UpdateListOfGlobalFunctions)
98VOID_METHOD_ARG0_LOCK(Interpreter,UpdateListOfTypes)
99VOID_METHOD_ARG2_LOCK(Interpreter,SetClassInfo,TClass*,cl,Bool_t,reload)
100RETURN_METHOD_ARG3(Interpreter, TInterpreter::ECheckClassInfo, CheckClassInfo, const char *, name, Bool_t, autoload,
101 Bool_t, isClassOrNamespaceOnly)
102RETURN_METHOD_ARG1(Interpreter,Bool_t,CheckClassTemplate,const char*,name)
103RETURN_METHOD_ARG2(Interpreter,Long_t,Calc,const char*,line,TInterpreter::EErrorCode*,error)
104VOID_METHOD_ARG1_LOCK(Interpreter,CreateListOfBaseClasses,TClass*,cl)
105VOID_METHOD_ARG1_LOCK(Interpreter,CreateListOfDataMembers,TClass*,cl)
106VOID_METHOD_ARG1_LOCK(Interpreter,CreateListOfMethods,TClass*,cl)
107VOID_METHOD_ARG1_LOCK(Interpreter,CreateListOfMethodArgs,TFunction*,m)
108VOID_METHOD_ARG1_LOCK(Interpreter,UpdateListOfMethods,TClass*,cl)
109RETURN_METHOD_ARG3(Interpreter,TString,GetMangledName,TClass*,cl,const char*,method,const char*,params)
110RETURN_METHOD_ARG3(Interpreter,TString,GetMangledNameWithPrototype,TClass*,cl,const char*,method,const char*,proto)
111RETURN_METHOD_ARG3(Interpreter,void*,GetInterfaceMethod,TClass*,cl,const char*,method,const char*,params)
112RETURN_METHOD_ARG3(Interpreter,void*,GetInterfaceMethodWithPrototype,TClass*,cl,const char*,method,const char*,proto)
113RETURN_METHOD_ARG1(Interpreter,const char*,GetClassSharedLibs,const char*,s)
114RETURN_METHOD_ARG1(Interpreter,const char*,GetSharedLibDeps,const char*,s)
115RETURN_METHOD_ARG2(Interpreter,const char*,GetInterpreterTypeName,const char*,s,Bool_t,full)
116VOID_METHOD_ARG3(Interpreter,Execute,const char*,function,const char*,params,int*,error,1)
117VOID_METHOD_ARG5(Interpreter,Execute,TObject*,obj,TClass*,cl,const char*,method,const char*,params,int*,error,1)
118VOID_METHOD_ARG5(Interpreter,Execute,TObject*,object,TClass*,cl,TMethod*,method,TObjArray*,params,int*,error,1)
119RETURN_METHOD_ARG2(Interpreter,Long_t,ExecuteMacro,const char*,filename,TInterpreter::EErrorCode*,error)
120RETURN_METHOD_ARG1(Interpreter,Bool_t,SetErrorMessages,Bool_t,enable)
121VOID_METHOD_ARG1(Interpreter,SetProcessLineLock,Bool_t,lock,1)
122RETURN_METHOD_ARG1(Interpreter,const char*,TypeName,const char*,s)
123// TInterpreter::ECheckClassInfo TGWin32InterpreterProxy::CheckClassInfo(const char* name) { return
124// RealObject()->CheckClassInfo(name); }
125
126#endif
void Proxy()
Definition: Proxy.C:4
#define _NAME3_(name1, name2, name3)
Definition: RConfig.hxx:445
static double p2(double t, double a, double b, double c)
int Int_t
Definition: RtypesCore.h:41
long Long_t
Definition: RtypesCore.h:50
bool Bool_t
Definition: RtypesCore.h:59
#define RETURN_METHOD_ARG3(klass, type, method, type1, par1, type2, par2, type3, par3)
#define VOID_METHOD_ARG1_LOCK(klass, method, type1, par1)
#define VOID_METHOD_ARG0_LOCK(klass, method)
#define _NAME4_(name1, name2, name3, name4)
#define VOID_METHOD_ARG0(klass, method, sync)
#define RETURN_METHOD_ARG0(klass, type, method)
#define VOID_METHOD_ARG5(klass, method, type1, par1, type2, par2, type3, par3, type4, par4, type5, par5, sync)
#define RETURN_PROXY_OBJECT(klass)
#define DEBUG_PROFILE_PROXY_START(method)
#define VOID_METHOD_ARG2_LOCK(klass, method, type1, par1, type2, par2)
#define VOID_METHOD_ARG1(klass, method, type1, par1, sync)
#define DEBUG_PROFILE_PROXY_STOP(method)
#define VOID_METHOD_ARG2(klass, method, type1, par1, type2, par2, sync)
#define RETURN_METHOD_ARG1(klass, type, method, type1, par1)
RETURN_METHOD_ARG2(VirtualX, Bool_t, IsDNDAware, Window_t, win, Atom_t *, typelist)
VOID_METHOD_ARG3(VirtualX, SetTypeList, Window_t, win, Atom_t, prop, Atom_t *, typelist, 1)
#define gROOT
Definition: TROOT.h:410
const char * proto
Definition: civetweb.c:16604
The ROOT global object gROOT contains a list of all defined classes.
Definition: TClass.h:75
Global functions class (global functions are obtained from CINT).
Definition: TFunction.h:28
This class is the basic interface to the Win32 graphics system.
Definition: TGWin32.h:67
This class defines an abstract interface to a generic command line interpreter.
Definition: TInterpreter.h:60
Abstract base class for accessing the data-members of a class.
Each ROOT class (see TClass) has a linked list of methods.
Definition: TMethod.h:38
An array of TObjects.
Definition: TObjArray.h:37
Mother of all ROOT objects.
Definition: TObject.h:37
Basic string class.
Definition: TString.h:131
TLine * line
void function(const Char_t *name_, T fun, const Char_t *docstring=0)
Definition: RExports.h:151
static constexpr double s
void Initialize(Bool_t useTMVAStyle=kTRUE)
Definition: tmvaglob.cxx:176
auto * m
Definition: textangle.C:8