Roc Toolkit internal modules
Roc Toolkit: real-time audio streaming
roc::netio::NetworkLoop::Tasks::ResolveEndpointAddress Class Reference

Resolve endpoint address. More...

#include <network_loop.h>

Inheritance diagram for roc::netio::NetworkLoop::Tasks::ResolveEndpointAddress:
Collaboration diagram for roc::netio::NetworkLoop::Tasks::ResolveEndpointAddress:

Public Member Functions

 ResolveEndpointAddress (const address::EndpointUri &endpoint_uri)
 Set task parameters. More...
 
const address::SocketAddrget_address () const
 Get resolved address. More...
 
- Public Member Functions inherited from roc::netio::NetworkTask
bool success () const
 Check that the task finished and succeeded. More...
 
- Public Member Functions inherited from roc::core::MpscQueueNode
MpscQueueDatampsc_queue_data () const
 Get list node data. More...
 

Friends

class NetworkLoop
 

Additional Inherited Members

- Protected Types inherited from roc::netio::NetworkTask
enum  State {
  StateInitialized , StatePending , StateClosingPort , StateFinishing ,
  StateFinished
}
 Task state. More...
 
- Protected Attributes inherited from roc::netio::NetworkTask
void(NetworkLoop::* func_ )(NetworkTask &)
 Task implementation method. More...
 
core::Atomic< int > state_
 Task state, defines whether task is finished already. The task becomes immutable after setting state to Finished. More...
 
core::Atomic< int > success_
 Task result, defines wether finished task succeeded or failed. Makes sense only after setting state_ to Finished. This atomic should be assigned before setting state_ to Finished. More...
 
core::SharedPtr< BasicPortport_
 On which port the task operates. More...
 
void * port_handle_
 Port handle. More...
 
INetworkTaskCompletercompleter_
 Completion handler. More...
 
core::Optional< core::Semaphoresem_
 Completion semaphore. More...
 

Detailed Description

Resolve endpoint address.

Definition at line 166 of file network_loop.h.

Constructor & Destructor Documentation

◆ ResolveEndpointAddress()

roc::netio::NetworkLoop::Tasks::ResolveEndpointAddress::ResolveEndpointAddress ( const address::EndpointUri endpoint_uri)

Set task parameters.

Remarks
Gets endpoint hostname, resolves it, and writes the resolved IP address and the port from the endpoint to the resulting SocketAddr.

Member Function Documentation

◆ get_address()

const address::SocketAddr& roc::netio::NetworkLoop::Tasks::ResolveEndpointAddress::get_address ( ) const

Get resolved address.

Precondition
Should be called only if success() is true.

The documentation for this class was generated from the following file: