wrapper around an STL list to help with reference counting Provides handles elements in an STL list. When all the handles go out of scope, the element in the list is destroyed. More...
#include <managed_list.h>
Classes | |
class | ElemDeleter |
class | Handle |
class | iterator |
struct | TrackedElem |
Public Types | |
typedef boost::function< void(iterator)> | CustomDeleter |
Public Member Functions | |
Handle | add (const T &elem) |
Add an element to the back of the ManagedList. | |
Handle | add (const T &elem, CustomDeleter custom_deleter, const boost::shared_ptr< DestructionGuard > &guard) |
Add an element to the back of the ManagedList, along with a Custom deleter. | |
iterator | begin () |
iterator | end () |
void | erase (iterator it) |
Removes an element from the ManagedList. | |
ManagedList () | |
Private Member Functions | |
void | defaultDeleter (iterator it) |
Private Attributes | |
std::list< TrackedElem > | list_ |
wrapper around an STL list to help with reference counting Provides handles elements in an STL list. When all the handles go out of scope, the element in the list is destroyed.
Definition at line 54 of file managed_list.h.
typedef boost::function< void(iterator)> actionlib::ManagedList< T >::CustomDeleter |
Definition at line 82 of file managed_list.h.
actionlib::ManagedList< T >::ManagedList | ( | ) | [inline] |
Definition at line 182 of file managed_list.h.
Handle actionlib::ManagedList< T >::add | ( | const T & | elem | ) | [inline] |
Add an element to the back of the ManagedList.
Definition at line 187 of file managed_list.h.
Handle actionlib::ManagedList< T >::add | ( | const T & | elem, |
CustomDeleter | custom_deleter, | ||
const boost::shared_ptr< DestructionGuard > & | guard | ||
) | [inline] |
Add an element to the back of the ManagedList, along with a Custom deleter.
elem | The element we want to add |
deleter | Object on which operator() is called when refcount goes to 0 |
Definition at line 197 of file managed_list.h.
iterator actionlib::ManagedList< T >::begin | ( | ) | [inline] |
Definition at line 222 of file managed_list.h.
void actionlib::ManagedList< T >::defaultDeleter | ( | iterator | it | ) | [inline, private] |
Definition at line 225 of file managed_list.h.
iterator actionlib::ManagedList< T >::end | ( | ) | [inline] |
Definition at line 221 of file managed_list.h.
void actionlib::ManagedList< T >::erase | ( | iterator | it | ) | [inline] |
Removes an element from the ManagedList.
Definition at line 216 of file managed_list.h.
std::list<TrackedElem> actionlib::ManagedList< T >::list_ [private] |
Definition at line 229 of file managed_list.h.