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

Start receiving on UDP port. More...

#include <network_loop.h>

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

Public Member Functions

 StartUdpRecv (PortHandle handle, packet::IWriter &inbound_writer)
 Set task parameters. 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< Tag >
MpscQueueDatampsc_queue_data () const
 Get pointer to internal data. More...
 

Friends

class NetworkLoop
 

Additional Inherited Members

- Static Public Member Functions inherited from roc::core::MpscQueueNode< Tag >
static MpscQueueNodempsc_queue_node (MpscQueueData *data)
 Get pointer to parent node from pointer to internal data. More...
 
- 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

Start receiving on UDP port.

Definition at line 100 of file network_loop.h.

Constructor & Destructor Documentation

◆ StartUdpRecv()

roc::netio::NetworkLoop::Tasks::StartUdpRecv::StartUdpRecv ( PortHandle  handle,
packet::IWriter inbound_writer 
)

Set task parameters.

Remarks
Received packets will be passed to inbound_writer. It is invoked from network thread. It should not block the caller.

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