Difference between revisions of "Unit WebStatus"

From Ultibo.org
Jump to: navigation, search
Line 108: Line 108:
 
----
 
----
  
''To be documented''
+
 
 +
'''Web status main'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TWebStatusMain = class(THTTPDocument)</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
 +
|-
 +
| <code>constructor Create;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>destructor Destroy; override;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''private'''</div>
 +
|-
 +
| <code>FTitle:String;</code>
 +
| &nbsp;
 +
|-
 +
| <code>FCaption:String;</code>
 +
| &nbsp;
 +
|-
 +
| <code>FSubPages:TStringList;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
| <code>function GetTitle:String;</code>
 +
| &nbsp;
 +
|-
 +
| <code>procedure SetTitle(const ATitle:String);</code>
 +
| &nbsp;
 +
|-
 +
| <code>function GetCaption:String;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
| <code>function NormalizedDateTimeToStr(const DateTime:TDateTime):String;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''protected'''</div>
 +
|-
 +
| <code>function MakeBold(const AName:String):String;</code>
 +
| &nbsp;
 +
|-
 +
| <code>function MakeLink(const AName,ALink:String):String;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
| <code>function AddBlank(AResponse:THTTPServerResponse):Boolean;</code>
 +
| &nbsp;
 +
|-
 +
| <code>function AddBlankEx(AResponse:THTTPServerResponse; AColumns:LongWord):Boolean;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
| <code>function AddItem(AResponse:THTTPServerResponse; const AName,AValue:String):Boolean;</code>
 +
| &nbsp;
 +
|-
 +
| <code>function AddItemEx(AResponse:THTTPServerResponse; const AName,AValue:String; AIndent:LongWord):Boolean;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
| <code>function AddItem3Column(AResponse:THTTPServerResponse; const AName,AValue1,AValue2:String):Boolean;</code>
 +
| &nbsp;
 +
|-
 +
| <code>function AddItem4Column(AResponse:THTTPServerResponse; const AName,AValue1,AValue2,AValue3:String):Boolean;</code>
 +
| &nbsp;
 +
|-
 +
| <code>function AddItem5Column(AResponse:THTTPServerResponse; const AName,AValue1,AValue2,AValue3,AValue4:String):Boolean;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
| <code>function AddBold(AResponse:THTTPServerResponse; const AName,AValue:String):Boolean;</code>
 +
| &nbsp;
 +
|-
 +
| <code>function AddBoldEx(AResponse:THTTPServerResponse; const AName,AValue:String; AIndent:LongWord):Boolean;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
| <code>function AddBold3Column(AResponse:THTTPServerResponse; const AName,AValue1,AValue2:String):Boolean;</code>
 +
| &nbsp;
 +
|-
 +
| <code>function AddBold4Column(AResponse:THTTPServerResponse; const AName,AValue1,AValue2,AValue3:String):Boolean;</code>
 +
| &nbsp;
 +
|-
 +
| <code>function AddBold5Column(AResponse:THTTPServerResponse; const AName,AValue1,AValue2,AValue3,AValue4:String):Boolean;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
| <code>function AddHeader(AResponse:THTTPServerResponse; const ATitle:String; ASub:TWebStatusSub):Boolean;</code>
 +
| &nbsp;
 +
|-
 +
| <code>function AddHeaderEx(AResponse:THTTPServerResponse; const ATitle:String; ASub:TWebStatusSub; AColumns:LongWord):Boolean;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
| <code>function AddFooter(AResponse:THTTPServerResponse):Boolean;</code>
 +
| &nbsp;
 +
|-
 +
| <code>function AddFooterEx(AResponse:THTTPServerResponse; AColumns:LongWord):Boolean;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
| <code>function AddContent(AResponse:THTTPServerResponse; const AContent:String):Boolean;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
| <code>function DoGet(AHost:THTTPHost; ARequest:THTTPServerRequest; AResponse:THTTPServerResponse):Boolean; override;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
 +
|-
 +
| <code>property Title:String read GetTitle write SetTitle;</code>
 +
| &nbsp;
 +
|-
 +
| <code>property Caption:String read GetCaption;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
| <code>function RegisterSubPage(ASub:TWebStatusSub):Boolean;</code>
 +
| &nbsp;
 +
|-
 +
| <code>function DeregisterSubPage(ASub:TWebStatusSub):Boolean;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''Web status sub'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TWebStatusSub = class(THTTPDocument)</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
 +
|-
 +
| <code>constructor Create(AMain:TWebStatusMain);</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>destructor Destroy; override;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''private'''</div>
 +
|-
 +
| <code>FMain:TWebStatusMain;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
| <code>function GetTitle:String;</code>
 +
| &nbsp;
 +
|-
 +
