Itasca C++ Interface
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Modules Pages
iparenttochildcontainer.h
1 #pragma once
2 // iparenttochildcontainer.h
4 
5 namespace itasca {
6  class IThing;
7 
15  public:
17  inline static const TType type_ = 0x4e95af7a;
18 
29  virtual void pushFrontChild(IThing *)=0;
31  virtual void pushBackChild(IThing *)=0;
35  virtual void releaseChild(IContainer::IOpaqueIterator *i) const=0;
37  virtual bool atEndChild(IContainer::IOpaqueIterator *i) const=0;
41  virtual const IThing *getChild(IContainer::IOpaqueIterator *i) const=0;
43  virtual bool incrementChild(IContainer::IOpaqueIterator *i) const=0;
45  virtual bool copyChild(IContainer::IOpaqueIterator *iSrc,IContainer::IOpaqueIterator *iDst) const=0;
47  virtual void cleanIterators(IThing *)=0;
48 
49  };
50 }
51 // EoF
virtual IContainer::signal_type * getAddedSignalChild() const =0
static const TType type_
The type identification number for this class, for use in convert_cast() and convert_getcast().
Definition: iparenttochildcontainer.h:17
virtual void cleanIterators(IThing *)=0
Clean up the iterators upon deletion.
Interface class for iterating through the container that has a null implementation.
Definition: icontainer.h:32
namespace Itasca
Definition: basememory.cpp:9
Definition of a Signal2 object, holding a list of ISlot2 objects.
Definition: isignalbase.h:76
Base class for items that will be stored in containers.
Definition: ithing.h:31
Provides a class to use as the parent to a child container, or the main container of all of the child...
Definition: iparenttochildcontainer.h:14
virtual void pushBackChild(IThing *)=0
Adds child to the back of the list.
virtual IContainer::signal_type * getRemovedSignalChild() const =0
virtual bool atEndChild(IContainer::IOpaqueIterator *i) const =0
Returns true if this child is the last one in the list.
virtual IContainer::IOpaqueIterator * acquireChild(IThing *) const =0
Returns an opaque interator pointer to an available (or new) object in the container.
unsigned int TType
class type indicator
Definition: basedef.h:41
virtual void releaseChild(IContainer::IOpaqueIterator *i) const =0
Make the opaque iterator availble.
virtual void pushFrontChild(IThing *)=0
Adds child to the front of the list.
virtual IThing * getChild(IContainer::IOpaqueIterator *i)=0
Returns a pointer to the child of the given iterator, or NULL if the iterator does not have a child.
virtual IContainer::signal_type * getDestroySignalChild() const =0
Interface for container of IThings.
virtual bool incrementChild(IContainer::IOpaqueIterator *i) const =0
Moves child pointer to the next child, incrementing the iterator.
virtual bool copyChild(IContainer::IOpaqueIterator *iSrc, IContainer::IOpaqueIterator *iDst) const =0
Child shallow copy.