// @(#)root/meta:$Id: TGlobal.cxx 20882 2007-11-19 11:31:26Z rdm $ // Author: Rene Brun 13/11/95 /************************************************************************* * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * * All rights reserved. * * * * For the licensing terms see $ROOTSYS/LICENSE. * * For the list of contributors see $ROOTSYS/README/CREDITS. * *************************************************************************/ ////////////////////////////////////////////////////////////////////////// // // // Global variables class (global variables are obtained from CINT). // // This class describes the attributes of a global variable. // // The TROOT class contains a list of all currently defined global // // variables (accessible via TROOT::GetListOfGlobals()). // // // ////////////////////////////////////////////////////////////////////////// #include "TGlobal.h" #include "TString.h" #include "TInterpreter.h" #include "Api.h" ClassImp(TGlobal) //______________________________________________________________________________ TGlobal::TGlobal(G__DataMemberInfo *info) : TDictionary() { // Default TGlobal ctor. TGlobals are constructed in TROOT via // a call to TCint::UpdateListOfGlobals(). fInfo = info; if (fInfo) { SetName(fInfo->Name()); SetTitle(fInfo->Title()); } } //______________________________________________________________________________ TGlobal::~TGlobal() { // TGlobal dtor deletes adopted G__DataMemberInfo object. delete fInfo; } //______________________________________________________________________________ void *TGlobal::GetAddress() const { // Return address of global. return (void *)fInfo->Offset(); } //______________________________________________________________________________ Int_t TGlobal::GetArrayDim() const { // Return number of array dimensions. return fInfo->ArrayDim(); } //______________________________________________________________________________ Int_t TGlobal::GetMaxIndex(Int_t dim) const { // Return maximum index for array dimension "dim". return fInfo->MaxIndex(dim); } //______________________________________________________________________________ const char *TGlobal::GetTypeName() const { // Get type of global variable, e,g.: "class TDirectory*" -> "TDirectory". // Result needs to be used or copied immediately. return gInterpreter->TypeName(fInfo->Type()->Name()); } //______________________________________________________________________________ const char *TGlobal::GetFullTypeName() const { // Get full type description of global variable, e,g.: "class TDirectory*". return fInfo->Type()->Name(); } //______________________________________________________________________________ Long_t TGlobal::Property() const { // Get property description word. For meaning of bits see EProperty. return fInfo->Property(); }