library: libCore #include "TDataType.h"

# TDataType

class description - source file - inheritance tree (.pdf)

## class TDataType : public TDictionary

| Inheritance Chart:
`TObject`
| <- | `TNamed`
| <- | `TDictionary`
| <- | `TDataType` |

        private:

          void CheckInfo()
          void SetType(const char* name)

        public:

                             TDataType(G__TypedefInfo* info = 0)
                             TDataType(const char* typenam)
                             TDataType(const TDataType&)
                     virtual ~TDataType()
                 const char* AsString(void* buf) const
              static TClass* Class()
                 const char* GetFullTypeName() const
                       Int_t GetType() const
            static EDataType GetType(const type_info& typeinfo)
                 const char* GetTypeName() const
          static const char* GetTypeName(EDataType type) const
             virtual TClass* IsA() const
                  TDataType& operator=(const TDataType&)
              virtual Long_t Property() const
                virtual void ShowMembers(TMemberInspector& insp, char* parent)
                       Int_t Size() const
                virtual void Streamer(TBuffer& b)
                        void StreamerNVirtual(TBuffer& b)

### Data Members

        private:

          G__TypedefInfo* fInfo      pointer to CINT typedef info
                    Int_t fSize      size of type
                EDataType fType      type id
                   Long_t fProperty  The property information for the (potential) underlying class
                  TString fTrueName  True name of the (potential) underlying class

## Class Description

                                                                          //
     Basic data type descriptor (datatype information is obtained from
     CINT). This class describes the attributes of type definitions
     (typedef's). The TROOT class contains a list of all currently
     defined types (accessible via TROOT::GetListOfTypes()).

TDataType(G__TypedefInfo *info) : TDictionary()

     Default TDataType ctor. TDataTypes are constructed in TROOT via
     a call to TCint::UpdateListOfTypes().

TDataType(const char *typenam) : fInfo(0), fProperty(kIsFundamental)

     Constructor for basic data types, like "char", "unsigned char", etc.

~TDataType()

     TDataType dtor deletes adopted G__TypedefInfo object.

const char* GetTypeName(EDataType type)

const char* GetTypeName() const

     Get basic type of typedef, e,g.: "class TDirectory*" -> "TDirectory".
     Result needs to be used or copied immediately.

const char* GetFullTypeName() const

     Get full type description of typedef, e,g.: "class TDirectory*".

EDataType GetType(const type_info &typeinfo)

     Set type id depending on name.

const char* AsString(void *buf) const

     Return string containing value in buffer formatted according to
     the basic data type. The result needs to be used or copied immediately.

Long_t Property() const

     Get property description word. For meaning of bits see EProperty.

void SetType(const char *name)

     Set type id depending on name.

Int_t Size() const

     Get size of basic typedef'ed type.

void CheckInfo()

     Refresh the underlying information.

### Inline Functions

              EDataType GetType(const type_info& typeinfo)
                TClass* Class()
                TClass* IsA() const
                   void ShowMembers(TMemberInspector& insp, char* parent)
                   void Streamer(TBuffer& b)
                   void StreamerNVirtual(TBuffer& b)
              TDataType TDataType(const TDataType&)
             TDataType& operator=(const TDataType&)

Author: Rene Brun 04/02/95
Last update: root/meta:$Name: $:$Id: TDataType.cxx,v 1.19 2005/01/25 07:24:16 brun Exp $
Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *