#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< T > >, and regina::NProperty< regina::NGroupPresentation, regina::StoreManagedPtr< T > >.
| 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< T > >, and regina::NProperty< regina::NGroupPresentation, regina::StoreManagedPtr< T > >.
| 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< T > >, and regina::NProperty< regina::NGroupPresentation, regina::StoreManagedPtr< T > >.
T* regina::StoreManagedPtr< T >::value_ [protected] |
The held property value.