struct CCL::IObjectNode

Overview

Basic interface for nested objects. More…

#include <iobjectnode.h>

struct IObjectNode: public CCL::IUnknown
{
    // methods

    virtual StringRef CCL_API getObjectID () const = 0;
    virtual UIDRef CCL_API getObjectUID () const = 0;
    virtual UIDRef CCL_API getClassUID () const = 0;
    virtual IObjectNode*CCL_API getParent () const = 0;
    virtual IObjectNode*CCL_API getRoot () const = 0;
    virtual int CCL_API countChildren () const = 0;
    virtual IObjectNode*CCL_API getChild (int index) const = 0;
    virtual IObjectNode*CCL_API findChild (StringRef id) const = 0;
    virtual tbool CCL_API getChildDelegates (IMutableArray& delegates) const = 0;
    virtual tbool CCL_API getChildPath (String& path) const = 0;
    virtual IObjectNode*CCL_API lookupChild (StringRef path) const = 0;
};

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;

Detailed Documentation

Basic interface for nested objects.

Methods

virtual StringRef CCL_API getObjectID () const = 0

Get identifier used to build object paths.

virtual UIDRef CCL_API getObjectUID () const = 0

Get unique identifier of this instance.

virtual UIDRef CCL_API getClassUID () const = 0

Get unique identifier describing the class (can be empty).

virtual IObjectNode*CCL_API getParent () const = 0

Get parent object.

virtual IObjectNode*CCL_API getRoot () const = 0

Get root object.

virtual int CCL_API countChildren () const = 0

Get number of child objects.

virtual IObjectNode*CCL_API getChild (int index) const = 0

Get child by index.

virtual IObjectNode*CCL_API findChild (StringRef id) const = 0

Find child by string identifier.

virtual tbool CCL_API getChildDelegates (IMutableArray& delegates) const = 0

Get identifiers of child delegates, i.e.

accessible via findChild(), but no direct descendants.

virtual tbool CCL_API getChildPath (String& path) const = 0

Get path string describing object location in tree (e.g.

“root/parent/object”).

virtual IObjectNode*CCL_API lookupChild (StringRef path) const = 0

Find child by path string, searching the object tree recursively.