class CCL::UnknownList

Overview

#include <unknownlist.h>

class UnknownList:
    public CCL::Unknown,
    public CCL::IUnknownList
{
public:
    // typedefs

    typedef UnknownIterator IteratorClass;

    // fields

    CLASS_INTERFACE2 (IUnknownList, IContainer, Unknown) protected LinkedList <IUnknown*> list;

    // methods

    bool isMultiple () const;
    virtual IUnknownIterator*CCL_API createIterator () const;
    virtual tbool CCL_API isEmpty () const;
    virtual IUnknown*CCL_API getFirst () const;
    virtual IUnknown*CCL_API getLast () const;
    virtual tbool CCL_API contains (IUnknown* object) const;
    virtual tbool CCL_API add (IUnknown* object, tbool share = false);
    virtual tbool CCL_API remove (IUnknown* object);
    virtual void CCL_API removeAll ();

    template  <class Element = Unknown>
    RangeIterator <UnknownList, UnknownIterator, Element*> begin () const;

    template  <class Element = Unknown>
    RangeIterator <UnknownList, UnknownIterator, Element*> end () const;

    static IUnknownList* convert (IUnknown* unknown);
};

Inherited Members

public:
    // methods

    virtual tresult CCL_API queryInterface (UIDRef iid, void** ptr) = 0;
    virtual unsigned int CCL_API retain () = 0;
    virtual unsigned int CCL_API release () = 0;
    Unknown& operator = (const Unknown&);
    unsigned int getRetainCount () const;
    virtual IUnknownIterator*CCL_API createIterator () const = 0;
    virtual tbool CCL_API isEmpty () const = 0;
    virtual IUnknown*CCL_API getFirst () const = 0;
    virtual IUnknown*CCL_API getLast () const = 0;
    virtual tbool CCL_API contains (IUnknown* object) const = 0;
    virtual tbool CCL_API add (IUnknown* object, tbool share = false) = 0;
    virtual tbool CCL_API remove (IUnknown* object) = 0;
    virtual void CCL_API removeAll () = 0;

Detailed Documentation

Methods

virtual IUnknownIterator*CCL_API createIterator () const

Create iterator.

virtual tbool CCL_API isEmpty () const

Check if list is empty.

virtual IUnknown*CCL_API getFirst () const

Get first object in list.

virtual IUnknown*CCL_API getLast () const

Get last object in list.

virtual tbool CCL_API contains (IUnknown* object) const

Check if object is in list.

virtual tbool CCL_API add (IUnknown* object, tbool share = false)

Add object.

Ownership is transferred to container or shared.

virtual tbool CCL_API remove (IUnknown* object)

Remove object.

Ownership is transferred to caller.

virtual void CCL_API removeAll ()

Remove (and release) all objects.