ZFFramework
 
Loading...
Searching...
No Matches
ZFProtocolZFUdp.h
Go to the documentation of this file.
1
5
6#ifndef _ZFI_ZFProtocolZFUdp_h_
7#define _ZFI_ZFProtocolZFUdp_h_
8
9#include "ZFCore/ZFProtocol.h"
10#include "ZFNet/ZFUdp.h"
12
13// ============================================================
18public:
20 virtual void *open(
21 ZF_IN ZFUdp *owner
22 , ZF_IN zfuint port
25 virtual void close(
26 ZF_IN ZFUdp *owner
27 , ZF_IN void *nativeSocket
29
30public:
32 virtual void *addrResolve(
33 ZF_IN const zfstring &host
36 virtual void addrRelease(ZF_IN void *nativeAddr) zfpurevirtual;
37
38public:
41 ZF_IN void *nativeAddr
42 , ZF_IN_OUT zfstring &remoteAddr
44
45public:
47 virtual zfbool send(
48 ZF_IN ZFUdp *owner
49 , ZF_IN void *nativeSocket
50 , ZF_IN void *nativeAddr
51 , ZF_IN zfuint port
52 , ZF_IN const void *data
53 , ZF_IN zfindex size
56 virtual zfstring recv(
57 ZF_IN ZFUdp *owner
58 , ZF_IN void *nativeSocket
59 , ZF_OUT void *&nativeAddr
60 , ZF_OUT zfuint &port
61 , ZF_IN_OPT zftimet timeout
64
66#endif // #ifndef _ZFI_ZFProtocolZFUdp_h_
67
#define zfpurevirtual
dummy macro shows that a method is pure virtual method
Definition ZFCoreTypeDef_ClassType.h:68
#define ZF_IN
dummy macro that shows the param used as required input
Definition ZFCoreTypeDef_ClassType.h:180
#define ZF_IN_OPT
dummy macro that shows the param used as optional input
Definition ZFCoreTypeDef_ClassType.h:184
#define ZF_OUT
dummy macro that shows the param used as required output
Definition ZFCoreTypeDef_ClassType.h:188
#define ZF_IN_OUT
dummy macro that shows the param used as required input and output
Definition ZFCoreTypeDef_ClassType.h:196
_ZFT_t_zfbool zfbool
bool type
Definition ZFCoreTypeDef_CoreType.h:103
_ZFT_t_zfindex zfindex
similar to size_t, used for index and size only
Definition ZFCoreTypeDef_CoreType.h:154
_zft_zftimet zftimet
time unit, ensured at least 64 bit, ensured signed
Definition ZFCoreTypeDef_CoreType.h:203
_ZFT_t_zfuint zfuint
same as unsigned int, see zfindex
Definition ZFCoreTypeDef_CoreType.h:169
zft_zfstring< zfchar > zfstring
see zft_zfstring
Definition ZFCoreTypeDef_StringType.h:15
#define ZF_NAMESPACE_GLOBAL_BEGIN
begin namespace ZFFramework
Definition ZFNamespace.h:97
#define ZF_NAMESPACE_GLOBAL_END
end namespace ZFFramework
Definition ZFNamespace.h:98
#define ZFLIB_ZFNet
used to export symbols
Definition ZFNetDef.h:15
protocol definitions for ZFFramework
#define ZFPROTOCOL_INTERFACE_END(ModuleName)
for more information, please refer to ZFPROTOCOL_INTERFACE_BEGIN
Definition ZFProtocol.h:414
#define ZFPROTOCOL_INTERFACE_BEGIN(ZFLIB_, ModuleName)
declare a protocol interface for ZFFramework
Definition ZFProtocol.h:408
udp operation
virtual void close(ZFUdp *owner, void *nativeSocket)=0
see ZFUdp::close
virtual zfbool remoteInfo(void *nativeAddr, zfstring &remoteAddr)=0
see ZFUdpAddr::remoteInfo
virtual zfbool send(ZFUdp *owner, void *nativeSocket, void *nativeAddr, zfuint port, const void *data, zfindex size)=0
see ZFUdp::send
virtual void * addrResolve(const zfstring &host)=0
see ZFUdp::addrResolve
virtual zfstring recv(ZFUdp *owner, void *nativeSocket, void *&nativeAddr, zfuint &port, zftimet timeout)=0
see ZFUdp::recv
virtual void addrRelease(void *nativeAddr)=0
see ZFUdp::addrResolve
virtual void * open(ZFUdp *owner, zfuint port)=0
see ZFUdp::open
udp request util
Definition ZFUdp.h:64