Provides a source implementation. More...
Public Member Functions | |
source (sourcetype *) | |
Creates a new source waiting for the given source type. | |
~source () | |
void | resume () |
Resumes the invocation of operations or blocks assigned to the object. | |
void | suspend () |
Suspends the invocation of operations or blocks assigned to the object. | |
void | handler (xdispatch::operation *) |
Sets the handler to dispatch each time the source becomes ready. | |
void | handler (dispatch_block_t) |
Sets the handler to dispatch each time the source becomes ready. | |
void | target_queue (const xdispatch::queue &) |
Sets the queue the handler will be executed on. | |
xdispatch::queue | target_queue () const |
virtual dispatch_object_t | native () const |
Static Public Member Functions | |
template<typename T > | |
static T | data () |
Provides a source implementation.
A dispatch source will wait for a specific ressource or operation (as defined by the given type) to complete and dispatch a given handler on completion.
xdispatch::source::source | ( | sourcetype * | ) |
Creates a new source waiting for the given source type.
xdispatch::source::~source | ( | ) |
static T xdispatch::source::data | ( | ) | [inline, static] |
Pass the type of the data to retrieve as template parameter. If the requested datatype cannot be provided, a bad_cast exception will be thrown.
void xdispatch::source::handler | ( | dispatch_block_t | ) |
Sets the handler to dispatch each time the source becomes ready.
You can use data() to obtain a pointer to data provided by the source and possibly being the reason for the handler to be dispatched.
void xdispatch::source::handler | ( | xdispatch::operation * | ) |
Sets the handler to dispatch each time the source becomes ready.
You can use data() to obtain a pointer to data provided by the source and possibly being the reason for the handler to be dispatched.
virtual dispatch_object_t xdispatch::source::native | ( | ) | const [virtual] |
Implements xdispatch::object.
void xdispatch::source::resume | ( | ) | [virtual] |
Resumes the invocation of operations or blocks assigned to the object.
Implements xdispatch::object.
void xdispatch::source::suspend | ( | ) | [virtual] |
Suspends the invocation of operations or blocks assigned to the object.
The object will be suspended as soon as the currently executed operation or block finished.
Implements xdispatch::object.
void xdispatch::source::target_queue | ( | const xdispatch::queue & | ) |
Sets the queue the handler will be executed on.
xdispatch::queue xdispatch::source::target_queue | ( | ) | const |