NetworkUdpServerInterface Class Reference

#include <network_ip_udp.h>

Inheritance diagram for NetworkUdpServerInterface:

详细描述

An asynchronous UDP server.

Public Types

using  ReceiveCompletionHandler = NetworkUdpChannelInterface::ReceiveCompletionHandler
using  SendCompletionHandler = NetworkUdpChannelInterface::SendCompletionHandler

公共成员函数

MAXON_METHOD Result < void >  开始 ()
MAXON_METHOD void  Stop ()
MAXON_METHOD Bool   IsStopped () const
MAXON_METHOD Result < void >  Send (const AioStatusRef &status, AioBuffer data, const NetworkIpAddrPort &destAddress, SendCompletionHandler handler= NetworkUdpChannelInterface::DefaultSendCompletionHandler )
MAXON_METHOD Result < void >  Send ( AioBuffer data, const NetworkIpAddrPort &destAddress, SendCompletionHandler handler= NetworkUdpChannelInterface::DefaultSendCompletionHandler )
MAXON_METHOD AioServiceRef  GetIoService () const
MAXON_METHOD JobQueueRef   GetJobQueue () const

私有成员函数

  MAXON_INTERFACE ( NetworkUdpServerInterface , MAXON_REFERENCE_NORMAL , "net.maxon.interface.networkudpserver")
-  Private Member Functions inherited from AioReaderInterface
MAXON_METHOD Result < void >  NotifyForRead ( SocketT sockfd, Result < void > result)
-  Private Member Functions inherited from AioWriterInterface
MAXON_METHOD Result < void >  NotifyForWrite ( SocketT sockfd, Result < void > result)

Member Typedef Documentation

◆  ReceiveCompletionHandler

using ReceiveCompletionHandler = NetworkUdpChannelInterface::ReceiveCompletionHandler

◆  SendCompletionHandler

using SendCompletionHandler = NetworkUdpChannelInterface::SendCompletionHandler

成员函数文档编制

◆  MAXON_INTERFACE()

MAXON_INTERFACE ( NetworkUdpServerInterface   ,
MAXON_REFERENCE_NORMAL   ,
"net.maxon.interface.networkudpserver"   
)
private

◆  Start()

MAXON_METHOD Result <void> Start ( )

Starts the server. Returns an error if the server was already started, or if it failed to set up a listening socket. After the server is successfully started, it will receive incoming packets.

◆  Stop()

MAXON_METHOD void Stop ( )

Stops the server. Afterwards the server no longer accepts incoming connections.

◆  IsStopped()

MAXON_METHOD Bool IsStopped ( ) const

Returns true if the server is not started.

◆  Send() [1/2]

MAXON_METHOD Result <void> Send ( const AioStatusRef &  status ,
AioBuffer   data ,
const NetworkIpAddrPort destAddress ,
SendCompletionHandler   handler = NetworkUdpChannelInterface::DefaultSendCompletionHandler  
)

Enqueues an asynchronous send request. As soon as data has been sent, the given handler delegate is called. A status instance can be used to synchronously wait on the operation and check its success.

参数
[in] status Status monitor for the operation.
[in] data Buffer containing data to be sent.
[in] destAddress Destination address.
[in] handler Handler delegate.
返回
True if the request has been enqueued, error otherwise.

◆  Send() [2/2]

MAXON_METHOD Result <void> Send ( AioBuffer   data ,
const NetworkIpAddrPort destAddress ,
SendCompletionHandler   handler = NetworkUdpChannelInterface::DefaultSendCompletionHandler  
)

Equivalent to Send(AioStatusRef(), data, handler).

◆  GetIoService()

MAXON_METHOD AioServiceRef GetIoService ( ) const

Returns the I/O service that processes I/O operations of this instance.

◆  GetJobQueue()

MAXON_METHOD JobQueueRef GetJobQueue ( ) const

Returns the job queue that runs completion handlers of this instance.