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, CustomDeleter custom_deleter, const boost::shared_ptr< DestructionGuard > &guard) |
Add an element to the back of the ManagedList, along with a Custom deleter. | |
Handle | add (const T &elem) |
Add an element to the back of the ManagedList. | |
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 174 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 189 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 179 of file managed_list.h.
iterator actionlib::ManagedList< T >::begin | ( | ) | [inline] |
Definition at line 214 of file managed_list.h.
void actionlib::ManagedList< T >::defaultDeleter | ( | iterator | it | ) | [inline, private] |
Definition at line 217 of file managed_list.h.
iterator actionlib::ManagedList< T >::end | ( | ) | [inline] |
Definition at line 213 of file managed_list.h.
void actionlib::ManagedList< T >::erase | ( | iterator | it | ) | [inline] |
Removes an element from the ManagedList.
Definition at line 208 of file managed_list.h.
std::list<TrackedElem> actionlib::ManagedList< T >::list_ [private] |
Definition at line 221 of file managed_list.h.