library: libCore #include "TRealData.h"

# TRealData

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

## class TRealData : public TObject

| Inheritance Chart:
`TObject`
| <- | `TRealData` |

        private:

                     TRealData(const TRealData& rhs)
          TRealData& operator=(const TRealData& rhs)

        public:

                              TRealData()
                              TRealData(const char* name, Int_t offset, TDataMember* datamember)
                      virtual ~TRealData()
                         void AdoptStreamer(TMemberStreamer* p)
               static TClass* Class()
                 TDataMember* GetDataMember() const
          virtual const char* GetName() const
             TMemberStreamer* GetStreamer() const
                        Int_t GetThisOffset() const
              virtual TClass* IsA() const
                       Bool_t IsObject() const
                         void SetIsObject(Bool_t isObject)
                 virtual void ShowMembers(TMemberInspector& insp, char* parent)
                 virtual void Streamer(TBuffer& b)
                         void StreamerNVirtual(TBuffer& b)
                         void WriteRealData(void* pointer, char*& buffer)

### Data Members

        private:

              TDataMember* fDataMember  pointer to data member descriptor
                     Int_t fThisOffset  offset with the THIS object pointer
                   TString fName        Concatenated names of this realdata
          TMemberStreamer* fStreamer    Object to stream the data member.
                    Bool_t fIsObject    true if member is an object

## Class Description

      The TRealData class manages the effective list of all data members
      for a given class. For example for an object of class TLine that inherits
      from TObject and TAttLine, the TRealData object for a line contains the
      complete list of all data members of the 3 classes.

      The list of TRealData members in TClass is built when functions like
      object.Inspect or object.DrawClass are called.

TRealData() : TObject(), fDataMember(0), fThisOffset(-1), fStreamer(0), fIsObject(kFALSE)

    *-*-*-*-*-*-*-*-*-*-*RealData default constructor*-*-*-*-*-*-*-*-*-*-*-*-*
    *-*                  ============================

TRealData(const char *name, Int_t offset, TDataMember *datamember) : TObject(), fDataMember(datamember), fThisOffset(offset), fName(name), fStreamer(0), fIsObject(kFALSE)

    *-*-*-*-*-*-*-*-*-*Constructor to define one persistent data member*-*-*-*-*
    *-*                ================================================
    *-* datamember is the pointer to the data member descriptor.
    *-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*

~TRealData()

    *-*-*-*-*-*-*-*-*-*-*RealData default destructor*-*-*-*-*-*-*-*-*-*-*-*-*
    *-*                  =============================

void WriteRealData(void *, char *&)

    *-*-*-*-*Write one persistent data member on output buffer*-*-*-*-*-*-*-*
    *-*      =================================================
    *-* pointer points to the current persistent data member
    *-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*
    *-*

void AdoptStreamer(TMemberStreamer *str)

    fDataMember->SetStreamer(str);
    delete fStreamer;

TMemberStreamer* GetStreamer() const

### Inline Functions

              TRealData& operator=(const TRealData& rhs)
               TRealData TRealData(const char* name, Int_t offset, TDataMember* datamember)
             const char* GetName() const
            TDataMember* GetDataMember() const
                   Int_t GetThisOffset() const
                  Bool_t IsObject() const
                    void SetIsObject(Bool_t isObject)
                 TClass* Class()
                 TClass* IsA() const
                    void ShowMembers(TMemberInspector& insp, char* parent)
                    void Streamer(TBuffer& b)
                    void StreamerNVirtual(TBuffer& b)

Author: Rene Brun 05/03/95
Last update: root/base:$Name: $:$Id: TRealData.cxx,v 1.5 2005/05/26 12:48:55 pcanal Exp $
Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *