Logo ROOT   6.30.04
Reference Guide
 All Namespaces Files Pages
TFunction.h
Go to the documentation of this file.
1 // @(#)root/meta:$Id$
2 // Author: Fons Rademakers 07/02/97
3 
4 /*************************************************************************
5  * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *
6  * All rights reserved. *
7  * *
8  * For the licensing terms see $ROOTSYS/LICENSE. *
9  * For the list of contributors see $ROOTSYS/README/CREDITS. *
10  *************************************************************************/
11 
12 #ifndef ROOT_TFunction
13 #define ROOT_TFunction
14 
15 
16 //////////////////////////////////////////////////////////////////////////
17 // //
18 // TFunction //
19 // //
20 // Dictionary of global functions. //
21 // //
22 //////////////////////////////////////////////////////////////////////////
23 
24 #include "TDictionary.h"
25 
26 class TMethodCall;
27 
28 class TFunction : public TDictionary {
29 
30 friend class TCling;
31 friend class TMethodCall;
32 
33 protected:
34  MethodInfo_t *fInfo; //pointer to Interpreter function info
35  TString fMangledName; //Mangled name as determined by CINT.
36  TString fSignature; //string containing function signature
37  TList *fMethodArgs; //list of function arguments
38 
39  virtual void CreateSignature();
40 
41 public:
42  TFunction(MethodInfo_t *info = 0);
43  TFunction(const TFunction &orig);
44  TFunction& operator=(const TFunction &rhs);
45  virtual ~TFunction();
46  virtual TObject *Clone(const char *newname="") const;
47  virtual const char *GetMangledName() const;
48  virtual const char *GetPrototype() const;
49  const char *GetSignature();
50  const char *GetReturnTypeName() const;
51  std::string GetReturnTypeNormalizedName() const;
52  TList *GetListOfMethodArgs();
53  Int_t GetNargs() const;
54  Int_t GetNargsOpt() const;
55  DeclId_t GetDeclId() const;
56  void *InterfaceMethod() const;
57  virtual Bool_t IsValid();
58  virtual void Print(Option_t *option="") const;
59  Long_t Property() const;
60  Long_t ExtraProperty() const;
61  virtual bool Update(MethodInfo_t *info);
62 
63  virtual void ls(Option_t *option="") const;
64 
65  ClassDef(TFunction,0) //Dictionary for global function
66 };
67 
68 #endif