#include <nproperty.h>
Public Types | |
typedef T * | InitType |
The type by which new values for the underlying property are passed. | |
typedef const T * | QueryType |
The type by which the property value is returned to the user. | |
Public Member Functions | |
StoreManagedPtr () | |
Constructor that sets the held pointer to 0. | |
void | clear () |
Cleans up any currently held value before the property value is changed or cleared. | |
Protected Member Functions | |
~StoreManagedPtr () | |
Destroys the currently held value if one exists. | |
Protected Attributes | |
T * | value_ |
The held property value. |
The property assignment and query routines will also use pointers; in particular the query routines will return a constant pointer. When the held value is changed or the NProperty wrapper is destroyed, any currently held value will be destroyed automatically.
See the NProperty class notes for details.
typedef T* regina::StoreManagedPtr< T >::InitType |
The type by which new values for the underlying property are passed.
Reimplemented in regina::NProperty< regina::NAbelianGroup, regina::StoreManagedPtr >, and regina::NProperty< regina::NGroupPresentation, regina::StoreManagedPtr >.
typedef const T* regina::StoreManagedPtr< T >::QueryType |
The type by which the property value is returned to the user.
Reimplemented in regina::NProperty< regina::NAbelianGroup, regina::StoreManagedPtr >, and regina::NProperty< regina::NGroupPresentation, regina::StoreManagedPtr >.
regina::StoreManagedPtr< T >::StoreManagedPtr | ( | ) | [inline] |
Constructor that sets the held pointer to 0.
regina::StoreManagedPtr< T >::~StoreManagedPtr | ( | ) | [inline, protected] |
Destroys the currently held value if one exists.
void regina::StoreManagedPtr< T >::clear | ( | ) | [inline] |
Cleans up any currently held value before the property value is changed or cleared.
This implementation resets the held pointer to 0 and destroys the previously held value if any exists.
Reimplemented in regina::NProperty< regina::NAbelianGroup, regina::StoreManagedPtr >, and regina::NProperty< regina::NGroupPresentation, regina::StoreManagedPtr >.
T* regina::StoreManagedPtr< T >::value_ [protected] |
The held property value.