| <code>function GetCaption:String;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
| <code>function NormalizedDateTimeToStr(const DateTime:TDateTime):String;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''protected'''</div>
 +
|-
 +
| <code>FCaption:String;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
| <code>function MakeBold(const AName:String):String;</code>
 +
| &nbsp;
 +
|-
 +
| <code>function MakeLink(const AName,ALink:String):String;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
| <code>function AddBlank(AResponse:THTTPServerResponse):Boolean;</code>
 +
| &nbsp;
 +
|-
 +
| <code>function AddBlankEx(AResponse:THTTPServerResponse; AColumns:LongWord):Boolean;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
| <code>function AddItem(AResponse:THTTPServerResponse; const AName,AValue:String):Boolean;</code>
 +
| &nbsp;
 +
|-
 +
| <code>function AddItemEx(AResponse:THTTPServerResponse; const AName,AValue:String; AIndent:LongWord):Boolean;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
| <code>function AddItem3Column(AResponse:THTTPServerResponse; const AName,AValue1,AValue2:String):Boolean;</code>
 +
| &nbsp;
 +
|-
 +
| <code>function AddItem4Column(AResponse:THTTPServerResponse; const AName,AValue1,AValue2,AValue3:String):Boolean;</code>
 +
| &nbsp;
 +
|-
 +
| <code>function AddItem5Column(AResponse:THTTPServerResponse; const AName,AValue1,AValue2,AValue3,AValue4:String):Boolean;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
| <code>function AddBold(AResponse:THTTPServerResponse; const AName,AValue:String):Boolean;</code>
 +
| &nbsp;
 +
|-
 +
| <code>function AddBoldEx(AResponse:THTTPServerResponse; const AName,AValue:String; AIndent:LongWord):Boolean;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
| <code>function AddBold3Column(AResponse:THTTPServerResponse; const AName,AValue1,AValue2:String):Boolean;</code>
 +
| &nbsp;
 +
|-
 +
| <code>function AddBold4Column(AResponse:THTTPServerResponse; const AName,AValue1,AValue2,AValue3:String):Boolean;</code>
 +
| &nbsp;
 +
|-
 +
| <code>function AddBold5Column(AResponse:THTTPServerResponse; const AName,AValue1,AValue2,AValue3,AValue4:String):Boolean;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
| <code>function AddHeader(AResponse:THTTPServerResponse; const ATitle:String; ASub:TWebStatusSub):Boolean;</code>
 +
| &nbsp;
 +
|-
 +
| <code>function AddHeaderEx(AResponse:THTTPServerResponse; const ATitle:String; ASub:TWebStatusSub; AColumns:LongWord):Boolean;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
| <code>function AddFooter(AResponse:THTTPServerResponse):Boolean;</code>
 +
| &nbsp;
 +
|-
 +
| <code>function AddFooterEx(AResponse:THTTPServerResponse; AColumns:LongWord):Boolean;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
| <code>function AddContent(AResponse:THTTPServerResponse; const AContent:String):Boolean;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
| <code>function DoGet(AHost:THTTPHost;ARequest:THTTPServerRequest; AResponse:THTTPServerResponse):Boolean; override;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
 +
|-
 +
| <code>property Main:TWebStatusMain read FMain;</code>
 +
| &nbsp;
 +
|-
 +
| <code>property Caption:String read GetCaption;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''Web status platform'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TWebStatusPlatform = class(TWebStatusSub)</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
 +
|-
 +
| <code>constructor Create(AMain:TWebStatusMain);</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''private'''</div>
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''protected'''</div>
 +
|-
 +
| <code>function DoGet(AHost:THTTPHost; ARequest:THTTPServerRequest; AResponse:THTTPServerResponse):Boolean; override;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''Web status memory'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TWebStatusMemory = class(TWebStatusSub)</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
 +
|-
 +
| <code>constructor Create(AMain:TWebStatusMain);</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''private'''</div>
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''protected'''</div>
 +
|-
 +
| <code>function DoGet(AHost:THTTPHost; ARequest:THTTPServerRequest; AResponse:THTTPServerResponse):Boolean; override;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''Web status heap'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TWebStatusHeap = class(TWebStatusSub)</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
 +
|-
 +
| <code>constructor Create(AMain:TWebStatusMain);</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''private'''</div>
 +
|-
 +
