12 #ifndef ROC_CTL_BASIC_CONTROL_ENDPOINT_H_
13 #define ROC_CTL_BASIC_CONTROL_ENDPOINT_H_
Base class for List element.
Base class for object with reference counter.
Base class for control endpoints.
virtual bool detach_sink(pipeline::SenderLoop &sink)=0
Remove sink pipeline. Should be called for earlier attached sink.
virtual void async_close(ControlTask ¬ify_task)=0
Initiate asynchronous closing of endpoint. On completion, resumes notify_task.
virtual bool detach_source(pipeline::ReceiverLoop &source)=0
Remove source pipeline. Should be called for earlier attached source.
virtual bool is_bound() const =0
Check if endpoint is successfully bound to local URI.
virtual bool attach_sink(const address::EndpointUri &uri, pipeline::SenderLoop &sink)=0
Add sink pipeline controlled by this endpoint. Should be called after successfull bind.
virtual bool async_bind(const address::EndpointUri &uri, ControlTask ¬ify_task)=0
Initiate asynchronous binding to local URI. On completion, resumes notify_task.
BasicControlEndpoint(core::IArena &)
Initialization.
virtual bool async_connect(const address::EndpointUri &uri, ControlTask ¬ify_task)=0
Initiate asynchronous connecting to remote URI. Should be called after successfull bind....
virtual bool is_connected() const =0
Check if endpoint is successfully connected to remote URI.
virtual bool attach_source(const address::EndpointUri &uri, pipeline::ReceiverLoop &source)=0
Add source pipeline controlled by this endpoint. Should be called after successfull bind.
Base class for control tasks.
Base class for object with reference counter.