|
| ||||||||||||||||
The ref_counter_pool is a singleton class that maintains the counters for all ref_ptr objects. The counters are maintained in a vector. This class is used by ref_ptr and not intended any other purpose.
| int32_t new_counter ()
| new_counter |
Create a new counter.
Returns: index associated with counter.
| int32_t incr_counter (int32_t index)
| incr_counter |
Increment the count associated with counter by 1.
Parameters:
| index | the counter to increment. |
| int32_t decr_counter (int32_t index)
| decr_counter |
Decrement the count associated with counter by 1.
Parameters:
| index | the counter to decrement. |
| int32_t count (int32_t index)
| count |
Get the count associated with counter.
Parameters:
| index | of the counter to query. |
Returns: the counter value.
| void recycle (int32_t index)
| recycle |
Recycle counter. Places counter on free-list.
Parameters:
| index | of the counter to recycle. |
| void dump ()
| dump |
Dumps counter info to stdout. Debugging function.
| void check ()
| check |
Sanity check internal data structure. Debugging function.
| bool on_free_list (int32_t index)
| on_free_list |
| inline int32_t balance ()
| balance |
[const]
Return number of valid ref pointer entries in pool.
| ref_counter_pool& instance ()
| instance |
[static]
Returns: singleton ref_counter_pool.
| ref_counter_pool ()
| ref_counter_pool |