| <code>function FlagsToFlagName(AFlags:LongWord):String;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''protected'''</div>
 +
|-
 +
| <code>function DoGet(AHost:THTTPHost; ARequest:THTTPServerRequest; AResponse:THTTPServerResponse):Boolean; override;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''Web status CPU'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TWebStatusCPU = class(TWebStatusSub)</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
 +
|-
 +
| <code>constructor Create(AMain:TWebStatusMain);</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''private'''</div>
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''protected'''</div>
 +
|-
 +
| <code>function DoGet(AHost:THTTPHost; ARequest:THTTPServerRequest; AResponse:THTTPServerResponse):Boolean; override;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''Web status FPU'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TWebStatusFPU = class(TWebStatusSub)</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
 +
|-
 +
| <code>constructor Create(AMain:TWebStatusMain);</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''private'''</div>
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''protected'''</div>
 +
|-
 +
| <code>function DoGet(AHost:THTTPHost; ARequest:THTTPServerRequest; AResponse:THTTPServerResponse):Boolean; override;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''Web status GPU'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TWebStatusGPU = class(TWebStatusSub)</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
 +
|-
 +
| <code>constructor Create(AMain:TWebStatusMain);</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''private'''</div>
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''protected'''</div>
 +
|-
 +
| <code>function DoGet(AHost:THTTPHost; ARequest:THTTPServerRequest; AResponse:THTTPServerResponse):Boolean; override;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''Web status RTL'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TWebStatusRTL = class(TWebStatusSub)</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
 +
|-
 +
| <code>constructor Create(AMain:TWebStatusMain);</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''private'''</div>
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''protected'''</div>
 +
|-
 +
| <code>function DoGet(AHost:THTTPHost; ARequest:THTTPServerRequest; AResponse:THTTPServerResponse):Boolean; override;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''Web status clock'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TWebStatusClock = class(TWebStatusSub)</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
 +
|-
 +
| <code>constructor Create(AMain:TWebStatusMain);</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''private'''</div>
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''protected'''</div>
 +
|-
 +
| <code>function DoGet(AHost:THTTPHost; ARequest:THTTPServerRequest; AResponse:THTTPServerResponse):Boolean; override;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''Web status locale'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TWebStatusLocale = class(TWebStatusSub)</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
 +
|-
 +
| <code>constructor Create(AMain:TWebStatusMain);</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''private'''</div>
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''protected'''</div>
 +
|-
 +
| <code>function DoGet(AHost:THTTPHost; ARequest:THTTPServerRequest; AResponse:THTTPServerResponse):Boolean; override;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''Web status threading'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TWebStatusThreading = class(TWebStatusSub)</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
 +
|-
 +
| <code>constructor Create(AMain:TWebStatusMain);</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''private'''</div>
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''protected'''</div>
 +
|-
 +
| <code>function DoGet(AHost:THTTPHost; ARequest:THTTPServerRequest; AResponse:THTTPServerResponse):Boolean; override;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''Web status thread list'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TWebStatusThreadList = class(TWebStatusSub)</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
 +
|-
 +
| <code>constructor Create(AMain:TWebStatusMain);</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''private'''</div>
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''protected'''</div>
 +
|-
 +
| <code>function DoGet(AHost:THTTPHost; ARequest:THTTPServerRequest; AResponse:THTTPServerResponse):Boolean; override;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''Web status scheduler'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TWebStatusScheduler = class(TWebStatusSub)</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
 +
|-
 +
| <code>constructor Create(AMain:TWebStatusMain);</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''private'''</div>
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''protected'''</div>
 +
|-
 +
| <code>function DoGet(AHost:THTTPHost; ARequest:THTTPServerRequest; AResponse:THTTPServerResponse):Boolean; override;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''Web status devices'''
 +
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TWebStatusDevices = class(TWebStatusSub)</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
 +
|-
 +
| <code>constructor Create(AMain:TWebStatusMain);</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''private'''</div>
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''protected'''</div>
 +
|-
 +
| <code>function DoGet(AHost:THTTPHost; ARequest:THTTPServerRequest; AResponse:THTTPServerResponse):Boolean; override;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''Web status drivers'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TWebStatusDrivers = class(TWebStatusSub)</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
 +
|-
 +
| <code>constructor Create(AMain:TWebStatusMain);</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''private'''</div>
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''protected'''</div>
 +
|-
 +
| <code>function DoGet(AHost:THTTPHost; ARequest:THTTPServerRequest; AResponse:THTTPServerResponse):Boolean; override;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''Web status USB'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TWebStatusUSB = class(TWebStatusSub)</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
 +
|-
 +
| <code>constructor Create(AMain:TWebStatusMain);</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''private'''</div>
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''protected'''</div>
 +
|-
 +
| <code>function DoGet(AHost:THTTPHost; ARequest:THTTPServerRequest; AResponse:THTTPServerResponse):Boolean; override;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''Web status MMC'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TWebStatusMMC = class(TWebStatusSub)</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
 +
|-
 +
| <code>constructor Create(AMain:TWebStatusMain);</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''private'''</div>
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''protected'''</div>
 +
|-
 +
