library: libTable #include "TObjectSet.h"

# TObjectSet

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

## class TObjectSet : public TDataSet

| Inheritance Chart:
`TObject`
| <- | `TNamed`
| <- | `TDataSet`
| <- | `TObjectSet` |
<- |
`TVolume` |
`TVolumeView` |

        public:

                             TObjectSet(const Char_t* name, TObject* obj = 0, Bool_t makeOwner = kTRUE)
                             TObjectSet(TObject* obj = 0, Bool_t makeOwner = kTRUE)
                             TObjectSet(const TObjectSet&)
                     virtual ~TObjectSet()
            virtual TObject* AddObject(TObject* obj, Bool_t makeOwner = kTRUE)
                virtual void Browse(TBrowser* b)
              static TClass* Class()
                virtual void Delete(Option_t* opt = "")
              virtual Bool_t DoOwner(Bool_t done = kTRUE)
            virtual TObject* GetObject() const
              virtual Long_t HasData() const
           virtual TDataSet* Instance() const
          static TObjectSet* instance()
             virtual TClass* IsA() const
              virtual Bool_t IsOwner() const
                virtual void SetObject(TObject* obj)
            virtual TObject* SetObject(TObject* obj, Bool_t makeOwner)
                virtual void ShowMembers(TMemberInspector& insp, char* parent)
                virtual void Streamer(TBuffer& b)
                        void StreamerNVirtual(TBuffer& b)

### Data Members

        protected:

          TObject* fObj  TObject to be inserted

        public:

          static const TObjectSet::EOwnerBits kIsOwner

## Class Description

      TObjectSet  - is a container TDataSet
                      This means this object has an extra pointer to an embedded
                      TObject.
      Terminology:    This TObjectSet may be an OWNER of the embeded TObject
                      If the container is the owner it can delete the embeded object
                      otherwsie it leaves that object "as is"

TObjectSet(const Char_t *name, TObject *obj, Bool_t makeOwner):TDataSet(name)

TObjectSet(TObject *obj,Bool_t makeOwner) : TDataSet("unknown","TObjectSet")

~TObjectSet()

TObject* AddObject(TObject *obj,Bool_t makeOwner)

     Aliase for SetObject method

void Browse(TBrowser *b)

     Browse this dataset (called by TBrowser).

void Delete(Option_t *opt)

Bool_t DoOwner(Bool_t done)

     Set / Reset the ownerships and returns the previous
     status of the ownerships.

TDataSet* Instance() const

     apply the class default ctor to instantiate a new object of the same kind.
     This is a base method to be overriden by the classes
     derived from TDataSet (to support TDataSetIter::Mkdir for example)

TObject* SetObject(TObject *obj,Bool_t makeOwner)

     - Replace the embedded object with a new supplied
     - Destroy the preivous embedded object if this is its owner
     - Return the previous embedded object if any

### Inline Functions

                 Long_t HasData() const
               TObject* GetObject() const
                 Bool_t IsOwner() const
               TObject* SetObject(TObject* obj, Bool_t makeOwner)
            TObjectSet* instance()
                TClass* Class()
                TClass* IsA() const
                   void ShowMembers(TMemberInspector& insp, char* parent)
                   void Streamer(TBuffer& b)
                   void StreamerNVirtual(TBuffer& b)
             TObjectSet TObjectSet(const TObjectSet&)

Author: Valery Fine(fine@bnl.gov) 25/12/98
Last update: root/star:$Name: $:$Id: TObjectSet.cxx,v 1.3 2005/06/06 14:36:06 brun Exp $
Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *