List of Registry::Entry. More...

#include <Registry.h>

Inheritance diagram for Registry::List< Parent >:
Reference::Able Reference::HeapTracked

Classes

class  Enter
 Enter a Child with default constructor into Registry::List<Parent> More...
class  Instances
 Counts the number of instances of Child entries. More...
class  Unary
 Enter Child with unary constructor into Registry::List<Parent> More...

Public Member Functions

unsigned size () const
 Return the size of the list.
Parent * operator[] (unsigned i) const
 Return the specified entry.
void erase (unsigned i)
 Remove the specified entry.
auto begin () const -> typename std::vector< Reference::To< Entry< Parent > > >::const_iterator
 Return the iterator that points to the first child.
auto end () const -> typename std::vector< Reference::To< Entry< Parent > > >::const_iterator
 Return the iterator that points to the end of the array after the last child.
Parent * create (unsigned i) const
 Return pointer to a null-constructed instance of Parent class.
Public Member Functions inherited from Reference::Able
 Able ()
 Default constructor.
 Able (const Able &)
 Copy constructor.
Ableoperator= (const Able &)
 Assignment operator.
virtual ~Able ()
 Destructor.
unsigned get_reference_count () const
 Returns the number of references there are to this.
Public Member Functions inherited from Reference::HeapTracked
 HeapTracked ()
 Default constructor.
 HeapTracked (const HeapTracked &)
 Copy constructor.
HeapTrackedoperator= (const HeapTracked &)
 Assignment operator.
virtual ~HeapTracked ()
 Destructor.
bool __is_on_heap () const
 Return true if this instance is found in heap addresses.

Static Public Member Functions

static Listget_registry ()
 provide access to the single registry instance
Static Public Member Functions inherited from Reference::Able
static size_t get_instance_count ()
 Returns the current number instances in existence.
Static Public Member Functions inherited from Reference::HeapTracked
static void * operator new (size_t size, void *ptr=0)
 Records the addresses of new instances allocated on the heap.
static void operator delete (void *location, void *ptr)
 Placement delete overload to match the placement new overload.
static void operator delete (void *location)
 Regular delete overload.
static size_t get_heap_queue_size ()
 Return the number of heap addresses awaiting processing.

Static Public Attributes

static bool verbose = false
 verbosity flag used for debugging

Protected Member Functions

void add (Entry< Parent > *entry)
 Add an entry to the registry.
Protected Member Functions inherited from Reference::Able
Handle__reference (bool active) const
 Add the address of a reference to this object.
void __dereference (bool auto_delete=true) const
 Remove the address of a reference to this object.

Protected Attributes

std::vector< Reference::To< Entry< Parent > > > entries
 The vector of registry entries.

Static Protected Attributes

static Listregistry = 0
 The single registry instance for the Parent class.
static Reference::To< Listauto_delete
 Clean up the registry when the program exits.

Friends

class Entry< Parent >

Detailed Description

template<class Parent>
class Registry::List< Parent >

List of Registry::Entry.


The documentation for this class was generated from the following file:

Generated using doxygen 1.14.0