| <code>function DoGet(AHost:THTTPHost; ARequest:THTTPServerRequest; AResponse:THTTPServerResponse):Boolean; override;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 +
'''Web status network'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TWebStatusNetwork = class(TWebStatusSub)</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
 +
|-
 +
| <code>constructor Create(AMain:TWebStatusMain);</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''private'''</div>
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''protected'''</div>
 +
|-
 +
| <code>function DoGet(AHost:THTTPHost; ARequest:THTTPServerRequest; AResponse:THTTPServerResponse):Boolean; override;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''Web status storage'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TWebStatusStorage = class(TWebStatusSub)</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
 +
|-
 +
| <code>constructor Create(AMain:TWebStatusMain);</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''private'''</div>
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''protected'''</div>
 +
|-
 +
| <code>function DoGet(AHost:THTTPHost; ARequest:THTTPServerRequest; AResponse:THTTPServerResponse):Boolean; override;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''Web status filesystem'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TWebStatusFilesystem = class(TWebStatusSub)</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
 +
|-
 +
| <code>constructor Create(AMain:TWebStatusMain);</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''private'''</div>
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''protected'''</div>
 +
|-
 +
| <code>function DoGet(AHost:THTTPHost; ARequest:THTTPServerRequest; AResponse:THTTPServerResponse):Boolean; override;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''Web status cache'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TWebStatusCache = class(TWebStatusSub)</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
 +
|-
 +
| <code>constructor Create(AMain:TWebStatusMain);</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''private'''</div>
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''protected'''</div>
 +
|-
 +
| <code>function DoGet(AHost:THTTPHost; ARequest:THTTPServerRequest; AResponse:THTTPServerResponse):Boolean; override;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''Web status keyboard'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TWebStatusKeyboard = class(TWebStatusSub)</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
 +
|-
 +
| <code>constructor Create(AMain:TWebStatusMain);</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''private'''</div>
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''protected'''</div>
 +
|-
 +
| <code>function DoGet(AHost:THTTPHost; ARequest:THTTPServerRequest; AResponse:THTTPServerResponse):Boolean; override;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''Web status mouse'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TWebStatusMouse = class(TWebStatusSub)</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
 +
|-
 +
| <code>constructor Create(AMain:TWebStatusMain);</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''private'''</div>
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''protected'''</div>
 +
|-
 +
| <code>function DoGet(AHost:THTTPHost; ARequest:THTTPServerRequest; AResponse:THTTPServerResponse):Boolean; override;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''Web status framebuffer'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TWebStatusFramebuffer = class(TWebStatusSub)</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
 +
|-
 +
| <code>constructor Create(AMain:TWebStatusMain);</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''private'''</div>
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''protected'''</div>
 +
|-
 +
| <code>function DoGet(AHost:THTTPHost; ARequest:THTTPServerRequest; AResponse:THTTPServerResponse):Boolean; override;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''Web status environment'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TWebStatusEnvironment = class(TWebStatusSub)</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
 +
|-
 +
| <code>constructor Create(AMain:TWebStatusMain);</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''private'''</div>
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''protected'''</div>
 +
|-
 +
| <code>function DoGet(AHost:THTTPHost; ARequest:THTTPServerRequest; AResponse:THTTPServerResponse):Boolean; override;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''Web status page tables'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TWebStatusPageTables = class(TWebStatusSub)</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
 +
|-
 +
| <code>constructor Create(AMain:TWebStatusMain);</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''private'''</div>
 +
|-
 +
| <code>function FlagsToFlagNames(AFlags:LongWord):TStringList;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''protected'''</div>
 +
|-
 +
| <code>function DoGet(AHost:THTTPHost; ARequest:THTTPServerRequest; AResponse:THTTPServerResponse):Boolean; override;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''Web status vector tables'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TWebStatusVectorTables = class(TWebStatusSub)</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
 +
|-
 +
| <code>constructor Create(AMain:TWebStatusMain);</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''private'''</div>
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''protected'''</div>
 +
|-
 +
| <code>function DoGet(AHost:THTTPHost; ARequest:THTTPServerRequest; AResponse:THTTPServerResponse):Boolean; override;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''Web status IRQ/FIQ/SWI'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TWebStatusIRQFIQSWI = class(TWebStatusSub)</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
 +
|-
 +
| <code>constructor Create(AMain:TWebStatusMain);</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''private'''</div>
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''protected'''</div>
 +
|-
 +
| <code>function DoGet(AHost:THTTPHost; ARequest:THTTPServerRequest; AResponse:THTTPServerResponse):Boolean; override;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''Web status configuration'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TWebStatusConfiguration = class(TWebStatusSub)</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
 +
|-
 +
| <code>constructor Create(AMain:TWebStatusMain);</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''private'''</div>
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''protected'''</div>
 +
|-
 +
| <code>function DoGet(AHost:THTTPHost; ARequest:THTTPServerRequest; AResponse:THTTPServerResponse):Boolean; override;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''Web status debug'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TWebStatusDebug = class(TWebStatusSub)</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
 +
|-
 +
| <code>constructor Create(AMain:TWebStatusMain);</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''private'''</div>
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''protected'''</div>
 +
|-
 +
| <code>function DoGet(AHost:THTTPHost; ARequest:THTTPServerRequest; AResponse:THTTPServerResponse):Boolean; override;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''Web status custom'''
 +
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TWebStatusCustom = class(TWebStatusSub)</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
 +
