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 56 of file managed_list.h.
typedef boost::function<void (iterator)> actionlib::ManagedList< T >::CustomDeleter |
Definition at line 88 of file managed_list.h.
actionlib::ManagedList< T >::ManagedList | ( | ) | [inline] |
Definition at line 197 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 202 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 212 of file managed_list.h.
iterator actionlib::ManagedList< T >::begin | ( | ) | [inline] |
Definition at line 238 of file managed_list.h.
void actionlib::ManagedList< T >::defaultDeleter | ( | iterator | it | ) | [inline, private] |
Definition at line 241 of file managed_list.h.
iterator actionlib::ManagedList< T >::end | ( | ) | [inline] |
Definition at line 237 of file managed_list.h.
void actionlib::ManagedList< T >::erase | ( | iterator | it | ) | [inline] |
Removes an element from the ManagedList.
Definition at line 232 of file managed_list.h.
std::list<TrackedElem> actionlib::ManagedList< T >::list_ [private] |
Definition at line 245 of file managed_list.h.