27 #ifndef __IPENDPOINT_H
28 #define __IPENDPOINT_H
31 #include "IPAddress.h"
47 IPEndPoint(
char* HostAddress, sp2plib::UInt16 Port);
53 IPEndPoint(sp2plib::UInt32 intAddress, sp2plib::UInt16 Port);
72 void Set(
IP4Address IPAddress, sp2plib::UInt16 Port);
78 void Set(
char* HostAddress, sp2plib::UInt16 Port);
84 void Set(sp2plib::UInt32 intAddress, sp2plib::UInt16 Port);
94 void As_sockaddr_in(sockaddr_in &adr);
99 sockaddr_in get_sockaddr_in();
103 void From_sockaddr_in(
const sockaddr_in &adr);
108 sp2plib::UInt16 GetPort();
113 void SetPort(sp2plib::UInt16 Port);
118 void SetAddress(sp2plib::UInt32 intAddress);
123 void SetAddress(
char* HostAddress);
129 void SetAddressFromBytes(
unsigned char* AddressBytes,
int startIndex = 0);
132 ::std::string ToString();
149 static IPEndPoint* new_ParseFromBytes(
unsigned char *buffer,
int startIndex = 0);
155 void ParseFromBytes(
unsigned char *buffer,
int startIndex = 0);
161 void ToByteArray(
unsigned char *buffer,
int startIndex = 0);
169 operator sockaddr_in();
181 IPEndPoint& operator=(
const sockaddr_in &rhs);
187 bool operator==(
const IPEndPoint &other)
const;
193 bool operator!=(
const IPEndPoint &other)
const;
200 sp2plib::UInt16 _Port;