|-
 +
| <code>constructor Create(const AName,APath:String; AColumns:LongWord);</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''private'''</div>
 +
|-
 +
| <code>FColumns:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''protected'''</div>
 +
|-
 +
| <code>function DoGet(AHost:THTTPHost; ARequest:THTTPServerRequest; AResponse:THTTPServerResponse):Boolean; override;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
| <code>function DoContent(AHost:THTTPHost; ARequest:THTTPServerRequest; AResponse:THTTPServerResponse):Boolean; virtual;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>
 +
|-
 +
| <code>property Columns:LongWord read FColumns write FColumns;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
| <code>property OnContent:TWebStatusContent read FOnContent write FOnContent;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
<br />
  
 
=== Public variables ===
 
=== Public variables ===

Revision as of 02:35, 23 March 2017

Return to Unit Reference


Description


Ultibo Web Status unit

To be documented

Constants



Web status specific constants RtlMaxUnits*
RtlMaxUnits = 1024; See maxunits in system.inc


Type definitions



RTL initialize final record

TRtlInitFinalRec = record

Note: See TInitFinalRec in system.inc
InitProc:TProcedure;  
FinalProc:TProcedure;  

RTL initialize final table

PRtlInitFinalTable = ^TRtlInitFinalTable;

TRtlInitFinalTable = record

Note: See TInitFinalTable in system.inc
TableCount:LongWord;  
InitCount:LongWord;  
Procs:array[1..RtlMaxUnits] of TRtlInitFinalRec;  

Web status data

PWebStatusData = ^TWebStatusData;

TWebStatusData = record

Document:TWebStatusSub;  
Host:THTTPHost;  
Request:THTTPServerRequest;  
Response:THTTPServerResponse;  

Web status content

TWebStatusContent = function(AHost:THTTPHost; ARequest:THTTPServerRequest; AResponse:THTTPServerResponse):Boolean of Object;


Class definitions



Web status main

TWebStatusMain = class(THTTPDocument)

public
constructor Create;  
destructor Destroy; override;  
private
FTitle:String;  
FCaption:String;  
FSubPages:TStringList;  
 
function GetTitle:String;  
procedure SetTitle(const ATitle:String);  
function GetCaption:String;  
 
function NormalizedDateTimeToStr(const DateTime:TDateTime):String;  
protected
function MakeBold(const AName:String):String;  
function MakeLink(const AName,ALink:String):String;  
 
function AddBlank(AResponse:THTTPServerResponse):Boolean;  
function AddBlankEx(AResponse:THTTPServerResponse; AColumns:LongWord):Boolean;  
 
function AddItem(AResponse:THTTPServerResponse; const AName,AValue:String):Boolean;  
function AddItemEx(AResponse:THTTPServerResponse; const AName,AValue:String; AIndent:LongWord):Boolean;  
 
function AddItem3Column(AResponse:THTTPServerResponse; const AName,AValue1,AValue2:String):Boolean;  
function AddItem4Column(AResponse:THTTPServerResponse; const AName,AValue1,AValue2,AValue3:String):Boolean;  
function AddItem5Column(AResponse:THTTPServerResponse; const AName,AValue1,AValue2,AValue3,AValue4:String):Boolean;  
 
function AddBold(AResponse:THTTPServerResponse; const AName,AValue:String):Boolean;  
function AddBoldEx(AResponse:THTTPServerResponse; const AName,AValue:String; AIndent:LongWord):Boolean;  
 
function AddBold3Column(AResponse:THTTPServerResponse; const AName,AValue1,AValue2:String):Boolean;  
function AddBold4Column(AResponse:THTTPServerResponse; const AName,AValue1,AValue2,AValue3:String):Boolean;  
function AddBold5Column(AResponse:THTTPServerResponse; const AName,AValue1,AValue2,AValue3,AValue4:String):Boolean;  
 
function AddHeader(AResponse:THTTPServerResponse; const ATitle:String; ASub:TWebStatusSub):Boolean;  
function AddHeaderEx(AResponse:THTTPServerResponse; const ATitle:String; ASub:TWebStatusSub; AColumns:LongWord):Boolean;  
 
function AddFooter(AResponse:THTTPServerResponse):Boolean;  
function AddFooterEx(AResponse:THTTPServerResponse; AColumns:LongWord):Boolean;  
 
function AddContent(AResponse:THTTPServerResponse; const AContent:String):Boolean;  
 
