Difference between revisions of "Unit Protocol"

From Ultibo.org
Jump to: navigation, search
Line 28: Line 28:
 
<br />  
 
<br />  
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">
<div style="font-size: 14px; padding-left: 12px;">'''Protocol timer''' <code> SOCKET_TIMER_* </code></div>
+
<div style="font-size: 14px; padding-left: 12px;">'''Protocol timer key values''' <code> SOCKET_TIMER_KEY_* </code></div>
 
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 
{| class="wikitable" style="font-size: 14px; background: white;"
 
{| class="wikitable" style="font-size: 14px; background: white;"
Line 40: Line 40:
 
| <code>SOCKET_TIMER_KEY_MIN = TIMER_KEY_MIN;</code>
 
| <code>SOCKET_TIMER_KEY_MIN = TIMER_KEY_MIN;</code>
 
| &nbsp;
 
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
<br />
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">
 +
<div style="font-size: 14px; padding-left: 12px;">'''Protocol timer flag values''' <code> SOCKET_TIMER_FLAG_* </code></div>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>SOCKET_TIMER_FLAG_NONE = $00000000;</code>
 +
| &nbsp;
 +
|-
 +
| <code>SOCKET_TIMER_FLAG_ACTIVE = $00000001;</code>
 +
| The socket timer item is active in a timer
 +
|-
 +
| <code>SOCKET_TIMER_FLAG_DYNAMIC = $00000002;</code>
 +
| The socket timer item was allocated dynamically
 
|-
 
|-
 
|}
 
|}

Revision as of 01:21, 21 April 2017

Return to Unit Reference


Description


Ultibo Network Protocol interface unit

To be documented

Constants



[Expand]
Protocol specific constants PROTOCOL_*


[Expand]
Protocol timer key values SOCKET_TIMER_KEY_*


[Expand]
Protocol timer flag values SOCKET_TIMER_FLAG_*


[Expand]
ICMP header type ICMP_*


[Expand]
ICMP header code ICMP_UNREACH_*


[Expand]
IGMP header type IGMP_*


Type definitions



Protocol statistics

[Expand]

PProtocolStatistics = ^TProtocolStatistics;

TProtocolStatistics = record

Socket timer item

[Expand]

PSocketTimerItem = ^TSocketTimerItem;

TSocketTimerItem = record

Protocol callback

TProtocolCallback = function(AProtocol:TNetworkProtocol):Boolean of object;

Filter callback

TFilterCallback = function(AFilter:TNetworkFilter):Boolean of object;

Configuration callback

TConfigCallback = function(AConfig:TNetworkConfig):Boolean of object;


Class definitions



Protocol manager

[Expand]

TProtocolManager = class(TObject)

Protocol transport

[Expand]

TProtocolTransport = class(TListObject)

Network protocol

[Expand]

TNetworkProtocol = class(TListObject)

Socket timer

[Expand]

TSocketTimer = class(TObject)

Socket thread

[Expand]

TSocketThread = class(TThread)

Protocol port

[Expand]

TProtocolPort = class(TListObject)

Protocol socket

[Expand]

TProtocolSocket = class(TTransportSocket)

Protocol state

[Expand]

TProtocolState = class(TObject)

Protocol options

[Expand]

TProtocolOptions = class(TObject)

Filter transport

[Expand]

TFilterTransport = class(TListObject)

Network filter

[Expand]

TNetworkFilter = class(TListObject)

Configuration transport

[Expand]

TConfigTransport = class(TListObject)

Network configuration

[Expand]

TNetworkConfig = class(TListObject)

Network client

[Expand]

TNetworkClient = class(TListObject)


Public variables


None defined

Function declarations



Initialization functions

[Expand]
procedure ProtocolInit;
Description: To be documented


[Expand]
function ProtocolStart:LongWord;
Description: To be documented


[Expand]
function ProtocolStop:LongWord;
Description: To be documented


Protocol helper functions

[Expand]
procedure ProtocolCheckTimer(Data:Pointer);
Description: To be documented


Return to Unit Reference