41 #ifndef _networkipaddress_h
42 #define _networkipaddress_h
46 #include "Network/networkenumerations.h"
94 IPAddress(
const AddressContainer& Address);
112 static AddressContainer Resolve(
const String& Address);
118 static String Resolve(
const AddressContainer& Address);
128 String GetAsString()
const;
133 void SetBinaryAddress(
const AddressContainer& Address);
136 const AddressContainer& GetBinaryAddress()
const;
142 void SetV4Address(
const UInt32 Address,
const Boole NBO =
false);
146 UInt32 GetV4Address(
const Boole NBO =
false)
const;
169 void ProtoSerialize(
XML::Node& ParentNode)
const;
172 void ProtoDeSerialize(
const XML::Node& SelfRoot);
176 static String GetSerializableName();
static const UInt16 IPv6BinaryLength
The amount of space needed in a buffer to store the binary representation of an IPv6 address...
static const UInt16 IPv6StringLength
The amount of space needed in a string to store the character representation of an IPv6 address...
bool Boole
Generally acts a single bit, true or false.
static const String IPv6LoopbackAddress
The loopback address for IPv6.
NetworkLayerProtocol
This is an enum listing for recognized protocols on Layer 3 of the OSI model.
All the definitions for datatypes as well as some basic conversion functions are defined here...
static const String IPv4BroadcastAddress
The broadcast address for IPv4.
uint16_t UInt16
An 16-bit unsigned integer.
A light-weight handle for manipulating nodes in DOM tree.
uint32_t UInt32
An 32-bit unsigned integer.
AddressContainer InternalAddress
A resizable vector to store the binary IP address regardless of version.
This is a simple class for representing IP addresses used throughout the Network subsystem.
static const String IPv4LoopbackAddress
The loopback address for IPv4.
static const UInt16 IPv4BinaryLength
The amount of space needed in a buffer to store the binary representation of an IPv4 address...
static const UInt16 IPv4StringLength
The amount of space needed in a string to store the character representation of an IPv4 address...
The bulk of the engine components go in this namspace.
std::vector< Int8 > AddressContainer
Convenience type to store the binary representation of IP addresses.
std::string String
A datatype used to a series of characters.