* introduced SFMLClass type for all C pointers
* getNativePointer -> nativePointer property - IpAddress.isValid + IpAddress.None git-svn-id: https://sfml.svn.sourceforge.net/svnroot/sfml/branches/sfml2@1459 4e206d99-4929-0410-ac5d-dfc041789085
This commit is contained in:
parent
6b444d338e
commit
cfedeee112
23 changed files with 317 additions and 320 deletions
|
@ -162,7 +162,7 @@ class Ftp : DSFMLObject
|
|||
}
|
||||
|
||||
private:
|
||||
this(void* ptr)
|
||||
this(SFMLClass ptr)
|
||||
{
|
||||
super(ptr);
|
||||
}
|
||||
|
@ -170,10 +170,10 @@ class Ftp : DSFMLObject
|
|||
|
||||
extern (C)
|
||||
{
|
||||
typedef void function(void*) pf_sfFtpResponse_Destroy;
|
||||
typedef int function(void*) pf_sfFtpResponse_IsOk;
|
||||
typedef FtpStatus function(void*) pf_sfFtpResponse_GetStatus;
|
||||
typedef ichar* function(void*) pf_sfFtpResponse_GetMessage;
|
||||
typedef void function(SFMLClass) pf_sfFtpResponse_Destroy;
|
||||
typedef int function(SFMLClass) pf_sfFtpResponse_IsOk;
|
||||
typedef FtpStatus function(SFMLClass) pf_sfFtpResponse_GetStatus;
|
||||
typedef ichar* function(SFMLClass) pf_sfFtpResponse_GetMessage;
|
||||
|
||||
static pf_sfFtpResponse_Destroy sfFtpResponse_Destroy;
|
||||
static pf_sfFtpResponse_IsOk sfFtpResponse_IsOk;
|
||||
|
@ -213,7 +213,7 @@ class Ftp : DSFMLObject
|
|||
}
|
||||
|
||||
private:
|
||||
this(void* ptr)
|
||||
this(SFMLClass ptr)
|
||||
{
|
||||
super(ptr);
|
||||
}
|
||||
|
@ -221,8 +221,8 @@ class Ftp : DSFMLObject
|
|||
|
||||
extern (C)
|
||||
{
|
||||
typedef void function(void*) pf_sfFtpDirectoryResponse_Destroy;
|
||||
typedef ichar* function(void*) pf_sfFtpDirectoryResponse_GetDirectory;
|
||||
typedef void function(SFMLClass) pf_sfFtpDirectoryResponse_Destroy;
|
||||
typedef ichar* function(SFMLClass) pf_sfFtpDirectoryResponse_GetDirectory;
|
||||
|
||||
static pf_sfFtpDirectoryResponse_Destroy sfFtpDirectoryResponse_Destroy;
|
||||
static pf_sfFtpDirectoryResponse_GetDirectory sfFtpDirectoryResponse_GetDirectory;
|
||||
|
@ -291,7 +291,7 @@ class Ftp : DSFMLObject
|
|||
}
|
||||
|
||||
private:
|
||||
this(void* ptr)
|
||||
this(SFMLClass ptr)
|
||||
{
|
||||
super(ptr);
|
||||
}
|
||||
|
@ -299,9 +299,9 @@ class Ftp : DSFMLObject
|
|||
// External ================================================================
|
||||
extern (C)
|
||||
{
|
||||
typedef void function(void*) pf_sfFtpListingResponse_Destroy;
|
||||
typedef size_t function(void*) pf_sfFtpListingResponse_GetCount;
|
||||
typedef ichar* function(void*, size_t) pf_sfFtpListingResponse_GetFilename;
|
||||
typedef void function(SFMLClass) pf_sfFtpListingResponse_Destroy;
|
||||
typedef size_t function(SFMLClass) pf_sfFtpListingResponse_GetCount;
|
||||
typedef ichar* function(SFMLClass, size_t) pf_sfFtpListingResponse_GetFilename;
|
||||
|
||||
static pf_sfFtpListingResponse_Destroy sfFtpListingResponse_Destroy;
|
||||
static pf_sfFtpListingResponse_GetCount sfFtpListingResponse_GetCount;
|
||||
|
@ -538,23 +538,23 @@ private:
|
|||
|
||||
extern (C)
|
||||
{
|
||||
typedef void* function() pf_sfFtp_Create;
|
||||
typedef void function(void*) pf_sfFtp_Destroy;
|
||||
typedef void* function(void*, IPAddress, ushort, float) pf_sfFtp_Connect;
|
||||
typedef void* function(void*) pf_sfFtp_LoginAnonymous;
|
||||
typedef void* function(void*, cchar*, cchar*) pf_sfFtp_Login;
|
||||
typedef void* function(void*) pf_sfFtp_Disconnect;
|
||||
typedef void* function(void*) pf_sfFtp_KeepAlive;
|
||||
typedef void* function(void*) pf_sfFtp_GetWorkingDirectory;
|
||||
typedef void* function(void*, cchar*) pf_sfFtp_GetDirectoryListing;
|
||||
typedef void* function(void*, cchar*) pf_sfFtp_ChangeDirectory;
|
||||
typedef void* function(void*) pf_sfFtp_ParentDirectory;
|
||||
typedef void* function(void*, cchar*) pf_sfFtp_MakeDirectory;
|
||||
typedef void* function(void*, cchar*) pf_sfFtp_DeleteDirectory;
|
||||
typedef void* function(void*, cchar*, cchar*) pf_sfFtp_RenameFile;
|
||||
typedef void* function(void*, cchar*) pf_sfFtp_DeleteFile;
|
||||
typedef void* function(void*, cchar*, cchar*, FtpTransferMode) pf_sfFtp_Download;
|
||||
typedef void* function(void*, cchar*, cchar*, FtpTransferMode) pf_sfFtp_Upload;
|
||||
typedef SFMLClass function() pf_sfFtp_Create;
|
||||
typedef void function(SFMLClass) pf_sfFtp_Destroy;
|
||||
typedef SFMLClass function(SFMLClass, IPAddress, ushort, float) pf_sfFtp_Connect;
|
||||
typedef SFMLClass function(SFMLClass) pf_sfFtp_LoginAnonymous;
|
||||
typedef SFMLClass function(SFMLClass, cchar*, cchar*) pf_sfFtp_Login;
|
||||
typedef SFMLClass function(SFMLClass) pf_sfFtp_Disconnect;
|
||||
typedef SFMLClass function(SFMLClass) pf_sfFtp_KeepAlive;
|
||||
typedef SFMLClass function(SFMLClass) pf_sfFtp_GetWorkingDirectory;
|
||||
typedef SFMLClass function(SFMLClass, cchar*) pf_sfFtp_GetDirectoryListing;
|
||||
typedef SFMLClass function(SFMLClass, cchar*) pf_sfFtp_ChangeDirectory;
|
||||
typedef SFMLClass function(SFMLClass) pf_sfFtp_ParentDirectory;
|
||||
typedef SFMLClass function(SFMLClass, cchar*) pf_sfFtp_MakeDirectory;
|
||||
typedef SFMLClass function(SFMLClass, cchar*) pf_sfFtp_DeleteDirectory;
|
||||
typedef SFMLClass function(SFMLClass, cchar*, cchar*) pf_sfFtp_RenameFile;
|
||||
typedef SFMLClass function(SFMLClass, cchar*) pf_sfFtp_DeleteFile;
|
||||
typedef SFMLClass function(SFMLClass, cchar*, cchar*, FtpTransferMode) pf_sfFtp_Download;
|
||||
typedef SFMLClass function(SFMLClass, cchar*, cchar*, FtpTransferMode) pf_sfFtp_Upload;
|
||||
|
||||
static pf_sfFtp_Create sfFtp_Create;
|
||||
static pf_sfFtp_Destroy sfFtp_Destroy;
|
||||
|
|
|
@ -154,19 +154,19 @@ class Http : DSFMLObject
|
|||
}
|
||||
|
||||
private:
|
||||
this(void* ptr)
|
||||
this(SFMLClass ptr)
|
||||
{
|
||||
super(ptr);
|
||||
}
|
||||
// External ================================================================
|
||||
extern (C)
|
||||
{
|
||||
typedef void function(void*) pf_sfHttpResponse_Destroy;
|
||||
typedef ichar* function(void*, cchar*) pf_sfHttpResponse_GetField;
|
||||
typedef HttpStatus function(void*) pf_sfHttpResponse_GetStatus;
|
||||
typedef uint function(void*) pf_sfHttpResponse_GetMajorVersion;
|
||||
typedef uint function(void*) pf_sfHttpResponse_GetMinorVersion;
|
||||
typedef ichar* function(void*) pf_sfHttpResponse_GetBody;
|
||||
typedef void function(SFMLClass) pf_sfHttpResponse_Destroy;
|
||||
typedef ichar* function(SFMLClass, cchar*) pf_sfHttpResponse_GetField;
|
||||
typedef HttpStatus function(SFMLClass) pf_sfHttpResponse_GetStatus;
|
||||
typedef uint function(SFMLClass) pf_sfHttpResponse_GetMajorVersion;
|
||||
typedef uint function(SFMLClass) pf_sfHttpResponse_GetMinorVersion;
|
||||
typedef ichar* function(SFMLClass) pf_sfHttpResponse_GetBody;
|
||||
|
||||
static pf_sfHttpResponse_Destroy sfHttpResponse_Destroy;
|
||||
static pf_sfHttpResponse_GetField sfHttpResponse_GetField;
|
||||
|
@ -276,13 +276,13 @@ class Http : DSFMLObject
|
|||
// External ================================================================
|
||||
extern (C)
|
||||
{
|
||||
typedef void* function() pf_sfHttpRequest_Create;
|
||||
typedef void function(void*) pf_sfHttpRequest_Destroy;
|
||||
typedef void function(void*, cchar*, cchar*) pf_sfHttpRequest_SetField;
|
||||
typedef void function(void*, HttpMethod) pf_sfHttpRequest_SetMethod;
|
||||
typedef void function(void*, cchar*) pf_sfHttpRequest_SetURI;
|
||||
typedef void function(void*, uint, uint) pf_sfHttpRequest_SetHttpVersion;
|
||||
typedef void function(void*, cchar*) pf_sfHttpRequest_SetBody;
|
||||
typedef SFMLClass function() pf_sfHttpRequest_Create;
|
||||
typedef void function(SFMLClass) pf_sfHttpRequest_Destroy;
|
||||
typedef void function(SFMLClass, cchar*, cchar*) pf_sfHttpRequest_SetField;
|
||||
typedef void function(SFMLClass, HttpMethod) pf_sfHttpRequest_SetMethod;
|
||||
typedef void function(SFMLClass, cchar*) pf_sfHttpRequest_SetURI;
|
||||
typedef void function(SFMLClass, uint, uint) pf_sfHttpRequest_SetHttpVersion;
|
||||
typedef void function(SFMLClass, cchar*) pf_sfHttpRequest_SetBody;
|
||||
|
||||
static pf_sfHttpRequest_Create sfHttpRequest_Create;
|
||||
static pf_sfHttpRequest_Destroy sfHttpRequest_Destroy;
|
||||
|
@ -363,7 +363,7 @@ class Http : DSFMLObject
|
|||
|
||||
Response sendRequest(Request req)
|
||||
{
|
||||
return new Response( sfHttp_SendRequest(m_ptr, req.getNativePointer) );
|
||||
return new Response( sfHttp_SendRequest(m_ptr, req.nativePointer) );
|
||||
}
|
||||
|
||||
private:
|
||||
|
@ -372,10 +372,10 @@ private:
|
|||
|
||||
extern (C)
|
||||
{
|
||||
typedef void* function() pf_sfHttp_Create;
|
||||
typedef void function(void*) pf_sfHttp_Destroy;
|
||||
typedef void function(void*, cchar*, ushort) pf_sfHttp_SetHost;
|
||||
typedef void* function(void*, void*) pf_sfHttp_SendRequest;
|
||||
typedef SFMLClass function() pf_sfHttp_Create;
|
||||
typedef void function(SFMLClass) pf_sfHttp_Destroy;
|
||||
typedef void function(SFMLClass, cchar*, ushort) pf_sfHttp_SetHost;
|
||||
typedef SFMLClass function(SFMLClass, SFMLClass) pf_sfHttp_SendRequest;
|
||||
|
||||
static pf_sfHttp_Create sfHttp_Create;
|
||||
static pf_sfHttp_Destroy sfHttp_Destroy;
|
||||
|
|
|
@ -77,15 +77,14 @@ struct IPAddress
|
|||
}
|
||||
|
||||
/**
|
||||
* Tell if the address is a valid one
|
||||
*
|
||||
* Returns:
|
||||
* True if address has a valid syntax
|
||||
*
|
||||
*/
|
||||
bool isValid()
|
||||
* Get the empty/invalid address
|
||||
*
|
||||
* Returns:
|
||||
* Empty object that represents invalid addresses
|
||||
*/
|
||||
static IPAddress None()
|
||||
{
|
||||
return cast(bool)sfIpAddress_IsValid(this);
|
||||
return sfIpAddress_None();
|
||||
}
|
||||
|
||||
@property
|
||||
|
@ -139,11 +138,11 @@ static extern(C)
|
|||
IPAddress function(cchar*) sfIpAddress_FromString;
|
||||
IPAddress function(ubyte, ubyte, ubyte, ubyte)sfIpAddress_FromBytes;
|
||||
IPAddress function(uint) sfIpAddress_FromInteger;
|
||||
int function(IPAddress) sfIpAddress_IsValid;
|
||||
IPAddress function() sfIpAddress_None;
|
||||
IPAddress function() sfIpAddress_GetLocalAddress;
|
||||
IPAddress function() sfIpAddress_GetPublicAddress;
|
||||
IPAddress function() sfIpAddress_LocalHost;
|
||||
}
|
||||
|
||||
mixin(loadFromSharedLib2("csfml-network", "sfIpAddress",
|
||||
"FromBytes", "FromString", "FromInteger", "GetLocalAddress", "GetPublicAddress", "IsValid", "LocalHost"));
|
||||
"FromBytes", "FromString", "FromInteger", "GetLocalAddress", "GetPublicAddress", "None", "LocalHost"));
|
|
@ -319,34 +319,34 @@ private:
|
|||
|
||||
extern (C)
|
||||
{
|
||||
typedef void* function() pf_sfPacket_Create;
|
||||
typedef void function(void*) pf_sfPacket_Destroy;
|
||||
typedef void function(void*, void*, size_t) pf_sfPacket_Append;
|
||||
typedef void function(void*) pf_sfPacket_Clear;
|
||||
typedef byte* function(void*) pf_sfPacket_GetData;
|
||||
typedef uint function(void*) pf_sfPacket_GetDataSize;
|
||||
typedef int function(void*) pf_sfPacket_EndOfPacket;
|
||||
typedef int function(void*) pf_sfPacket_CanRead;
|
||||
typedef byte function(void*) pf_sfPacket_ReadInt8;
|
||||
typedef ubyte function(void*) pf_sfPacket_ReadUint8;
|
||||
typedef short function(void*) pf_sfPacket_ReadInt16;
|
||||
typedef ushort function(void*) pf_sfPacket_ReadUint16;
|
||||
typedef int function(void*) pf_sfPacket_ReadInt32;
|
||||
typedef uint function(void*) pf_sfPacket_ReadUint32;
|
||||
typedef float function(void*) pf_sfPacket_ReadFloat;
|
||||
typedef double function(void*) pf_sfPacket_ReadDouble;
|
||||
typedef void function(void*, char*) pf_sfPacket_ReadString;
|
||||
typedef void function(void*, wchar*) pf_sfPacket_ReadWideString;
|
||||
typedef void function(void*, byte) pf_sfPacket_WriteInt8;
|
||||
typedef void function(void*, ubyte) pf_sfPacket_WriteUint8;
|
||||
typedef void function(void*, short) pf_sfPacket_WriteInt16;
|
||||
typedef void function(void*, ushort) pf_sfPacket_WriteUint16;
|
||||
typedef void function(void*, int) pf_sfPacket_WriteInt32;
|
||||
typedef void function(void*, uint) pf_sfPacket_WriteUint32;
|
||||
typedef void function(void*, float) pf_sfPacket_WriteFloat;
|
||||
typedef void function(void*, double) pf_sfPacket_WriteDouble;
|
||||
typedef void function(void*, cchar*) pf_sfPacket_WriteString;
|
||||
typedef void function(void*, cwchar*) pf_sfPacket_WriteWideString;
|
||||
typedef SFMLClass function() pf_sfPacket_Create;
|
||||
typedef void function(SFMLClass) pf_sfPacket_Destroy;
|
||||
typedef void function(SFMLClass, const(void)*, size_t) pf_sfPacket_Append;
|
||||
typedef void function(SFMLClass) pf_sfPacket_Clear;
|
||||
typedef byte* function(SFMLClass) pf_sfPacket_GetData;
|
||||
typedef uint function(SFMLClass) pf_sfPacket_GetDataSize;
|
||||
typedef int function(SFMLClass) pf_sfPacket_EndOfPacket;
|
||||
typedef int function(SFMLClass) pf_sfPacket_CanRead;
|
||||
typedef byte function(SFMLClass) pf_sfPacket_ReadInt8;
|
||||
typedef ubyte function(SFMLClass) pf_sfPacket_ReadUint8;
|
||||
typedef short function(SFMLClass) pf_sfPacket_ReadInt16;
|
||||
typedef ushort function(SFMLClass) pf_sfPacket_ReadUint16;
|
||||
typedef int function(SFMLClass) pf_sfPacket_ReadInt32;
|
||||
typedef uint function(SFMLClass) pf_sfPacket_ReadUint32;
|
||||
typedef float function(SFMLClass) pf_sfPacket_ReadFloat;
|
||||
typedef double function(SFMLClass) pf_sfPacket_ReadDouble;
|
||||
typedef void function(SFMLClass, char*) pf_sfPacket_ReadString;
|
||||
typedef void function(SFMLClass, wchar*) pf_sfPacket_ReadWideString;
|
||||
typedef void function(SFMLClass, byte) pf_sfPacket_WriteInt8;
|
||||
typedef void function(SFMLClass, ubyte) pf_sfPacket_WriteUint8;
|
||||
typedef void function(SFMLClass, short) pf_sfPacket_WriteInt16;
|
||||
typedef void function(SFMLClass, ushort) pf_sfPacket_WriteUint16;
|
||||
typedef void function(SFMLClass, int) pf_sfPacket_WriteInt32;
|
||||
typedef void function(SFMLClass, uint) pf_sfPacket_WriteUint32;
|
||||
typedef void function(SFMLClass, float) pf_sfPacket_WriteFloat;
|
||||
typedef void function(SFMLClass, double) pf_sfPacket_WriteDouble;
|
||||
typedef void function(SFMLClass, cchar*) pf_sfPacket_WriteString;
|
||||
typedef void function(SFMLClass, cwchar*) pf_sfPacket_WriteWideString;
|
||||
|
||||
static pf_sfPacket_Create sfPacket_Create;
|
||||
static pf_sfPacket_Destroy sfPacket_Destroy;
|
||||
|
|
|
@ -32,10 +32,10 @@ import dsfml.network.socketudp;
|
|||
import dsfml.system.common;
|
||||
|
||||
/**
|
||||
* Selector TCP allow reading from multiple sockets
|
||||
* without blocking. It's a kind of multiplexer. Use SocketTCP or
|
||||
* SocketUDP aliases.
|
||||
*/
|
||||
* Selector TCP allow reading from multiple sockets
|
||||
* without blocking. It's a kind of multiplexer. Use SocketTCP or
|
||||
* SocketUDP aliases.
|
||||
*/
|
||||
class Selector(T) : DSFMLObject
|
||||
{
|
||||
//Ensure type is correct
|
||||
|
@ -64,10 +64,10 @@ class Selector(T) : DSFMLObject
|
|||
*/
|
||||
void add(T socket)
|
||||
{
|
||||
if (!(socket.getNativePointer in m_watchedSockets))
|
||||
if (!(socket.nativePointer in m_watchedSockets))
|
||||
{
|
||||
sfSelector_Add(m_ptr, socket.getNativePointer);
|
||||
m_watchedSockets[socket.getNativePointer] = socket;
|
||||
sfSelector_Add(m_ptr, socket.nativePointer);
|
||||
m_watchedSockets[socket.nativePointer] = socket;
|
||||
m_numSocketsWatched++;
|
||||
}
|
||||
}
|
||||
|
@ -80,10 +80,10 @@ class Selector(T) : DSFMLObject
|
|||
*/
|
||||
void remove(T socket)
|
||||
{
|
||||
if (socket.getNativePointer in m_watchedSockets)
|
||||
if (socket.nativePointer in m_watchedSockets)
|
||||
{
|
||||
sfSelector_Remove(m_ptr, socket.getNativePointer);
|
||||
m_watchedSockets.remove(socket.getNativePointer);
|
||||
sfSelector_Remove(m_ptr, socket.nativePointer);
|
||||
m_watchedSockets.remove(socket.nativePointer);
|
||||
m_numSocketsWatched--;
|
||||
}
|
||||
}
|
||||
|
@ -139,13 +139,13 @@ private:
|
|||
// External ====================================================================
|
||||
extern (C)
|
||||
{
|
||||
typedef void* function() pf_sfSelector_Create;
|
||||
typedef void function(void*) pf_sfSelector_Destroy;
|
||||
typedef void function(void*, void*) pf_sfSelector_Add;
|
||||
typedef void function(void*, void*) pf_sfSelector_Remove;
|
||||
typedef void function(void*) pf_sfSelector_Clear;
|
||||
typedef uint function(void*, float) pf_sfSelector_Wait;
|
||||
typedef void* function(void*, uint) pf_sfSelector_GetSocketReady;
|
||||
typedef SFMLClass function() pf_sfSelector_Create;
|
||||
typedef void function(SFMLClass) pf_sfSelector_Destroy;
|
||||
typedef void function(SFMLClass, SFMLClass) pf_sfSelector_Add;
|
||||
typedef void function(SFMLClass, SFMLClass) pf_sfSelector_Remove;
|
||||
typedef void function(SFMLClass) pf_sfSelector_Clear;
|
||||
typedef uint function(SFMLClass, float) pf_sfSelector_Wait;
|
||||
typedef SFMLClass function(SFMLClass, uint) pf_sfSelector_GetSocketReady;
|
||||
|
||||
static pf_sfSelector_Create sfSelector_Create;
|
||||
static pf_sfSelector_Destroy sfSelector_Destroy;
|
||||
|
@ -187,5 +187,4 @@ private:
|
|||
*/
|
||||
alias Selector!(SocketTCP) SelectorTCP;
|
||||
/// ditto
|
||||
alias Selector!(SocketUDP) SelectorUDP;
|
||||
|
||||
alias Selector!(SocketUDP) SelectorUDP;
|
|
@ -93,7 +93,7 @@ class SocketTCP : DSFMLObject
|
|||
*/
|
||||
SocketStatus accept(SocketTCP connected)
|
||||
{
|
||||
void* temp = null;
|
||||
SFMLClass temp = null;
|
||||
SocketStatus ret = sfSocketTCP_Accept(m_ptr, &temp, null);
|
||||
connected.m_ptr = temp;
|
||||
return ret;
|
||||
|
@ -112,7 +112,7 @@ class SocketTCP : DSFMLObject
|
|||
*/
|
||||
SocketStatus accept(SocketTCP connected, out IPAddress address)
|
||||
{
|
||||
void* temp = null;
|
||||
SFMLClass temp = null;
|
||||
SocketStatus ret = sfSocketTCP_Accept(m_ptr, &temp, &address);
|
||||
connected.m_ptr = temp;
|
||||
return ret;
|
||||
|
@ -177,7 +177,7 @@ class SocketTCP : DSFMLObject
|
|||
{
|
||||
byte[] dataArray = packetToSend.onSend();
|
||||
m_intermediatePacket.append(dataArray);
|
||||
SocketStatus stat = cast(SocketStatus)sfSocketTCP_SendPacket(m_ptr, m_intermediatePacket.getNativePointer);
|
||||
SocketStatus stat = cast(SocketStatus)sfSocketTCP_SendPacket(m_ptr, m_intermediatePacket.nativePointer);
|
||||
m_intermediatePacket.clear();
|
||||
return stat;
|
||||
}
|
||||
|
@ -195,7 +195,7 @@ class SocketTCP : DSFMLObject
|
|||
*/
|
||||
SocketStatus receive(Packet packetToReceive)
|
||||
{
|
||||
SocketStatus stat = cast(SocketStatus)sfSocketTCP_ReceivePacket(m_ptr, m_intermediatePacket.getNativePointer);
|
||||
SocketStatus stat = cast(SocketStatus)sfSocketTCP_ReceivePacket(m_ptr, m_intermediatePacket.nativePointer);
|
||||
packetToReceive.onReceive(m_intermediatePacket.getData);
|
||||
m_intermediatePacket.clear();
|
||||
return stat;
|
||||
|
@ -214,16 +214,9 @@ class SocketTCP : DSFMLObject
|
|||
return cast(bool)sfSocketTCP_IsValid(m_ptr);
|
||||
}
|
||||
|
||||
///
|
||||
bool opEquals(SocketTCP other)
|
||||
{
|
||||
return (other.getNativePointer == this.getNativePointer);
|
||||
}
|
||||
|
||||
|
||||
package:
|
||||
|
||||
this (void* ptr)
|
||||
this (SFMLClass ptr)
|
||||
{
|
||||
super(ptr);
|
||||
m_intermediatePacket = new Packet();
|
||||
|
@ -236,16 +229,16 @@ private:
|
|||
// External ====================================================================
|
||||
extern (C)
|
||||
{
|
||||
typedef void* function() pf_sfSocketTCP_Create;
|
||||
typedef void function(void*) pf_sfSocketTCP_Destroy;
|
||||
typedef int function(void*, ushort, IPAddress, float) pf_sfSocketTCP_Connect;
|
||||
typedef int function(void*, ushort) pf_sfSocketTCP_Listen;
|
||||
typedef SocketStatus function(void*, void**, IPAddress*) pf_sfSocketTCP_Accept;
|
||||
typedef SocketStatus function(void*, byte*, size_t) pf_sfSocketTCP_Send;
|
||||
typedef SocketStatus function(void*, byte*, size_t, size_t*) pf_sfSocketTCP_Receive;
|
||||
typedef SocketStatus function(void*, void*) pf_sfSocketTCP_SendPacket;
|
||||
typedef SocketStatus function(void*, void*) pf_sfSocketTCP_ReceivePacket;
|
||||
typedef int function(void*) pf_sfSocketTCP_IsValid;
|
||||
typedef SFMLClass function() pf_sfSocketTCP_Create;
|
||||
typedef void function(SFMLClass) pf_sfSocketTCP_Destroy;
|
||||
typedef int function(SFMLClass, ushort, IPAddress, float) pf_sfSocketTCP_Connect;
|
||||
typedef int function(SFMLClass, ushort) pf_sfSocketTCP_Listen;
|
||||
typedef SocketStatus function(SFMLClass, SFMLClass*, IPAddress*) pf_sfSocketTCP_Accept;
|
||||
typedef SocketStatus function(SFMLClass, const(byte)*, size_t) pf_sfSocketTCP_Send;
|
||||
typedef SocketStatus function(SFMLClass, byte*, size_t, size_t*) pf_sfSocketTCP_Receive;
|
||||
typedef SocketStatus function(SFMLClass, SFMLClass) pf_sfSocketTCP_SendPacket;
|
||||
typedef SocketStatus function(SFMLClass, SFMLClass) pf_sfSocketTCP_ReceivePacket;
|
||||
typedef int function(SFMLClass) pf_sfSocketTCP_IsValid;
|
||||
|
||||
static pf_sfSocketTCP_Create sfSocketTCP_Create;
|
||||
static pf_sfSocketTCP_Destroy sfSocketTCP_Destroy;
|
||||
|
|
|
@ -33,14 +33,14 @@ import dsfml.network.socketstatus;
|
|||
import dsfml.system.common;
|
||||
|
||||
/**
|
||||
* SocketUDP wraps a socket using UDP protocol to
|
||||
* send data fastly (but with less safety)
|
||||
*/
|
||||
* SocketUDP wraps a socket using UDP protocol to
|
||||
* send data fastly (but with less safety)
|
||||
*/
|
||||
class SocketUDP : DSFMLObject
|
||||
{
|
||||
/**
|
||||
* Default constructor
|
||||
*/
|
||||
* Default constructor
|
||||
*/
|
||||
this()
|
||||
{
|
||||
super(sfSocketUDP_Create());
|
||||
|
@ -135,7 +135,7 @@ class SocketUDP : DSFMLObject
|
|||
{
|
||||
byte[] dataArray = packetToSend.onSend();
|
||||
m_intermediatePacket.append(dataArray);
|
||||
SocketStatus stat = cast(SocketStatus)sfSocketUDP_SendPacket(m_ptr, m_intermediatePacket.getNativePointer, address, port);
|
||||
SocketStatus stat = cast(SocketStatus)sfSocketUDP_SendPacket(m_ptr, m_intermediatePacket.nativePointer, address, port);
|
||||
m_intermediatePacket.clear();
|
||||
return stat;
|
||||
}
|
||||
|
@ -154,7 +154,7 @@ class SocketUDP : DSFMLObject
|
|||
*/
|
||||
SocketStatus receive(Packet packetToReceive, out IPAddress address)
|
||||
{
|
||||
SocketStatus ret = sfSocketUDP_ReceivePacket(m_ptr, m_intermediatePacket.getNativePointer, &address);
|
||||
SocketStatus ret = sfSocketUDP_ReceivePacket(m_ptr, m_intermediatePacket.nativePointer, &address);
|
||||
packetToReceive.onReceive(m_intermediatePacket.getData);
|
||||
m_intermediatePacket.clear();
|
||||
return ret;
|
||||
|
@ -185,14 +185,8 @@ class SocketUDP : DSFMLObject
|
|||
return m_port;
|
||||
}
|
||||
|
||||
///
|
||||
bool opEquals(SocketUDP other)
|
||||
{
|
||||
return (other.getNativePointer == this.getNativePointer);
|
||||
}
|
||||
|
||||
package:
|
||||
this (void* ptr)
|
||||
this (SFMLClass ptr)
|
||||
{
|
||||
super(ptr);
|
||||
m_intermediatePacket = new Packet();
|
||||
|
@ -206,15 +200,15 @@ private:
|
|||
|
||||
extern (C)
|
||||
{
|
||||
typedef void* function() pf_sfSocketUDP_Create;
|
||||
typedef void function(void*) pf_sfSocketUDP_Destroy;
|
||||
typedef int function(void*, ushort) pf_sfSocketUDP_Bind;
|
||||
typedef int function(void*, ushort) pf_sfSocketUDP_Unbind;
|
||||
typedef SocketStatus function(void*, byte*, size_t, IPAddress, ushort) pf_sfSocketUDP_Send;
|
||||
typedef SocketStatus function(void*, byte*, size_t, size_t*, IPAddress*) pf_sfSocketUDP_Receive;
|
||||
typedef SocketStatus function(void*, void*, IPAddress, ushort) pf_sfSocketUDP_SendPacket;
|
||||
typedef SocketStatus function(void*, void*, IPAddress*) pf_sfSocketUDP_ReceivePacket;
|
||||
typedef int function(void*) pf_sfSocketUDP_IsValid;
|
||||
typedef SFMLClass function() pf_sfSocketUDP_Create;
|
||||
typedef void function(SFMLClass) pf_sfSocketUDP_Destroy;
|
||||
typedef int function(SFMLClass, ushort) pf_sfSocketUDP_Bind;
|
||||
typedef int function(SFMLClass, ushort) pf_sfSocketUDP_Unbind;
|
||||
typedef SocketStatus function(SFMLClass, byte*, size_t, IPAddress, ushort) pf_sfSocketUDP_Send;
|
||||
typedef SocketStatus function(SFMLClass, byte*, size_t, size_t*, IPAddress*) pf_sfSocketUDP_Receive;
|
||||
typedef SocketStatus function(SFMLClass, SFMLClass, IPAddress, ushort) pf_sfSocketUDP_SendPacket;
|
||||
typedef SocketStatus function(SFMLClass, SFMLClass, IPAddress*) pf_sfSocketUDP_ReceivePacket;
|
||||
typedef int function(SFMLClass) pf_sfSocketUDP_IsValid;
|
||||
|
||||
static pf_sfSocketUDP_Create sfSocketUDP_Create;
|
||||
static pf_sfSocketUDP_Destroy sfSocketUDP_Destroy;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue