library: libCore #include "TCollection.h"

# TIter

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

## class TIter

| Inheritance Chart:
`TIter` |

        protected:

                TIter()

        public:

                             TIter(const TCollection* col, Bool_t dir = kIterForward)
                             TIter(TIterator* it)
                             TIter(const TIter& iter)
                     virtual ~TIter()
              static TClass* Class()
          const TCollection* GetCollection() const
                   Option_t* GetOption() const
             virtual TClass* IsA() const
                    TObject* Next()
                    TObject* operator()()
                      TIter& operator=(const TIter& rhs)
                        void Reset()
                virtual void ShowMembers(TMemberInspector& insp, char* parent)
                virtual void Streamer(TBuffer& b)
                        void StreamerNVirtual(TBuffer& b)

### Data Members

        private:

          TIterator* fIterator  collection iterator

## Class Description

     Collection abstract base class. This class describes the base
     protocol all collection classes have to implement. The ROOT
     collection classes always store pointers to objects that inherit
     from TObject. They never adopt the objects. Therefore, it is the
     user's responsability to take care of deleting the actual objects
     once they are not needed anymore. In exceptional cases, when the
     user is 100% sure nothing else is referencing the objects in the
     collection, one can delete all objects and the collection at the
     same time using the Delete() function.

     Collections can be iterated using an iterator object (see
     TIterator). Depending on the concrete collection class there may be
     some additional methods of iterating. See the repective classes.

     TCollection inherits from TObject since we want to be able to have
     collections of collections.

     In a later release the collections may become templatized.

/* */

TIter(const TIter &iter)

     Copy a TIter. This involves allocating a new TIterator of the right
     sub class and assigning it with the original.

### Inline Functions

                          void ~TIter()
                         TIter TIter(const TCollection* col, Bool_t dir = kIterForward)
                         TIter TIter(TIterator* it)
                         TIter TIter(const TIter& iter)
                        TIter& operator=(const TIter& rhs)
                      TObject* operator()()
                      TObject* Next()
            const TCollection* GetCollection() const
                     Option_t* GetOption() const
                          void Reset()
                       TClass* Class()
                       TClass* IsA() const
                          void ShowMembers(TMemberInspector& insp, char* parent)
                          void Streamer(TBuffer& b)
                          void StreamerNVirtual(TBuffer& b)

Author: Fons Rademakers 13/08/95
Last update: root/cont:$Name: $:$Id: TCollection.cxx,v 1.29 2005/06/23 06:24:27 brun Exp $
Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *