Describes platform socket.
You can find more information in comments below.
class ISocket
{
public:
enum ERROR_TYPE // Error types
{
etInvalidHandle,
etNotEnoughMemory,
etInvalidParameter,
etOperationAborted,
etIOIncomplete,
etIOPending,
etInterruptedCall,
etInvalidFileHandle,
etPermissionDenied,
etBadAddress,
etInvalidArgument,
etTooManyOpenedFiles,
etOperationInProgress,
etOperationOnNonSocket,
etDestinationAddressRequird,
etMessageTooLong,
etWrongProtocolType,
etBadProtocolOption,
etProtocolNotSupported,
etSocketTypeNotSupported,
etOperationNotSupported,
etProtocolFamilyNotSupported,
etAddressfamilyNotSupported,
etAddressInUse,
etCannotAssignAddress,
etNetworkDown,
etNetworkUnreachable,
etNetwordDropConnection,
etSoftwareConnectionAbort,
etConnectionResetByPeer,
etNoBufferSpaceAvailable,
etSocketAlreadyConnected,
etSocketNotConnected,
etCannotSendAfterShutdown,
etTooManyReferences,
etConnectionTimeout,
etConnectionRefused,
etCannotTranslateName,
etNameTooLong,
etHostDown,
etNoRouteToHost,
etDirectoryNotEmpty,
etTooManyProcesses,
etUserQuotaExceeded,
etDiskQuotaExceeded,
etStaleFileHandleReference,
etItemIsRemote,
etNetworkSubsystemUnavailable,
etLibraryVersionOutOfRange,
etNoStartup,
etGracefulShutdownInProgress,
etNoMoreResults,
etCallcancelled,
etProcedureCallTableInvalid,
etServiceProviderInvalid,
etServiceProviderFailedToInitialize,
etSystemCallFailed,
etServiceNotFound,
etClassTypeNotFound,
etCallCancelled,
etDatabaseQueryRefused,
etHostNotFound,
etNonAuthoritativeHostNotFound,
etNonRecoverableError,
etNoDataRecord,
etQoSReceivers,
etQoSSenders,
etNoQoSSenders,
etNoQoSReceivers,
etQoSRequestConfirmed,
etQoSAdmissionError,
etQoSPolicyFailed,
etQoSBadStyle,
etQoSBadObject,
etQoSTrafficControlError,
etQoSGenericError,
etQoSServiceTypeError,
etQoSFlowspecError,
etInvalidQoSProviderBuffer,
etInvalidQoSFilterStyle,
etInvalidQoSFilterType,
etIncorrectQoSFilterCount,
etInvalidQoSObjectLength,
etInvalidQoSFlowCount,
etUnrecognizedQoSObject,
etInvalidQoSPolicyObject,
etInvalidQoSFlowDescriptor,
etInvalidQoSProviderFlowSpec,
etInvalidQoSProviderFilterSpec,
etInvalidQoSShapeDiscardModeObject,
etInvalidQoSShapingRateObject,
etReservedPolicyQoSElementType,
etUnknown
};
enum DATA_EXIST // Data availability
{
deError,
deDisconnected,
deExist,
deNone
};
public:
virtual AnsiString getLocalIp() = 0; // Return local IP address
virtual AnsiString getRemoteIp() = 0; // Return remote IP address
virtual int getLocalPort() = 0; // Return local port
virtual int getRemotePort() = 0; // Return remote port
virtual void Release() = 0; // Close connection and destroy itself
};
Namespace: | nitisa |
Include: | Nitisa/Interfaces/INetwork.h |