function DoGet(AHost:THTTPHost; ARequest:THTTPServerRequest; AResponse:THTTPServerResponse):Boolean; override;  
public
property Title:String read GetTitle write SetTitle;  
property Caption:String read GetCaption;  
 
function RegisterSubPage(ASub:TWebStatusSub):Boolean;  
function DeregisterSubPage(ASub:TWebStatusSub):Boolean;  

Web status sub

TWebStatusSub = class(THTTPDocument)

public
constructor Create(AMain:TWebStatusMain);  
destructor Destroy; override;  
private
FMain:TWebStatusMain;  
 
function GetTitle:String;  
function GetCaption:String;  
 
function NormalizedDateTimeToStr(const DateTime:TDateTime):String;  
protected
FCaption:String;  
 
function MakeBold(const AName:String):String;  
function MakeLink(const AName,ALink:String):String;  
 
function AddBlank(AResponse:THTTPServerResponse):Boolean;  
function AddBlankEx(AResponse:THTTPServerResponse; AColumns:LongWord):Boolean;  
 
function AddItem(AResponse:THTTPServerResponse; const AName,AValue:String):Boolean;  
function AddItemEx(AResponse:THTTPServerResponse; const AName,AValue:String; AIndent:LongWord):Boolean;  
 
function AddItem3Column(AResponse:THTTPServerResponse; const AName,AValue1,AValue2:String):Boolean;  
function AddItem4Column(AResponse:THTTPServerResponse; const AName,AValue1,AValue2,AValue3:String):Boolean;  
function AddItem5Column(AResponse:THTTPServerResponse; const AName,AValue1,AValue2,AValue3,AValue4:String):Boolean;  
 
function AddBold(AResponse:THTTPServerResponse; const AName,AValue:String):Boolean;  
function AddBoldEx(AResponse:THTTPServerResponse; const AName,AValue:String; AIndent:LongWord):Boolean;  
 
function AddBold3Column(AResponse:THTTPServerResponse; const AName,AValue1,AValue2:String):Boolean;  
function AddBold4Column(AResponse:THTTPServerResponse; const AName,AValue1,AValue2,AValue3:String):Boolean;  
function AddBold5Column(AResponse:THTTPServerResponse; const AName,AValue1,AValue2,AValue3,AValue4:String):Boolean;  
 
function AddHeader(AResponse:THTTPServerResponse; const ATitle:String; ASub:TWebStatusSub):Boolean;  
function AddHeaderEx(AResponse:THTTPServerResponse; const ATitle:String; ASub:TWebStatusSub; AColumns:LongWord):Boolean;  
 
function AddFooter(AResponse:THTTPServerResponse):Boolean;  
function AddFooterEx(AResponse:THTTPServerResponse; AColumns:LongWord):Boolean;  
 
function AddContent(AResponse:THTTPServerResponse; const AContent:String):Boolean;  
 
function DoGet(AHost:THTTPHost;ARequest:THTTPServerRequest; AResponse:THTTPServerResponse):Boolean; override;  
public
property Main:TWebStatusMain read FMain;  
property Caption:String read GetCaption;  

Web status platform

TWebStatusPlatform = class(TWebStatusSub)

public
constructor Create(AMain:TWebStatusMain);  
private
 
protected
function DoGet(AHost:THTTPHost; ARequest:THTTPServerRequest; AResponse:THTTPServerResponse):Boolean; override;  
public
 

Web status memory

TWebStatusMemory = class(TWebStatusSub)

public
constructor Create(AMain:TWebStatusMain);  
private
 
protected
function DoGet(AHost:THTTPHost; ARequest:THTTPServerRequest; AResponse:THTTPServerResponse):Boolean; override;  
public
 

Web status heap

TWebStatusHeap = class(TWebStatusSub)

public
constructor Create(AMain:TWebStatusMain);  
private
function FlagsToFlagName(AFlags:LongWord):String;  
protected
function DoGet(AHost:THTTPHost; ARequest:THTTPServerRequest; AResponse:THTTPServerResponse):Boolean; override;  
public
 

Web status CPU

TWebStatusCPU = class(TWebStatusSub)

public
constructor Create(AMain:TWebStatusMain);  
private
 
protected
function DoGet(AHost:THTTPHost; ARequest:THTTPServerRequest; AResponse:THTTPServerResponse):Boolean; override;  
public
 

Web status FPU

TWebStatusFPU = class(TWebStatusSub)

public
constructor Create(AMain:TWebStatusMain);  
private
 
protected
function DoGet(AHost:THTTPHost; ARequest:THTTPServerRequest; AResponse:THTTPServerResponse):Boolean; override;  
public
 

Web status GPU

TWebStatusGPU = class(TWebStatusSub)

public
constructor Create(AMain:TWebStatusMain);  
private
 
protected
function DoGet(AHost:THTTPHost; ARequest:THTTPServerRequest; AResponse:THTTPServerResponse):Boolean; override;  
public
 

