21 #include <boost/utility.hpp>
22 #include "raul/SharedPtr.hpp"
23 #include "raul/SRSWQueue.hpp"
24 #include "raul/Deletable.hpp"
25 #include "raul/List.hpp"
46 class Maid : boost::noncopyable
49 explicit Maid(
size_t size);
60 void manage(SharedPtr<Raul::Deletable> ptr);
75 #endif // RAUL_MAID_HPP
Explicitly driven garbage collector.
Definition: Maid.hpp:46
bool push(const T &obj)
Push an item onto the back of the SRSWQueue - realtime-safe, not thread-safe.
Definition: SRSWQueue.hpp:130
Node * erase(const iterator iter)
Remove an element from the list using an iterator.
Definition: ListImpl.hpp:177
void pop()
Pop an item off the front of the queue - realtime-safe, not thread-safe.
Definition: SRSWQueue.hpp:151
void manage(SharedPtr< Raul::Deletable > ptr)
Manage a SharedPtr.
Definition: Maid.cpp:41
A realtime safe, (partially) thread safe doubly-linked list.
Definition: List.hpp:41
bool empty() const
Return whether or not the queue is empty.
Definition: SRSWQueue.hpp:97
Something with a virtual destructor.
Definition: Deletable.hpp:28
void cleanup()
Free all the objects in the queue (passed by push()).
Definition: Maid.cpp:51
T & front() const
Return the element at the front of the queue without removing it.
Definition: SRSWQueue.hpp:117
void push(Raul::Deletable *obj)
Push a raw pointer to be deleted when cleanup() is called next.
Definition: Maid.hpp:55
void push_back(Node *elem)
Realtime Safe.
Definition: ListImpl.hpp:61