TProtocolManager

From Ultibo.org
Revision as of 04:38, 25 May 2018 by Ultibo (Talk | contribs) (Created page with "Return to Unit Protocol __TOC__ === Description === ---- ''To be documented'' === Class definitions === ---- <div class="toccolours mw-collapsible mw-...")

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Return to Unit Protocol


Description


To be documented

Class definitions



TProtocolManager = class(TObject)

constructor Create(ASettings:TNetworkSettings; ATransports:TTransportManager);  
destructor Destroy; override;  
private
FLock:TSynchronizerHandle;  
FSettings:TNetworkSettings;  
FTransports:TTransportManager;  
 
FProtocols:TNetworkList; List of TNetworkProtocol objects
FFilters:TNetworkList; List of TNetworkFilter objects
FConfigs:TNetworkList; List of TNetworkConfig objects
 
function ReaderLock:Boolean;  
function ReaderUnlock:Boolean;  
function WriterLock:Boolean;  
function WriterUnlock:Boolean;  
public
property Settings:TNetworkSettings read FSettings;  
property Transports:TTransportManager read FTransports;  
 
function AddProtocol(AProtocol:TNetworkProtocol):Boolean;  
function RemoveProtocol(AProtocol:TNetworkProtocol):Boolean;  
 
function GetProtocolByName(const AName:String; ALock:Boolean; AState:LongWord):TNetworkProtocol;  
function GetProtocolByType(AProtocol,ASocketType:Word; ALock:Boolean; AState:LongWord):TNetworkProtocol;  
function GetProtocolByProtocol(AProtocol:TNetworkProtocol; ALock:Boolean; AState:LongWord):TNetworkProtocol;  
function GetProtocolBySocket(ASocket:TProtocolSocket; ALock:Boolean; AState:LongWord):TNetworkProtocol;  
function GetProtocolByNext(APrevious:TNetworkProtocol; ALock,AUnlock:Boolean; AState:LongWord):TNetworkProtocol;  
 
function AddFilter(AFilter:TNetworkFilter):Boolean;  
function RemoveFilter(AFilter:TNetworkFilter):Boolean;  
 
function GetFilterByProtocol(AProtocol:Word; ALock:Boolean; AState:LongWord):TNetworkFilter;  
function GetFilterByFilter(AFilter:TNetworkFilter; ALock:Boolean; AState:LongWord):TNetworkFilter;  
function GetFilterByNext(APrevious:TNetworkFilter; ALock,AUnlock:Boolean; AState:LongWord):TNetworkFilter;  
 
function AddConfig(AConfig:TNetworkConfig):Boolean;  
function RemoveConfig(AConfig:TNetworkConfig):Boolean;  
 
function GetConfigByType(AConfigType:Word; ALock:Boolean; AState:LongWord):TNetworkConfig;  
function GetConfigByConfig(AConfig:TNetworkConfig; ALock:Boolean; AState:LongWord):TNetworkConfig;  
function GetConfigByNext(APrevious:TNetworkConfig; ALock,AUnlock:Boolean; AState:LongWord):TNetworkConfig;  
 
function SetConfigByType(AConfigType:Word; AInitDelay,ARetryCount,ARetryTimeout:LongWord):Boolean;  
 
function StartProtocols:Boolean;  
function StopProtocols:Boolean;  
function ProcessProtocols:Boolean;  
 
function ProcessSockets:Boolean;  
 
function EnumerateProtocols(ACallback:TProtocolCallback):Boolean;  
 
function BindProtocols(ATransport:TNetworkTransport):Boolean;  
function UnbindProtocols(ATransport:TNetworkTransport):Boolean;  
 
function StartFilters:Boolean;  
function StopFilters:Boolean;  
function ProcessFilters:Boolean;  
 
function EnumerateFilters(ACallback:TFilterCallback):Boolean;  
 
function BindFilters(ATransport:TNetworkTransport):Boolean;  
function UnbindFilters(ATransport:TNetworkTransport):Boolean;  
 
function StartConfigs:Boolean;  
function StopConfigs:Boolean;  
function ProcessConfigs:Boolean;  
 
function EnumerateConfigs(ACallback:TConfigCallback):Boolean;  
 
function BindConfigs(ATransport:TNetworkTransport):Boolean;  
function UnbindConfigs(ATransport:TNetworkTransport):Boolean;  
 
function CheckSocket(ASocket:TSocket; ALock:Boolean; AState:LongWord):Boolean;  
 
function Select(ANfds:Integer; AReadfds,AWritefds,AExceptfds:PFDSet; ATimeout:PTimeVal):LongInt;  
function Socket(AFamily,AStruct,AProtocol:Integer):TSocket;  


Function declarations



constructor TProtocolManager.Create(ASettings:TNetworkSettings; ATransports:TTransportManager);
Description: To be documented
Note None documented


destructor TProtocolManager.Destroy;
Description: To be documented
Note None documented


function TProtocolManager.ReaderLock:Boolean;
Description: To be documented
Note None documented


function TProtocolManager.ReaderUnlock:Boolean;
Description: To be documented
Note None documented


function TProtocolManager.WriterLock:Boolean;
Description: To be documented
Note None documented


function TProtocolManager.WriterUnlock:Boolean;
Description: To be documented
Note None documented


function TProtocolManager.AddProtocol(AProtocol:TNetworkProtocol):Boolean;
Description: To be documented
Note None documented


function TProtocolManager.RemoveProtocol(AProtocol:TNetworkProtocol):Boolean;
Description: To be documented
Note None documented


function TProtocolManager.GetProtocolByName(const AName:String; ALock:Boolean; AState:LongWord):TNetworkProtocol;
Description: To be documented
Note None documented


function TProtocolManager.GetProtocolByType(AProtocol,ASocketType:Word; ALock:Boolean; AState:LongWord):TNetworkProtocol;
Description: To be documented
Note None documented


function TProtocolManager.GetProtocolByProtocol(AProtocol:TNetworkProtocol; ALock:Boolean; AState:LongWord):TNetworkProtocol;
Description: To be documented
Note None documented


function TProtocolManager.GetProtocolBySocket(ASocket:TProtocolSocket; ALock:Boolean; AState:LongWord):TNetworkProtocol;
Description: To be documented
Note None documented


function TProtocolManager.GetProtocolByNext(APrevious:TNetworkProtocol; ALock,AUnlock:Boolean; AState:LongWord):TNetworkProtocol;
Description: To be documented
Note None documented


function TProtocolManager.AddFilter(AFilter:TNetworkFilter):Boolean;
Description: To be documented
Note None documented


function TProtocolManager.RemoveFilter(AFilter:TNetworkFilter):Boolean;
Description: To be documented
Note None documented


function TProtocolManager.GetFilterByProtocol(AProtocol:Word; ALock:Boolean; AState:LongWord):TNetworkFilter;
Description: To be documented
Note None documented


function TProtocolManager.GetFilterByFilter(AFilter:TNetworkFilter; ALock:Boolean; AState:LongWord):TNetworkFilter;
Description: To be documented
Note None documented


function TProtocolManager.GetFilterByNext(APrevious:TNetworkFilter; ALock,AUnlock:Boolean; AState:LongWord):TNetworkFilter;
Description: To be documented
Note None documented


function TProtocolManager.AddConfig(AConfig:TNetworkConfig):Boolean;
Description: To be documented
Note None documented


function TProtocolManager.RemoveConfig(AConfig:TNetworkConfig):Boolean;
Description: To be documented
Note None documented


function TProtocolManager.GetConfigByType(AConfigType:Word; ALock:Boolean; AState:LongWord):TNetworkConfig;
Description: To be documented
Note None documented


function TProtocolManager.GetConfigByConfig(AConfig:TNetworkConfig; ALock:Boolean; AState:LongWord):TNetworkConfig;
Description: To be documented
Note None documented


function TProtocolManager.GetConfigByNext(APrevious:TNetworkConfig; ALock,AUnlock:Boolean; AState:LongWord):TNetworkConfig;
Description: To be documented
Note None documented


function TProtocolManager.SetConfigByType(AConfigType:Word; AInitDelay,ARetryCount,ARetryTimeout:LongWord):Boolean;
Description: To be documented
Note None documented


function TProtocolManager.StartProtocols:Boolean;
Description: To be documented
Note None documented


function TProtocolManager.StopProtocols:Boolean;
Description: To be documented
Note None documented


function TProtocolManager.ProcessProtocols:Boolean;
Description: To be documented
Note None documented


function TProtocolManager.ProcessSockets:Boolean;
Description: To be documented
Note None documented


function TProtocolManager.EnumerateProtocols(ACallback:TProtocolCallback):Boolean;
Description: To be documented
Note None documented


function TProtocolManager.BindProtocols(ATransport:TNetworkTransport):Boolean;
Description: To be documented
Note None documented


function TProtocolManager.UnbindProtocols(ATransport:TNetworkTransport):Boolean;
Description: To be documented
Note None documented


function TProtocolManager.StartFilters:Boolean;
Description: To be documented
Note None documented


function TProtocolManager.StopFilters:Boolean;
Description: To be documented
Note None documented


function TProtocolManager.ProcessFilters:Boolean;
Description: To be documented
Note None documented


function TProtocolManager.EnumerateFilters(ACallback:TFilterCallback):Boolean;
Description: To be documented
Note None documented


function TProtocolManager.BindFilters(ATransport:TNetworkTransport):Boolean;
Description: To be documented
Note None documented


function TProtocolManager.UnbindFilters(ATransport:TNetworkTransport):Boolean;
Description: To be documented
Note None documented


function TProtocolManager.StartConfigs:Boolean;
Description: To be documented
Note None documented


function TProtocolManager.StopConfigs:Boolean;
Description: To be documented
Note None documented


function TProtocolManager.ProcessConfigs:Boolean;
Description: To be documented
Note None documented


function TProtocolManager.EnumerateConfigs(ACallback:TConfigCallback):Boolean;
Description: To be documented
Note None documented


function TProtocolManager.BindConfigs(ATransport:TNetworkTransport):Boolean;
Description: To be documented
Note None documented


function TProtocolManager.UnbindConfigs(ATransport:TNetworkTransport):Boolean;
Description: To be documented
Note None documented


function TProtocolManager.CheckSocket(ASocket:TSocket; ALock:Boolean; AState:LongWord):Boolean;
Description: To be documented
Note None documented


function TProtocolManager.Select(ANfds:Integer; AReadfds,AWritefds,AExceptfds:PFDSet; ATimeout:PTimeVal):LongInt;
Description: To be documented
Note None documented


function TProtocolManager.Socket(AFamily,AStruct,AProtocol:Integer):TSocket;
Description: To be documented
Note None documented


Return to Unit Reference