Web status RTL

TWebStatusRTL = class(TWebStatusSub)

public
constructor Create(AMain:TWebStatusMain);  
private
 
protected
function DoGet(AHost:THTTPHost; ARequest:THTTPServerRequest; AResponse:THTTPServerResponse):Boolean; override;  
public
 

Web status clock

TWebStatusClock = class(TWebStatusSub)

public
constructor Create(AMain:TWebStatusMain);  
private
 
protected
function DoGet(AHost:THTTPHost; ARequest:THTTPServerRequest; AResponse:THTTPServerResponse):Boolean; override;  
public
 

Web status locale

TWebStatusLocale = class(TWebStatusSub)

public
constructor Create(AMain:TWebStatusMain);  
private
 
protected
function DoGet(AHost:THTTPHost; ARequest:THTTPServerRequest; AResponse:THTTPServerResponse):Boolean; override;  
public
 

Web status threading

TWebStatusThreading = class(TWebStatusSub)

public
constructor Create(AMain:TWebStatusMain);  
private
 
protected
function DoGet(AHost:THTTPHost; ARequest:THTTPServerRequest; AResponse:THTTPServerResponse):Boolean; override;  
public
 

Web status thread list

TWebStatusThreadList = class(TWebStatusSub)

public
constructor Create(AMain:TWebStatusMain);  
private
 
protected
function DoGet(AHost:THTTPHost; ARequest:THTTPServerRequest; AResponse:THTTPServerResponse):Boolean; override;  
public
 

Web status scheduler

TWebStatusScheduler = class(TWebStatusSub)

public
constructor Create(AMain:TWebStatusMain);  
private
 
protected
function DoGet(AHost:THTTPHost; ARequest:THTTPServerRequest; AResponse:THTTPServerResponse):Boolean; override;  
public
 

Web status devices

TWebStatusDevices = class(TWebStatusSub)

public
constructor Create(AMain:TWebStatusMain);  
private
 
protected
function DoGet(AHost:THTTPHost; ARequest:THTTPServerRequest; AResponse:THTTPServerResponse):Boolean; override;  
public
 

Web status drivers

TWebStatusDrivers = class(TWebStatusSub)

public
constructor Create(AMain:TWebStatusMain);  
private
 
protected
function DoGet(AHost:THTTPHost; ARequest:THTTPServerRequest; AResponse:THTTPServerResponse):Boolean; override;  
public
 

Web status USB

TWebStatusUSB = class(TWebStatusSub)

public
constructor Create(AMain:TWebStatusMain);  
private
 
protected
function DoGet(AHost:THTTPHost; ARequest:THTTPServerRequest; AResponse:THTTPServerResponse):Boolean; override;  
public
 

Web status MMC

TWebStatusMMC = class(TWebStatusSub)

public
constructor Create(AMain:TWebStatusMain);  
private
 
protected
function DoGet(AHost:THTTPHost; ARequest:THTTPServerRequest; AResponse:THTTPServerResponse):Boolean; override;  
public
 

Web status network

TWebStatusNetwork = class(TWebStatusSub)

public
constructor Create(AMain:TWebStatusMain);  
private
 
protected
function DoGet(AHost:THTTPHost; ARequest:THTTPServerRequest; AResponse:THTTPServerResponse):Boolean; override;  
public
 

Web status storage

TWebStatusStorage = class(TWebStatusSub)

public
constructor Create(AMain:TWebStatusMain);  
private
 
protected
function DoGet(AHost:THTTPHost; ARequest:THTTPServerRequest; AResponse:THTTPServerResponse):Boolean; override;  
public
 

Web status filesystem

TWebStatusFilesystem = class(TWebStatusSub)

public
constructor Create(AMain:TWebStatusMain);  
private
 
protected
function DoGet(AHost:THTTPHost; ARequest:THTTPServerRequest; AResponse:THTTPServerResponse):Boolean; override;  
public
 

Web status cache

TWebStatusCache = class(TWebStatusSub)

public
constructor Create(AMain:TWebStatusMain);  
private
 
protected
function DoGet(AHost:THTTPHost; ARequest:THTTPServerRequest; AResponse:THTTPServerResponse):Boolean; override;  
public
 

Web status keyboard

TWebStatusKeyboard = class(TWebStatusSub)

public
constructor Create(AMain:TWebStatusMain);  
private
 
protected
function DoGet(AHost:THTTPHost; ARequest:THTTPServerRequest; AResponse:THTTPServerResponse):Boolean; override;  
public
 

Web status mouse

TWebStatusMouse = class(TWebStatusSub)

public
constructor Create(AMain:TWebStatusMain);  
private
 
protected
function DoGet(AHost:THTTPHost; ARequest:THTTPServerRequest; AResponse:THTTPServerResponse):Boolean; override;  
public
 

Web status framebuffer

TWebStatusFramebuffer = class(TWebStatusSub)

public
constructor Create(AMain:TWebStatusMain);  
private
 
protected
function DoGet(AHost:THTTPHost; ARequest:THTTPServerRequest; AResponse:THTTPServerResponse):Boolean; override;  
public
 

Web status environment

TWebStatusEnvironment = class(TWebStatusSub)

public
constructor Create(AMain:TWebStatusMain);  
private
 
protected
function DoGet(AHost:THTTPHost; ARequest:THTTPServerRequest; AResponse:THTTPServerResponse):Boolean; override;  
public
 

Web status page tables

TWebStatusPageTables = class(TWebStatusSub)

public
constructor Create(AMain:TWebStatusMain);  
private
function FlagsToFlagNames(AFlags:LongWord):TStringList;  
protected
function DoGet(AHost:THTTPHost; ARequest:THTTPServerRequest; AResponse:THTTPServerResponse):Boolean; override;  
public
 

Web status vector tables

TWebStatusVectorTables = class(TWebStatusSub)

public
constructor Create(AMain:TWebStatusMain);  
private
 
protected
function DoGet(AHost:THTTPHost; ARequest:THTTPServerRequest; AResponse:THTTPServerResponse):Boolean; override;  
public
 

Web status IRQ/FIQ/SWI

TWebStatusIRQFIQSWI = class(TWebStatusSub)

public
constructor Create(AMain:TWebStatusMain);  
private
 
protected
function DoGet(AHost:THTTPHost; ARequest:THTTPServerRequest; AResponse:THTTPServerResponse):Boolean; override;  
public
 

Web status configuration

TWebStatusConfiguration = class(TWebStatusSub)

public
constructor Create(AMain:TWebStatusMain);  
private
 
protected
function DoGet(AHost:THTTPHost; ARequest:THTTPServerRequest; AResponse:THTTPServerResponse):Boolean; override;  
public
 

Web status debug

TWebStatusDebug = class(TWebStatusSub)

public
constructor Create(AMain:TWebStatusMain);  
private
 
protected
function DoGet(AHost:THTTPHost; ARequest:THTTPServerRequest; AResponse:THTTPServerResponse):Boolean; override;  
public
 

Web status custom

TWebStatusCustom = class(TWebStatusSub)

public
constructor Create(const AName,APath:String; AColumns:LongWord);  
private
FColumns:LongWord;  
protected
function DoGet(AHost:THTTPHost; ARequest:THTTPServerRequest; AResponse:THTTPServerResponse):Boolean; override;  
 
function DoContent(AHost:THTTPHost; ARequest:THTTPServerRequest; AResponse:THTTPServerResponse):Boolean; virtual;  
public
property Columns:LongWord read FColumns write FColumns;  
 
property OnContent:TWebStatusContent read FOnContent write FOnContent;  


Public variables


None defined

Function declarations



Web status functions

function WebStatusRegister(AListener:THTTPListener; const AHost,AURL:String; ARedirect:Boolean):Boolean;
Description: To be documented
Note None documented


function WebStatusDeregister(AListener:THTTPListener; const AHost:String):Boolean;
Description: To be documented
Note None documented


Web status helper functions

function WebStatusDeviceEnumerate(Device:PDevice; Data:Pointer):LongWord;
Description: To be documented
Note None documented


function WebStatusDriverEnumerate(Driver:PDriver; Data:Pointer):LongWord;
Description: To be documented
Note None documented


function WebStatusUSBDeviceEnumerate(Device:PUSBDevice; Data:Pointer):LongWord;
Description: To be documented
Note None documented


function WebStatusUSBHostEnumerate(Host:PUSBHost; Data:Pointer):LongWord;
Description: To be documented
Note None documented


function WebStatusUSBDriverEnumerate(Driver:PUSBDriver; Data:Pointer):LongWord;
Description: To be documented
Note None documented


function WebStatusMMCEnumerate(MMC:PMMCDevice; Data:Pointer):LongWord;
Description: To be documented
Note None documented


function WebStatusSDHCIEnumerate(SDHCI:PSDHCIHost; Data:Pointer):LongWord;
Description: To be documented
Note None documented


function WebStatusNetworkEnumerate(Network:PNetworkDevice; Data:Pointer):LongWord;
Description: To be documented
Note None documented


function WebStatusStorageEnumerate(Storage:PStorageDevice; Data:Pointer):LongWord;
Description: To be documented
Note None documented


function WebStatusMouseEnumerate(Mouse:PMouseDevice; Data:Pointer):LongWord;
Description: To be documented
Note None documented


function WebStatusKeyboardEnumerate(Keyboard:PKeyboardDevice; Data:Pointer):LongWord;
Description: To be documented
Note None documented


Return to Unit Reference