Difference between revisions of "TFileSystem"

From Ultibo.org
Jump to: navigation, search
Line 885: Line 885:
 
|  
 
|  
 
|-
 
|-
| <code>procedure FileClose(Handle:Integer); virtual;</code>
+
| <code>procedure FileClose(Handle:THandle); virtual;</code>
 
| &nbsp;
 
| &nbsp;
 
|-
 
|-
Line 897: Line 897:
 
| &nbsp;
 
| &nbsp;
 
|-
 
|-
| <code>function FileFlush(Handle:Integer):Boolean; virtual;</code>
+
| <code>function FileFlush(Handle:THandle):Boolean; virtual;</code>
 
| &nbsp;
 
| &nbsp;
 
|-
 
|-
| <code>function FileTruncate(Handle:Integer):Boolean; virtual;</code>
+
| <code>function FileTruncate(Handle:THandle):Boolean; virtual;</code>
 
| &nbsp;
 
| &nbsp;
 
|-
 
|-
Line 916: Line 916:
 
| &nbsp;
 
| &nbsp;
 
|-
 
|-
| <code>function FileGetDate(Handle:Integer):Integer; virtual;</code>
+
| <code>function FileGetDate(Handle:THandle):Integer; virtual;</code>
 
| &nbsp;
 
| &nbsp;
 
|-
 
|-
Line 928: Line 928:
 
| &nbsp;
 
| &nbsp;
 
|-
 
|-
| <code>function FileSetDate(Handle:Integer; Age:Integer):Integer; virtual;</code>
+
| <code>function FileSetDate(Handle:THandle; Age:Integer):Integer; virtual;</code>
 
| &nbsp;
 
| &nbsp;
 
|-
 
|-
Line 1,051: Line 1,051:
 
| &nbsp;
 
| &nbsp;
 
|-
 
|-
| <code>function SetFileShortNameEx(Handle:Integer; const ShortName:String):Boolean; virtual;</code>
+
| <code>function SetFileShortNameEx(Handle:THandle; const ShortName:String):Boolean; virtual;</code>
 
| &nbsp;
 
| &nbsp;
 
|-
 
|-
Line 1,088: Line 1,088:
 
|colspan="2"|&nbsp;
 
|colspan="2"|&nbsp;
 
|-
 
|-
| <code>function FileGetAttrEx(Handle:Integer):Integer; virtual;</code>
+
| <code>function FileGetAttrEx(Handle:THandle):Integer; virtual;</code>
 
| &nbsp;
 
| &nbsp;
 
|-
 
|-
 
|colspan="2"|&nbsp;
 
|colspan="2"|&nbsp;
 
|-
 
|-
| <code>function FileGetDateEx(Handle:Integer):TFileTime; virtual;</code>
+
| <code>function FileGetDateEx(Handle:THandle):TFileTime; virtual;</code>
 
| &nbsp;
 
| &nbsp;
 
|-
 
|-
| <code>function FileSetDateEx(Handle:Integer; Age:TFileTime):Integer; virtual;</code>
+
| <code>function FileSetDateEx(Handle:THandle; Age:TFileTime):Integer; virtual;</code>
 
| &nbsp;
 
| &nbsp;
 
|-
 
|-
| <code>function GetFileTime(Handle:Integer; CreateTime,AccessTime,ModifyTime:PFileTime):Boolean; virtual;</code>
+
| <code>function GetFileTime(Handle:THandle; CreateTime,AccessTime,ModifyTime:PFileTime):Boolean; virtual;</code>
 
| &nbsp;
 
| &nbsp;
 
|-
 
|-
| <code>function SetFileTime(Handle:Integer; CreateTime,AccessTime,ModifyTime:PFileTime):Boolean; virtual;</code>
+
| <code>function SetFileTime(Handle:THandle; CreateTime,AccessTime,ModifyTime:PFileTime):Boolean; virtual;</code>
 
| &nbsp;
 
| &nbsp;
 
|-
 
|-
Line 1,119: Line 1,119:
  
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">constructor TFileSystem.Create(ADriver:TFileSysDriver; AVolume:TDiskVolume; ADrive:TDiskDrive);</pre>
+
<pre style="border: 0; padding-bottom:0px;">constructor TFileSystem.Create(ADriver:TFileSysDriver; AVolume:TDiskVolume; ADrive:TDiskDrive); virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 1,131: Line 1,131:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">destructor TFileSystem.Destroy;</pre>
+
<pre style="border: 0; padding-bottom:0px;">destructor TFileSystem.Destroy; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 1,143: Line 1,143:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.AcquireLock:Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.AcquireLock:Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 1,155: Line 1,155:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.ReleaseLock:Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.ReleaseLock:Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 1,167: Line 1,167:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.SectorLock:Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.SectorLock:Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 1,179: Line 1,179:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.SectorUnlock:Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.SectorUnlock:Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 1,191: Line 1,191:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">procedure TFileSystem.SetDrive(ADrive:TDiskDrive);</pre>
+
<pre style="border: 0; padding-bottom:0px;">procedure TFileSystem.SetDrive(ADrive:TDiskDrive); virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 1,203: Line 1,203:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">procedure TFileSystem.SetVolume(AVolume:TDiskVolume);</pre>
+
<pre style="border: 0; padding-bottom:0px;">procedure TFileSystem.SetVolume(AVolume:TDiskVolume); virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 1,215: Line 1,215:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetPathChar:String;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetPathChar:String; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 1,227: Line 1,227:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetNameChar:String;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetNameChar:String; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 1,239: Line 1,239:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetFileChar:String;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetFileChar:String; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 1,251: Line 1,251:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetRootChar:String;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetRootChar:String; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 1,263: Line 1,263:
 
<br />  
 
<br />  
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetRootName:String;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetRootName:String; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 1,275: Line 1,275:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetRootPath:String;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetRootPath:String; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 1,287: Line 1,287:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetSystemName:String;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetSystemName:String; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 1,299: Line 1,299:
 
<br />  
 
<br />  
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetVolumeName:String;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetVolumeName:String; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 1,311: Line 1,311:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetVolumeGUID:String;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetVolumeGUID:String; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 1,323: Line 1,323:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.LoadPathChar:String;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.LoadPathChar:String; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Load the Path separator character</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Load the Path separator character</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;">
Line 1,335: Line 1,335:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.LoadNameChar:String;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.LoadNameChar:String; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Load the Name separator character</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Load the Name separator character</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;">
Line 1,347: Line 1,347:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.LoadFileChar:String;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.LoadFileChar:String; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Load the File separator character</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Load the File separator character</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;">
Line 1,359: Line 1,359:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.LoadRootChar:String;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.LoadRootChar:String; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Load the Root specifier character (eg C:)</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Load the Root specifier character (eg C:)</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;">
Line 1,371: Line 1,371:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.LoadRootName:String;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.LoadRootName:String; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Load Root Name from Drive or Volume (eg C:\ or \\?\Volume1)</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Load Root Name from Drive or Volume (eg C:\ or \\?\Volume1)</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;">
Line 1,383: Line 1,383:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.LoadRootPath:String;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.LoadRootPath:String; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Load Root Path from Volume or Drive (eg \\.\Harddisk0\Partition1 or C:\)</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Load Root Path from Volume or Drive (eg \\.\Harddisk0\Partition1 or C:\)</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;">
Line 1,395: Line 1,395:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.LoadMaxFile:Integer;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.LoadMaxFile:Integer; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Load the maximum File name length</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Load the maximum File name length</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;">
Line 1,407: Line 1,407:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.LoadMaxPath:Integer;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.LoadMaxPath:Integer; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Load the maximum Path name length</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Load the maximum Path name length</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;">
Line 1,419: Line 1,419:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.LoadMaxAltFile:Integer;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.LoadMaxAltFile:Integer; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Load the maximum Alt File name length</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Load the maximum Alt File name length</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;">
Line 1,431: Line 1,431:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.LoadMaxAltPath:Integer;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.LoadMaxAltPath:Integer; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Load the maximum Alt Path name length</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Load the maximum Alt Path name length</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;">
Line 1,443: Line 1,443:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.LoadAttributes:LongWord;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.LoadAttributes:LongWord; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Load the File System (Volume) Attributes</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Load the File System (Volume) Attributes</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;">
Line 1,455: Line 1,455:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.LoadMaxAttributes:LongWord;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.LoadMaxAttributes:LongWord; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Load the Maximum File Attributes (FileSetAttr)</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Load the Maximum File Attributes (FileSetAttr)</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;">
Line 1,467: Line 1,467:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.LoadMaskAttributes:LongWord;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.LoadMaskAttributes:LongWord; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Load the File Attributes Mask (FileGetAttr/FindFirstEx/FindNextEx)</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Load the File Attributes Mask (FileGetAttr/FindFirstEx/FindNextEx)</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;">
Line 1,479: Line 1,479:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.LoadMountPointTag:LongWord;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.LoadMountPointTag:LongWord; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 1,491: Line 1,491:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.LoadSymbolicLinkTag:LongWord;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.LoadSymbolicLinkTag:LongWord; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 1,503: Line 1,503:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.LoadMinFileTime:TFileTime;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.LoadMinFileTime:TFileTime; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Load the Minimum File Time value (WriteTime/CreateTime/AccessTime)</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Load the Minimum File Time value (WriteTime/CreateTime/AccessTime)</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;">
Line 1,515: Line 1,515:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.LoadSystemName:String;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.LoadSystemName:String; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 1,527: Line 1,527:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.LoadVolumeName:String;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.LoadVolumeName:String; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 1,539: Line 1,539:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.LoadVolumeGUID:String;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.LoadVolumeGUID:String; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 1,551: Line 1,551:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.LoadVolumeSerial:LongWord;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.LoadVolumeSerial:LongWord; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 1,563: Line 1,563:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.LoadFileSysType:TFileSysType;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.LoadFileSysType:TFileSysType; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 1,575: Line 1,575:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.LoadSectorSize:Word;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.LoadSectorSize:Word; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Load Sector Size from Volume</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Load Sector Size from Volume</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;">
Line 1,587: Line 1,587:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.LoadStartSector:Int64;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.LoadStartSector:Int64; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Load Start Sector from Volume</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Load Start Sector from Volume</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;">
Line 1,599: Line 1,599:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.LoadSectorCount:LongWord;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.LoadSectorCount:LongWord; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Load Sector Count from Volume</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Load Sector Count from Volume</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;">
Line 1,611: Line 1,611:
 
<br />  
 
<br />  
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetCurrent:TDiskEntry;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetCurrent:TDiskEntry; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 1,623: Line 1,623:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.SetCurrent(ACurrent:TDiskEntry):Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.SetCurrent(ACurrent:TDiskEntry):Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 1,635: Line 1,635:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.FillSectors(ASector,ACount:LongWord; AValue:Byte):Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.FillSectors(ASector,ACount:LongWord; AValue:Byte):Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Fill specified number of sectors with the supplied value</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Fill specified number of sectors with the supplied value</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;">
Line 1,647: Line 1,647:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.ReadSectors(ASector,ACount:LongWord; var ABuffer):Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.ReadSectors(ASector,ACount:LongWord; var ABuffer):Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Read Sectors from the Volume using Cache</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Read Sectors from the Volume using Cache</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;">
Line 1,660: Line 1,660:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.WriteSectors(ASector,ACount:LongWord; const ABuffer):Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.WriteSectors(ASector,ACount:LongWord; const ABuffer):Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Write Sectors to the Volume using Cache</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Write Sectors to the Volume using Cache</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;">
Line 1,673: Line 1,673:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.ReadEntry(AParent,AEntry:TDiskEntry; var ABuffer; const AStart:Int64; ACount:LongWord; var AOffset,AValue:LongWord):Integer;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.ReadEntry(AParent,AEntry:TDiskEntry; var ABuffer; const AStart:Int64; ACount:LongWord; var AOffset,AValue:LongWord):Integer; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 1,686: Line 1,686:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.WriteEntry(AParent,AEntry:TDiskEntry; const ABuffer; const AStart:Int64; ACount:LongWord; var AOffset,AValue:LongWord):Integer;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.WriteEntry(AParent,AEntry:TDiskEntry; const ABuffer; const AStart:Int64; ACount:LongWord; var AOffset,AValue:LongWord):Integer; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 1,699: Line 1,699:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.LoadTables:Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.LoadTables:Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Load all Disk Tables</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Load all Disk Tables</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;">
Line 1,711: Line 1,711:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.LoadBlocks:Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.LoadBlocks:Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Load all Disk Blocks</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Load all Disk Blocks</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;">
Line 1,723: Line 1,723:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.LoadEntries(AParent:TDiskEntry):Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.LoadEntries(AParent:TDiskEntry):Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 1,736: Line 1,736:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.LoadCatalogs:Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.LoadCatalogs:Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 1,748: Line 1,748:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.LoadTable(ATableNo:LongWord):Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.LoadTable(ATableNo:LongWord):Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 1,761: Line 1,761:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.LoadBlock(ABlockNo:LongWord):Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.LoadBlock(ABlockNo:LongWord):Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 1,774: Line 1,774:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.UnloadEntries(AParent:TDiskEntry):Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.UnloadEntries(AParent:TDiskEntry):Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 1,787: Line 1,787:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.AddEntry(AParent:TDiskEntry; const AName:String; AAttributes:LongWord; AReference:Boolean):TDiskEntry;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.AddEntry(AParent:TDiskEntry; const AName:String; AAttributes:LongWord; AReference:Boolean):TDiskEntry; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 1,803: Line 1,803:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.AddEntryEx(AParent:TDiskEntry; const AName,AAltName:String; AAttributes:LongWord; AReference:Boolean):TDiskEntry;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.AddEntryEx(AParent:TDiskEntry; const AName,AAltName:String; AAttributes:LongWord; AReference:Boolean):TDiskEntry; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 1,822: Line 1,822:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.RemoveEntry(AParent,AEntry:TDiskEntry):Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.RemoveEntry(AParent,AEntry:TDiskEntry):Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 1,836: Line 1,836:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.RenameEntry(AParent,AEntry:TDiskEntry; const AName:String):Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.RenameEntry(AParent,AEntry:TDiskEntry; const AName:String):Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 1,849: Line 1,849:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.RenameEntryEx(AParent,AEntry:TDiskEntry; const AAltName:String):Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.RenameEntryEx(AParent,AEntry:TDiskEntry; const AAltName:String):Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 1,862: Line 1,862:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.MoveEntry(ASource,ADest,AEntry:TDiskEntry):Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.MoveEntry(ASource,ADest,AEntry:TDiskEntry):Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 1,875: Line 1,875:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.AddCatalog(AEntry:TDiskEntry; AMediaType:TMediaType; AFloppyType:TFloppyType; AAttributes:LongWord; ASectorSize:Word; const ASectorCount:Int64):TDiskCatalog;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.AddCatalog(AEntry:TDiskEntry; AMediaType:TMediaType; AFloppyType:TFloppyType; AAttributes:LongWord; ASectorSize:Word; const ASectorCount:Int64):TDiskCatalog; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 1,887: Line 1,887:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.RemoveCatalog(ACatalog:TDiskCatalog):Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.RemoveCatalog(ACatalog:TDiskCatalog):Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 1,899: Line 1,899:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.CheckCatalog(ACatalog:TDiskCatalog; ALock:Boolean; AState:LongWord):Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.CheckCatalog(ACatalog:TDiskCatalog; ALock:Boolean; AState:LongWord):Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 1,911: Line 1,911:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetCatalogByNo(ACatalogNo:LongWord; ALock:Boolean; AState:LongWord):TDiskCatalog;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetCatalogByNo(ACatalogNo:LongWord; ALock:Boolean; AState:LongWord):TDiskCatalog; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 1,923: Line 1,923:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetCatalogByName(const AName:String; ALock:Boolean; AState:LongWord):TDiskCatalog;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetCatalogByName(const AName:String; ALock:Boolean; AState:LongWord):TDiskCatalog; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 1,935: Line 1,935:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetCatalogByNext(APrevious:TDiskCatalog; ALock,AUnlock:Boolean; AState:LongWord):TDiskCatalog;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetCatalogByNext(APrevious:TDiskCatalog; ALock,AUnlock:Boolean; AState:LongWord):TDiskCatalog; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 1,947: Line 1,947:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetNextCatalogNo:LongWord;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetNextCatalogNo:LongWord; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 1,959: Line 1,959:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetMaxCatalogNo:LongWord;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetMaxCatalogNo:LongWord; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 1,971: Line 1,971:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.AddHardlink(AEntry,AParent:TDiskEntry; const AName:String; AReference:Boolean):TDiskEntry;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.AddHardlink(AEntry,AParent:TDiskEntry; const AName:String; AReference:Boolean):TDiskEntry; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 1,987: Line 1,987:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.RemoveHardlink(AParent,AEntry:TDiskEntry):Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.RemoveHardlink(AParent,AEntry:TDiskEntry):Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 2,000: Line 2,000:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.AddMountPoint(AEntry:TDiskEntry; const ATarget:String):Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.AddMountPoint(AEntry:TDiskEntry; const ATarget:String):Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 2,013: Line 2,013:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.RemoveMountPoint(AEntry:TDiskEntry):Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.RemoveMountPoint(AEntry:TDiskEntry):Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 2,026: Line 2,026:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.AddJunctionPoint(AEntry:TDiskEntry; const ATarget:String):Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.AddJunctionPoint(AEntry:TDiskEntry; const ATarget:String):Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 2,039: Line 2,039:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.RemoveJunctionPoint(AEntry:TDiskEntry):Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.RemoveJunctionPoint(AEntry:TDiskEntry):Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 2,052: Line 2,052:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.AddSymbolicLink(AParent:TDiskEntry; const AName,ATarget:String; AFolder,AReference:Boolean):TDiskEntry;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.AddSymbolicLink(AParent:TDiskEntry; const AName,ATarget:String; AFolder,AReference:Boolean):TDiskEntry; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 2,068: Line 2,068:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.AddSymbolicLinkEx(AParent:TDiskEntry; const AName,AAltName,ATarget:String; AFolder,AReference:Boolean):TDiskEntry;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.AddSymbolicLinkEx(AParent:TDiskEntry; const AName,AAltName,ATarget:String; AFolder,AReference:Boolean):TDiskEntry; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 2,084: Line 2,084:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.RemoveSymbolicLink(AParent,AEntry:TDiskEntry):Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.RemoveSymbolicLink(AParent,AEntry:TDiskEntry):Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 2,097: Line 2,097:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.SetTable(ATable:TDiskTable):Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.SetTable(ATable:TDiskTable):Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 2,109: Line 2,109:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.SetBlock(ABlock:TDiskBlock):Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.SetBlock(ABlock:TDiskBlock):Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 2,121: Line 2,121:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.SetEntry(AParent,AEntry:TDiskEntry):Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.SetEntry(AParent,AEntry:TDiskEntry):Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 2,134: Line 2,134:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.SetCatalog(ACatalog:TDiskCatalog):Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.SetCatalog(ACatalog:TDiskCatalog):Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 2,146: Line 2,146:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.SetReparse(AParent,AEntry:TDiskEntry; AReparse:TDiskReparse):Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.SetReparse(AParent,AEntry:TDiskEntry; AReparse:TDiskReparse):Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 2,158: Line 2,158:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.SetSecurity(AParent,AEntry:TDiskEntry; ASecurity:TDiskSecurity):Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.SetSecurity(AParent,AEntry:TDiskEntry; ASecurity:TDiskSecurity):Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 2,170: Line 2,170:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.SizeEntry(AParent,AEntry:TDiskEntry; const ASize:Int64):Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.SizeEntry(AParent,AEntry:TDiskEntry; const ASize:Int64):Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 2,183: Line 2,183:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetTable(ATableNo:LongWord):TDiskTable;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetTable(ATableNo:LongWord):TDiskTable; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 2,196: Line 2,196:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetTableEx(ATableNo:LongWord; AWrite:Boolean):TDiskTable;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetTableEx(ATableNo:LongWord; AWrite:Boolean):TDiskTable; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 2,212: Line 2,212:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetBlock(ABlockNo:LongWord):TDiskBlock;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetBlock(ABlockNo:LongWord):TDiskBlock; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 2,225: Line 2,225:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetBlockEx(ABlockNo:LongWord; AWrite:Boolean):TDiskBlock;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetBlockEx(ABlockNo:LongWord; AWrite:Boolean):TDiskBlock; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 2,241: Line 2,241:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetEntry(AParent:TDiskEntry; const AName:String; AAttributes:LongWord):TDiskEntry;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetEntry(AParent:TDiskEntry; const AName:String; AAttributes:LongWord):TDiskEntry; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 2,256: Line 2,256:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetEntryEx(AParent:TDiskEntry; const AName:String; AAttributes:LongWord; AAdd,ARemove,AWrite:Boolean):TDiskEntry; </pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetEntryEx(AParent:TDiskEntry; const AName:String; AAttributes:LongWord; AAdd,ARemove,AWrite:Boolean):TDiskEntry; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 2,280: Line 2,280:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetCatalog(ACatalogNo:LongWord):TDiskCatalog;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetCatalog(ACatalogNo:LongWord):TDiskCatalog; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 2,292: Line 2,292:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetCatalogEx(ACatalogNo:LongWord; AWrite:Boolean):TDiskCatalog;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetCatalogEx(ACatalogNo:LongWord; AWrite:Boolean):TDiskCatalog; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 2,304: Line 2,304:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetReparse(AEntry:TDiskEntry):TDiskReparse;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetReparse(AEntry:TDiskEntry):TDiskReparse; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 2,316: Line 2,316:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetSecurity(AEntry:TDiskEntry):TDiskSecurity;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetSecurity(AEntry:TDiskEntry):TDiskSecurity; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 2,328: Line 2,328:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.MatchEntry(AParent,APrevious:TDiskEntry; const AName:String; AAttributes:LongWord; AAny:Boolean):TDiskEntry;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.MatchEntry(AParent,APrevious:TDiskEntry; const AName:String; AAttributes:LongWord; AAny:Boolean):TDiskEntry; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 2,343: Line 2,343:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.MatchEntryEx(AParent,APrevious:TDiskEntry; const AName:String; AAttributes:LongWord; AAny,AAdd,ARemove,AWrite:Boolean):TDiskEntry;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.MatchEntryEx(AParent,APrevious:TDiskEntry; const AName:String; AAttributes:LongWord; AAny,AAdd,ARemove,AWrite:Boolean):TDiskEntry; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 2,367: Line 2,367:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetEntryPath(AEntry:TDiskEntry; AAltName:Boolean):String;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetEntryPath(AEntry:TDiskEntry; AAltName:Boolean):String; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Get the Full Path of an Entry (Not including Entry itself)</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Get the Full Path of an Entry (Not including Entry itself)</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;">
Line 2,379: Line 2,379:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetEntryName(AEntry:TDiskEntry; AAltName:Boolean):String;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetEntryName(AEntry:TDiskEntry; AAltName:Boolean):String; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Get the Full Name of an Entry (Including Entry itself)</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Get the Full Name of an Entry (Including Entry itself)</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;">
Line 2,391: Line 2,391:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.SplitPath(const APath:String; var ARelative:Boolean; AFolders:TStrings; var AName:String):Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.SplitPath(const APath:String; var ARelative:Boolean; AFolders:TStrings; var AName:String):Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Split a Path into the component parts</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Split a Path into the component parts</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;">
Line 2,403: Line 2,403:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.SplitName(const AName:String; var AFile,AStream:String):Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.SplitName(const AName:String; var AFile,AStream:String):Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Split a Name into the component parts (File and Stream)</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Split a Name into the component parts (File and Stream)</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;">
Line 2,418: Line 2,418:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.SplitFile(const AFile:String; var AName,AExt:String):Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.SplitFile(const AFile:String; var AName,AExt:String):Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Split a File into the component parts (Name and Ext)</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Split a File into the component parts (Name and Ext)</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;">
Line 2,430: Line 2,430:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.SplitStream(const AStream:String; var AName,AType:String):Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.SplitStream(const AStream:String; var AName,AType:String):Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Split a Stream into the component parts (Name and Type)</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Split a Stream into the component parts (Name and Type)</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;">
Line 2,442: Line 2,442:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.BuildPath(ARelative:Boolean; AFolders:TLinkedStringList; const AName:String):String;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.BuildPath(ARelative:Boolean; AFolders:TLinkedStringList; const AName:String):String; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Build Path from the component parts</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Build Path from the component parts</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;">
Line 2,454: Line 2,454:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.BuildName(const AFile,AStream:String):String;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.BuildName(const AFile,AStream:String):String; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Build a Name from the component parts (File and Stream)</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Build a Name from the component parts (File and Stream)</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;">
Line 2,466: Line 2,466:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.BuildFile(const AName,AExt:String):String;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.BuildFile(const AName,AExt:String):String; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Build a File from the component parts (Name and Ext)</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Build a File from the component parts (Name and Ext)</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;">
Line 2,478: Line 2,478:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.BuildStream(const AName,AType:String):String;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.BuildStream(const AName,AType:String):String; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Build a Stream from the component parts (Name and Type)</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Build a Stream from the component parts (Name and Type)</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;">
Line 2,490: Line 2,490:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.CheckName(const AName:String):Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.CheckName(const AName:String):Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Performs Name validation based on File System rules</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Performs Name validation based on File System rules</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;">
Line 2,502: Line 2,502:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.CompareName(const AName,AMatch:String; AWildcard:Boolean):Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.CompareName(const AName,AMatch:String; AWildcard:Boolean):Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Perform Name matching based on File System rules for Case-sensitivity etc</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Perform Name matching based on File System rules for Case-sensitivity etc</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;">
Line 2,514: Line 2,514:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.CheckAltName(const AAltName:String):Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.CheckAltName(const AAltName:String):Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Performs Name validation based on File System rules</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Performs Name validation based on File System rules</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;">
Line 2,526: Line 2,526:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.CompareAltName(const AAltName,AMatch:String; AWildcard:Boolean):Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.CompareAltName(const AAltName,AMatch:String; AWildcard:Boolean):Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 2,538: Line 2,538:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.CheckLinkName(const AName:String):Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.CheckLinkName(const AName:String):Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 2,550: Line 2,550:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetSecurityFromDescriptor(ADescriptor:Pointer):TDiskSecurity;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetSecurityFromDescriptor(ADescriptor:Pointer):TDiskSecurity; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 2,562: Line 2,562:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetDescriptorFromSecurity(ASecurity:TDiskSecurity; ADescriptor:Pointer; var ASize:LongWord):Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetDescriptorFromSecurity(ASecurity:TDiskSecurity; ADescriptor:Pointer; var ASize:LongWord):Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 2,574: Line 2,574:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.ReaderLock:Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.ReaderLock:Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 2,586: Line 2,586:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.ReaderUnlock:Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.ReaderUnlock:Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 2,598: Line 2,598:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.ReaderConvert:Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.ReaderConvert:Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Convert a Reader lock to a Writer lock</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Convert a Reader lock to a Writer lock</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;">
Line 2,610: Line 2,610:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.WriterLock:Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.WriterLock:Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 2,622: Line 2,622:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.WriterUnlock:Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.WriterUnlock:Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 2,634: Line 2,634:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.WriterConvert:Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.WriterConvert:Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 2,646: Line 2,646:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.FileSystemInit:Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.FileSystemInit:Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 2,658: Line 2,658:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.MountFileSystem:Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.MountFileSystem:Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 2,669: Line 2,669:
 
</div></div>
 
</div></div>
 
<br /><div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<br /><div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.DismountFileSystem:Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.DismountFileSystem:Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 2,681: Line 2,681:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.InitializeFileSystem(ASectorsPerCluster:LongWord; AFileSysType:TFileSysType):Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.InitializeFileSystem(ASectorsPerCluster:LongWord; AFileSysType:TFileSysType):Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 2,693: Line 2,693:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.CreateCatalog(const AName:String; AMediaType:TMediaType; AFloppyType:TFloppyType; AAttributes:LongWord; ASectorSize:Word; const ASectorCount:Int64):LongWord;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.CreateCatalog(const AName:String; AMediaType:TMediaType; AFloppyType:TFloppyType; AAttributes:LongWord; ASectorSize:Word; const ASectorCount:Int64):LongWord; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 2,705: Line 2,705:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.DeleteCatalog(ACatalogNo:LongWord):Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.DeleteCatalog(ACatalogNo:LongWord):Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 2,717: Line 2,717:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.FindFirstCatalog(var ASearchRec:TCatalogSearchRec):Integer;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.FindFirstCatalog(var ASearchRec:TCatalogSearchRec):Integer; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 2,729: Line 2,729:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.FindNextCatalog(var ASearchRec:TCatalogSearchRec):Integer;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.FindNextCatalog(var ASearchRec:TCatalogSearchRec):Integer; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 2,741: Line 2,741:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">procedure TFileSystem.FindCatalogClose(var ASearchRec:TCatalogSearchRec);</pre>
+
<pre style="border: 0; padding-bottom:0px;">procedure TFileSystem.FindCatalogClose(var ASearchRec:TCatalogSearchRec); virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Close an open find Handle</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Close an open find Handle</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;">
Line 2,753: Line 2,753:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetDriveLabel:String;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetDriveLabel:String; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 2,765: Line 2,765:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.SetDriveLabel(const ALabel:String):Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.SetDriveLabel(const ALabel:String):Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 2,777: Line 2,777:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetDriveSerial:LongWord;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetDriveSerial:LongWord; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 2,789: Line 2,789:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.SetDriveSerial(ASerial:LongWord):Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.SetDriveSerial(ASerial:LongWord):Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 2,801: Line 2,801:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetDriveFreeSpace:LongWord;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetDriveFreeSpace:LongWord; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Return the Free space on Drive up to 2GB</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Return the Free space on Drive up to 2GB</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;">
Line 2,813: Line 2,813:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetDriveFreeSpaceEx:Int64;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetDriveFreeSpaceEx:Int64; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 2,825: Line 2,825:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetDriveTotalSpace:LongWord;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetDriveTotalSpace:LongWord; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Return the Total space on Drive up to 2GB</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Return the Total space on Drive up to 2GB</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;">
Line 2,837: Line 2,837:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetDriveTotalSpaceEx:Int64;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetDriveTotalSpaceEx:Int64; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Return the Total space on Drive up to 4TB</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Return the Total space on Drive up to 4TB</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;">
Line 2,849: Line 2,849:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetDriveInformation(var AClusterSize:LongWord; var ATotalClusterCount,AFreeClusterCount:Int64):Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetDriveInformation(var AClusterSize:LongWord; var ATotalClusterCount,AFreeClusterCount:Int64):Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 2,861: Line 2,861:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.FileOpen(const FileName:String; Mode:Integer):THandle;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.FileOpen(const FileName:String; Mode:Integer):THandle; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Open existing entry and return Handle</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Open existing entry and return Handle</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;">
Line 2,874: Line 2,874:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.FileCreate(const FileName:String; Mode:Integer = fmOpenReadWrite or fmShareExclusive):THandle;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.FileCreate(const FileName:String; Mode:Integer = fmOpenReadWrite or fmShareExclusive):THandle; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Create new entry or truncate existing entry and return Handle</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Create new entry or truncate existing entry and return Handle</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;">
Line 2,886: Line 2,886:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.DeleteFile(const FileName:String):Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.DeleteFile(const FileName:String):Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Delete existing entry</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Delete existing entry</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;">
Line 2,898: Line 2,898:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">procedure TFileSystem.FileClose(Handle:Integer);</pre>
+
<pre style="border: 0; padding-bottom:0px;">procedure TFileSystem.FileClose(Handle:THandle); virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Close open handle</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Close open handle</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;">
Line 2,910: Line 2,910:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.RenameFile(const OldName,NewName:String):Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.RenameFile(const OldName,NewName:String):Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Rename existing entry</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Rename existing entry</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;">
Line 2,922: Line 2,922:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.FileSeek(Handle:THandle; Offset,Origin:LongInt):LongInt;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.FileSeek(Handle:THandle; Offset,Origin:LongInt):LongInt; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Move the position of an open handle</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Move the position of an open handle</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;">
Line 2,934: Line 2,934:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.FileSeekEx(Handle:THandle; const Offset:Int64; Origin:LongInt):Int64;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.FileSeekEx(Handle:THandle; const Offset:Int64; Origin:LongInt):Int64; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Move the position of an open handle</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Move the position of an open handle</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;">
Line 2,946: Line 2,946:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.FileFlush(Handle:Integer):Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.FileFlush(Handle:THandle):Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Flush an open handle from Cache</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Flush an open handle from Cache</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;">
Line 2,958: Line 2,958:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.FileTruncate(Handle:Integer):Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.FileTruncate(Handle:THandle):Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Truncate an open file at the current position</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Truncate an open file at the current position</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;">
Line 2,970: Line 2,970:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.FilePos(Handle:THandle):LongInt;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.FilePos(Handle:THandle):LongInt; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Return the position of an open Handle</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Return the position of an open Handle</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;">
Line 2,982: Line 2,982:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.FilePosEx(Handle:THandle):Int64;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.FilePosEx(Handle:THandle):Int64; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Return the position of an open Handle</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Return the position of an open Handle</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;">
Line 2,994: Line 2,994:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.FileGetAttr(const FileName:String):Integer;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.FileGetAttr(const FileName:String):Integer; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Get the attributes of an existing entry</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Get the attributes of an existing entry</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;">
Line 3,006: Line 3,006:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.FileGetDate(Handle:Integer):Integer;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.FileGetDate(Handle:THandle):Integer; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Get the date/time of an existing entry with an open Handle</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Get the date/time of an existing entry with an open Handle</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;">
Line 3,018: Line 3,018:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.FileGetSize(Handle:THandle):LongInt;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.FileGetSize(Handle:THandle):LongInt; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Get the size of an existing entry with an open Handle</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Get the size of an existing entry with an open Handle</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;">
Line 3,030: Line 3,030:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.FileGetSizeEx(Handle:THandle):Int64;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.FileGetSizeEx(Handle:THandle):Int64; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Get the size of an existing entry with an open Handle</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Get the size of an existing entry with an open Handle</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;">
Line 3,042: Line 3,042:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.FileSetAttr(const FileName:String; Attr:Integer):Integer;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.FileSetAttr(const FileName:String; Attr:Integer):Integer; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Set the attributes of an existing entry</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Set the attributes of an existing entry</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;">
Line 3,054: Line 3,054:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.FileSetDate(Handle:Integer; Age:Integer):Integer;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.FileSetDate(Handle:THandle; Age:Integer):Integer; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Set the date/time of an existing entry with an open Handle</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Set the date/time of an existing entry with an open Handle</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;">
Line 3,066: Line 3,066:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.FileSetSize(Handle:THandle; Size:LongInt):LongInt;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.FileSetSize(Handle:THandle; Size:LongInt):LongInt; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Set the size of an existing entry with an open Handle</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Set the size of an existing entry with an open Handle</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;">
Line 3,078: Line 3,078:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.FileSetSizeEx(Handle:THandle; const Size:Int64):LongInt;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.FileSetSizeEx(Handle:THandle; const Size:Int64):LongInt; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Set the size of an existing entry with Open handle</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Set the size of an existing entry with Open handle</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;">
Line 3,090: Line 3,090:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.FileRead(Handle:THandle; var Buffer;Count:LongInt):LongInt;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.FileRead(Handle:THandle; var Buffer;Count:LongInt):LongInt; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Read data from an existing entry with an open Handle</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Read data from an existing entry with an open Handle</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;">
Line 3,103: Line 3,103:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.FileWrite(Handle:THandle; const Buffer; Count:LongInt):LongInt;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.FileWrite(Handle:THandle; const Buffer; Count:LongInt):LongInt; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Write data to an existing entry with an open Handle</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Write data to an existing entry with an open Handle</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;">
Line 3,116: Line 3,116:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.CreateDir(const DirName:String):Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.CreateDir(const DirName:String):Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Create a new entry</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Create a new entry</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;">
Line 3,128: Line 3,128:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.RemoveDir(const DirName:String):Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.RemoveDir(const DirName:String):Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Delete an existing entry</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Delete an existing entry</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;">
Line 3,140: Line 3,140:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetCurrentDir:String;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetCurrentDir:String; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Return the current directory</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Return the current directory</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;">
Line 3,152: Line 3,152:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.SetCurrentDir(const DirName:String):Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.SetCurrentDir(const DirName:String):Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Set the current directory to an existing entry}{No File or Stream support</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Set the current directory to an existing entry}{No File or Stream support</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;">
Line 3,164: Line 3,164:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.FindFirstEx(const Path:String; var SearchRec:TFileSearchRec):Integer;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.FindFirstEx(const Path:String; var SearchRec:TFileSearchRec):Integer; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Find existing entries matching the specifications</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Find existing entries matching the specifications</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;">
Line 3,176: Line 3,176:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.FindNextEx(var SearchRec:TFileSearchRec):Integer;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.FindNextEx(var SearchRec:TFileSearchRec):Integer; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Continue Finding existing entries matching the specifications</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Continue Finding existing entries matching the specifications</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;">
Line 3,188: Line 3,188:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">procedure TFileSystem.FindCloseEx(var SearchRec:TFileSearchRec);</pre>
+
<pre style="border: 0; padding-bottom:0px;">procedure TFileSystem.FindCloseEx(var SearchRec:TFileSearchRec); virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Close an open find Handle</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Close an open find Handle</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;">
Line 3,200: Line 3,200:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.FindFirstStream(const FileName:String; var SearchRec:TStreamSearchRec):Integer;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.FindFirstStream(const FileName:String; var SearchRec:TStreamSearchRec):Integer; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Find existing streams matching the specifications</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Find existing streams matching the specifications</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;">
Line 3,212: Line 3,212:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.FindNextStream(var SearchRec:TStreamSearchRec):Integer;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.FindNextStream(var SearchRec:TStreamSearchRec):Integer; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Continue finding existing streams matching the specifications</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Continue finding existing streams matching the specifications</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;">
Line 3,224: Line 3,224:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">procedure TFileSystem.FindStreamClose(var SearchRec:TStreamSearchRec);</pre>
+
<pre style="border: 0; padding-bottom:0px;">procedure TFileSystem.FindStreamClose(var SearchRec:TStreamSearchRec); virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Close an open find Handle</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Close an open find Handle</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;">
Line 3,236: Line 3,236:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.FindFirstFileName(const FileName:String; var SearchRec:TLinkSearchRec):Integer;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.FindFirstFileName(const FileName:String; var SearchRec:TLinkSearchRec):Integer; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Find existing file names matching the specifications</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Find existing file names matching the specifications</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;">
Line 3,248: Line 3,248:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.FindNextFileName(var SearchRec:TLinkSearchRec):Integer;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.FindNextFileName(var SearchRec:TLinkSearchRec):Integer; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Continue finding existing file names matching the specifications</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Continue finding existing file names matching the specifications</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;">
Line 3,260: Line 3,260:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">procedure TFileSystem.FindFileNameClose(var SearchRec:TLinkSearchRec);</pre>
+
<pre style="border: 0; padding-bottom:0px;">procedure TFileSystem.FindFileNameClose(var SearchRec:TLinkSearchRec); virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Close an open find Handle</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Close an open find Handle</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;">
Line 3,272: Line 3,272:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.CreateHardLink(const LinkName,FileName:String):Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.CreateHardLink(const LinkName,FileName:String):Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 3,284: Line 3,284:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.DeleteHardLink(const LinkName:String):Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.DeleteHardLink(const LinkName:String):Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 3,296: Line 3,296:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.CreateMountPoint(const PathName,VolumeName:String):Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.CreateMountPoint(const PathName,VolumeName:String):Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 3,308: Line 3,308:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.DeleteMountPoint(const PathName:String):Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.DeleteMountPoint(const PathName:String):Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 3,320: Line 3,320:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.CreateJunctionPoint(const PathName,FolderName:String):Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.CreateJunctionPoint(const PathName,FolderName:String):Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 3,332: Line 3,332:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.DeleteJunctionPoint(const PathName:String):Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.DeleteJunctionPoint(const PathName:String):Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 3,344: Line 3,344:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.CreateSymbolicLink(const LinkName,TargetName:String; Directory:Boolean):Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.CreateSymbolicLink(const LinkName,TargetName:String; Directory:Boolean):Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 3,356: Line 3,356:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.CreateSymbolicLinkEx(const LinkName,ShortName,TargetName:String; Directory:Boolean):Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.CreateSymbolicLinkEx(const LinkName,ShortName,TargetName:String; Directory:Boolean):Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 3,368: Line 3,368:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.DeleteSymbolicLink(const LinkName:String):Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.DeleteSymbolicLink(const LinkName:String):Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 3,380: Line 3,380:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetMountPointTarget(const PathName:String):String;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetMountPointTarget(const PathName:String):String; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 3,392: Line 3,392:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetJunctionPointTarget(const PathName:String):String;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetJunctionPointTarget(const PathName:String):String; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 3,404: Line 3,404:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetSymbolicLinkTarget(const LinkName:String):String;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetSymbolicLinkTarget(const LinkName:String):String; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 3,416: Line 3,416:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.SetFileShortName(const FileName,ShortName:String):Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.SetFileShortName(const FileName,ShortName:String):Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 3,428: Line 3,428:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.SetFileShortNameEx(Handle:Integer; const ShortName:String):Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.SetFileShortNameEx(Handle:THandle; const ShortName:String):Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 3,440: Line 3,440:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetFileSecurity(const FileName:String; Descriptor:Pointer; var Size:LongWord):Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetFileSecurity(const FileName:String; Descriptor:Pointer; var Size:LongWord):Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 3,452: Line 3,452:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.SetFileSecurity(const FileName:String; Descriptor:Pointer):Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.SetFileSecurity(const FileName:String; Descriptor:Pointer):Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' To be documented</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;">
Line 3,464: Line 3,464:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetPathName(const FileName:String):String;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetPathName(const FileName:String):String; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Get the path from the supplied name (Does not include trailing slash)</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Get the path from the supplied name (Does not include trailing slash)</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;">
Line 3,476: Line 3,476:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetShortName(const FileName:String):String;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetShortName(const FileName:String):String; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Convert the supplied name to its Short name form</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Convert the supplied name to its Short name form</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;">
Line 3,488: Line 3,488:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetLongName(const FileName:String):String;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetLongName(const FileName:String):String; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Convert the supplied name to its Long name form</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Convert the supplied name to its Long name form</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;">
Line 3,500: Line 3,500:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetTrueName(const FileName:String):String;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetTrueName(const FileName:String):String; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Convert the supplied name to its True name form</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Convert the supplied name to its True name form</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;">
Line 3,512: Line 3,512:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.FileCreateEx(const FileName,ShortName:String; Mode:Integer = fmOpenReadWrite or fmShareExclusive):THandle;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.FileCreateEx(const FileName,ShortName:String; Mode:Integer = fmOpenReadWrite or fmShareExclusive):THandle; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Create new entry or truncate existing entry and return Handle</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Create new entry or truncate existing entry and return Handle</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;">
Line 3,525: Line 3,525:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.CreateDirEx(const DirName,ShortName:String):Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.CreateDirEx(const DirName,ShortName:String):Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Create a new entry}{No File or Stream support</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Create a new entry}{No File or Stream support</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;">
Line 3,537: Line 3,537:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.FileGetAttrEx(Handle:Integer):Integer;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.FileGetAttrEx(Handle:THandle):Integer; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Get the Attributes of an existing entry with an open Handle</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Get the Attributes of an existing entry with an open Handle</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;">
Line 3,549: Line 3,549:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.FileGetDateEx(Handle:Integer):TFileTime;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.FileGetDateEx(Handle:THandle):TFileTime; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Get the Date/Time of an existing entry with an open Handle</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Get the Date/Time of an existing entry with an open Handle</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;">
Line 3,561: Line 3,561:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.FileSetDateEx(Handle:Integer; Age:TFileTime):Integer;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.FileSetDateEx(Handle:THandle; Age:TFileTime):Integer; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Set the Date/Time of an existing entry with an open Handle</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Set the Date/Time of an existing entry with an open Handle</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;">
Line 3,573: Line 3,573:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetFileTime(Handle:Integer; CreateTime,AccessTime,ModifyTime:PFileTime):Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.GetFileTime(Handle:THandle; CreateTime,AccessTime,ModifyTime:PFileTime):Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Get the Dates and Times of an existing entry with an open Handle</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Get the Dates and Times of an existing entry with an open Handle</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;">
Line 3,585: Line 3,585:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.SetFileTime(Handle:Integer; CreateTime,AccessTime,ModifyTime:PFileTime):Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.SetFileTime(Handle:THandle; CreateTime,AccessTime,ModifyTime:PFileTime):Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Set the Dates and Times of an existing entry with an open Handle</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Set the Dates and Times of an existing entry with an open Handle</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;">
Line 3,597: Line 3,597:
 
<br />
 
<br />
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
 
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 0px; padding-bottom: 15px;">
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.CloseFile(Handle:THandle):Boolean;</pre>
+
<pre style="border: 0; padding-bottom:0px;">function TFileSystem.CloseFile(Handle:THandle):Boolean; virtual;</pre>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Close open handle</div>
 
<div style="font-size: 14px; padding-left: 12px;">'''Description:''' Close open handle</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;">

Revision as of 04:15, 22 January 2025

Return to Unit Filesystem


Description


To be documented

Class definitions



TFileSystem = class(TListObject)

constructor Create(ADriver:TFileSysDriver; AVolume:TDiskVolume; ADrive:TDiskDrive);  
destructor Destroy; override;  
private
FLock:TSynchronizerHandle;  
FLocalLock:TMutexHandle;  
protected
FDriver:TFileSysDriver;  
FVolume:TDiskVolume;  
FDrive:TDiskDrive;  
 
FPathChar:String; Path separator character
FNameChar:String; Name separator character
FFileChar:String; File separator character
FRootChar:String; Root specifier character (eg C:)
FRootName:String;  
FRootPath:String; Root Path must be prefixed with \\.
FMaxFile:Integer;  
FMaxPath:Integer;  
FMaxAltFile:Integer;  
FMaxAltPath:Integer;  
FAttributes:LongWord;  
FMaxAttributes:LongWord;  
FMaskAttributes:LongWord;  
FMountPointTag:LongWord;  
FSymbolicLinkTag:LongWord;  
FMinFileTime:TFileTime;  
FSystemName:String;  
FVolumeName:String;  
FVolumeGUID:String;  
FVolumeSerial:LongWord;  
FFileSysType:TFileSysType;  
 
FSectorSize:Word;  
FStartSector:Int64;  
FSectorCount:LongWord;  
 
FRoot:TDiskEntry;  
 
FCurrentIndex:LongWord; TLS Index for storing current directory
FCurrentEntry:TDiskEntry; Current directory when global current directory is enabled
 
FChunks:TFileSysList;  
FTables:TFileSysList;  
FBlocks:TFileSysList;  
FEntries:TFileSysTree;  
FCatalogs:TFileSysList;  
FAcls:TFileSysList;  
 
FChunkLocal:TMutexHandle; Local Lock shared by all DiskChunk objects
FTableLocal:TMutexHandle; Local Lock shared by all DiskTable objects
FBlockLocal:TMutexHandle; Local Lock shared by all DiskBlock objects
FEntryLocal:TMutexHandle; Local Lock shared by all DiskEntry objects
FCatalogLocal:TMutexHandle; Local Lock shared by all DiskCatalog objects
FSecurityLocal:TMutexHandle; Local Lock shared by all DiskSecurity objects
FAclLocal:TMutexHandle; Local Lock shared by all DiskAcl objects
FAceLocal:TMutexHandle; Local Lock shared by all DiskAce objects
 
FMarkDirty:Boolean; Mark the volume as dirty when dismounting (Either by request or due to error)
FMarkClean:Boolean; Mark the volume as clean when dismounting (Only by request)
FMarkError:Boolean; Error was encounted on volume, mark as dirty when dismounting
FLogDirty:Boolean; LogFile was dirty when mounted (if supported by filesystem)
FMountDirty:Boolean; Volume was dirty when mounted, leave marked as dirty when dismounting
 
FOemConvert:Boolean; Default to True overidden by descendants if not supported
FNumericTail:Boolean; Default to True overidden by descendants if not supported
 
FReadOnly:Boolean; Default to False overidden by descendants if True
FLongNames:Boolean; Default to True overidden by descendants if not supported
FDataStreams:Boolean; Default to False overidden by descendants if supported
FReparsePoints:Boolean; Default to False overidden by descendants if supported
FCaseSensitive:Boolean; Default to False overidden by descendants if supported
FCasePreserved:Boolean; Default to False overidden by descendants if supported
FUnicodeNames:Boolean; Default to False overidden by descendants if supported
FPersistentAcls:Boolean; Default to False overidden by descendants if supported
FFileCompression:Boolean; Default to False overidden by descendants if supported
FVolumeQuotas:Boolean; Default to False overidden by descendants if supported
FSparseFiles:Boolean; Default to False overidden by descendants if supported
FRemoteStorage:Boolean; Default to False overidden by descendants if supported
FVolumeCompressed:Boolean; Default to False overidden by descendants if supported
FObjectIds:Boolean; Default to False overidden by descendants if supported
FEncryption:Boolean; Default to False overidden by descendants if supported
 
FBootCatalog:Boolean; Default to False overidden by descendants if supported
FVirtualVolume:Boolean; Default to False overidden by descendants if supported
FFolderEncryption:Boolean; Default to False overidden by descendants if supported
FFolderCompression:Boolean; Default to False overidden by descendants if supported
 
FBootSector:LongWord; Relative to StartSector
FBootBackup:LongWord; Relative to StartSector
 
FSectorBuffer:Pointer; Buffer of exactly sector size
FSectorLock:TMutexHandle; Lock for sector buffer
 
function AcquireLock:Boolean;  
function ReleaseLock:Boolean;  
 
function SectorLock:Boolean;  
function SectorUnlock:Boolean;  
 
procedure SetDrive(ADrive:TDiskDrive); virtual;  
procedure SetVolume(AVolume:TDiskVolume); virtual;  
 
function GetPathChar:String; virtual;  
function GetNameChar:String; virtual;  
function GetFileChar:String; virtual;  
function GetRootChar:String; virtual;  
function GetRootName:String; virtual;  
function GetRootPath:String; virtual;  
function GetSystemName:String; virtual;  
function GetVolumeName:String; virtual;  
function GetVolumeGUID:String; virtual;  
 
function LoadPathChar:String; virtual;  
function LoadNameChar:String; virtual;  
function LoadFileChar:String; virtual;  
function LoadRootChar:String; virtual;  
function LoadRootName:String; virtual;  
function LoadRootPath:String; virtual;  
function LoadMaxFile:Integer; virtual;  
function LoadMaxPath:Integer; virtual;  
function LoadMaxAltFile:Integer; virtual;  
function LoadMaxAltPath:Integer; virtual;  
function LoadAttributes:LongWord; virtual; Get the Volume Attributes
function LoadMaxAttributes:LongWord; virtual; Get the Maximum File Attributes (used when setting file attributes)
function LoadMaskAttributes:LongWord; virtual; Get the File Attributes Mask (used when getting file attributes)
function LoadMountPointTag:LongWord; virtual;  
function LoadSymbolicLinkTag:LongWord; virtual;  
function LoadMinFileTime:TFileTime; virtual;  
function LoadSystemName:String; virtual;  
function LoadVolumeName:String; virtual;  
function LoadVolumeGUID:String; virtual;  
function LoadVolumeSerial:LongWord; virtual;  
function LoadFileSysType:TFileSysType; virtual;  
 
function LoadSectorSize:Word; virtual;  
function LoadStartSector:Int64; virtual;  
function LoadSectorCount:LongWord; virtual;  
 
function GetCurrent:TDiskEntry; virtual;  
function SetCurrent(ACurrent:TDiskEntry):Boolean; virtual;  
 
function FillSectors(ASector,ACount:LongWord; AValue:Byte):Boolean;  
 
function ReadSectors(ASector,ACount:LongWord; var ABuffer):Boolean;  
function WriteSectors(ASector,ACount:LongWord; const ABuffer):Boolean;  
 
function ReadEntry(AParent,AEntry:TDiskEntry; var ABuffer; const AStart:Int64; ACount:LongWord; var AOffset,AValue:LongWord):Integer; virtual;  
function WriteEntry(AParent,AEntry:TDiskEntry; const ABuffer; const AStart:Int64; ACount:LongWord; var AOffset,AValue:LongWord):Integer; virtual;  
 
function LoadTables:Boolean; virtual;  
function LoadBlocks:Boolean; virtual;  
function LoadEntries(AParent:TDiskEntry):Boolean; virtual;  
function LoadCatalogs:Boolean; virtual;  
 
function LoadTable(ATableNo:LongWord):Boolean; virtual;  
function LoadBlock(ABlockNo:LongWord):Boolean; virtual;  
Note: LoadEntry can be implemented if needed but is not defined here.
Note: LoadCatalog can be implemented if needed but is not defined here.
 
function UnloadEntries(AParent:TDiskEntry):Boolean; virtual;  
 
function AddEntry(AParent:TDiskEntry; const AName:String; AAttributes:LongWord; AReference:Boolean):TDiskEntry; virtual;  
function AddEntryEx(AParent:TDiskEntry; const AName,AAltName:String; AAttributes:LongWord; AReference:Boolean):TDiskEntry; virtual;  
function RemoveEntry(AParent,AEntry:TDiskEntry):Boolean; virtual;  
function RenameEntry(AParent,AEntry:TDiskEntry; const AName:String):Boolean; virtual;  
function RenameEntryEx(AParent,AEntry:TDiskEntry; const AAltName:String):Boolean; virtual;  
function MoveEntry(ASource,ADest,AEntry:TDiskEntry):Boolean; virtual;  
 
function AddCatalog(AEntry:TDiskEntry; AMediaType:TMediaType; AFloppyType:TFloppyType; AAttributes:LongWord; ASectorSize:Word; const ASectorCount:Int64):TDiskCatalog; virtual;  
function RemoveCatalog(ACatalog:TDiskCatalog):Boolean; virtual;  
function CheckCatalog(ACatalog:TDiskCatalog; ALock:Boolean; AState:LongWord):Boolean; virtual;  
 
function GetCatalogByNo(ACatalogNo:LongWord; ALock:Boolean; AState:LongWord):TDiskCatalog; virtual;  
function GetCatalogByName(const AName:String; ALock:Boolean; AState:LongWord):TDiskCatalog; virtual;  
function GetCatalogByNext(APrevious:TDiskCatalog; ALock,AUnlock:Boolean; AState:LongWord):TDiskCatalog; virtual;  
 
function GetNextCatalogNo:LongWord; virtual;  
function GetMaxCatalogNo:LongWord; virtual;  
 
function AddHardlink(AEntry,AParent:TDiskEntry; const AName:String; AReference:Boolean):TDiskEntry; virtual;  
function RemoveHardlink(AParent,AEntry:TDiskEntry):Boolean; virtual;  
 
function AddMountPoint(AEntry:TDiskEntry; const ATarget:String):Boolean; virtual;  
function RemoveMountPoint(AEntry:TDiskEntry):Boolean; virtual;  
 
function AddJunctionPoint(AEntry:TDiskEntry; const ATarget:String):Boolean; virtual;  
function RemoveJunctionPoint(AEntry:TDiskEntry):Boolean; virtual;  
 
function AddSymbolicLink(AParent:TDiskEntry; const AName,ATarget:String; AFolder,AReference:Boolean):TDiskEntry; virtual;  
function AddSymbolicLinkEx(AParent:TDiskEntry; const AName,AAltName,ATarget:String; AFolder,AReference:Boolean):TDiskEntry; virtual;  
function RemoveSymbolicLink(AParent,AEntry:TDiskEntry):Boolean; virtual;  
 
function SetTable(ATable:TDiskTable):Boolean; virtual;  
function SetBlock(ABlock:TDiskBlock):Boolean; virtual;  
function SetEntry(AParent,AEntry:TDiskEntry):Boolean; virtual;  
function SetCatalog(ACatalog:TDiskCatalog):Boolean; virtual;  
function SetReparse(AParent,AEntry:TDiskEntry; AReparse:TDiskReparse):Boolean; virtual;  
function SetSecurity(AParent,AEntry:TDiskEntry; ASecurity:TDiskSecurity):Boolean; virtual;  
 
function SizeEntry(AParent,AEntry:TDiskEntry; const ASize:Int64):Boolean; virtual;  
 
function GetTable(ATableNo:LongWord):TDiskTable; virtual;  
function GetTableEx(ATableNo:LongWord; AWrite:Boolean):TDiskTable; virtual;  
function GetBlock(ABlockNo:LongWord):TDiskBlock; virtual;  
function GetBlockEx(ABlockNo:LongWord; AWrite:Boolean):TDiskBlock; virtual;  
function GetEntry(AParent:TDiskEntry; const AName:String; AAttributes:LongWord):TDiskEntry; virtual;  
function GetEntryEx(AParent:TDiskEntry; const AName:String; AAttributes:LongWord; AAdd,ARemove,AWrite:Boolean):TDiskEntry; virtual;  
function GetCatalog(ACatalogNo:LongWord):TDiskCatalog; virtual;  
function GetCatalogEx(ACatalogNo:LongWord; AWrite:Boolean):TDiskCatalog; virtual;  
function GetReparse(AEntry:TDiskEntry):TDiskReparse; virtual;  
function GetSecurity(AEntry:TDiskEntry):TDiskSecurity; virtual;  
 
function MatchEntry(AParent,APrevious:TDiskEntry; const AName:String; AAttributes:LongWord; AAny:Boolean):TDiskEntry; virtual;  
function MatchEntryEx(AParent,APrevious:TDiskEntry; const AName:String; AAttributes:LongWord; AAny,AAdd,ARemove,AWrite:Boolean):TDiskEntry; virtual;  
 
function GetEntryPath(AEntry:TDiskEntry; AAltName:Boolean):String;  
function GetEntryName(AEntry:TDiskEntry; AAltName:Boolean):String;  
 
function SplitPath(const APath:String; var ARelative:Boolean; AFolders:TStrings; var AName:String):Boolean; virtual;  
function SplitName(const AName:String; var AFile,AStream:String):Boolean; virtual;  
function SplitFile(const AFile:String; var AName,AExt:String):Boolean; virtual;  
function SplitStream(const AStream:String; var AName,AType:String):Boolean; virtual;  
 
function BuildPath(ARelative:Boolean; AFolders:TLinkedStringList; const AName:String):String; virtual;  
function BuildName(const AFile,AStream:String):String; virtual;  
function BuildFile(const AName,AExt:String):String; virtual;  
function BuildStream(const AName,AType:String):String; virtual;  
 
function CheckName(const AName:String):Boolean; virtual;  
function CompareName(const AName,AMatch:String; AWildcard:Boolean):Boolean; virtual;  
 
function CheckAltName(const AAltName:String):Boolean; virtual;  
function CompareAltName(const AAltName,AMatch:String; AWildcard:Boolean):Boolean; virtual;  
 
function CheckLinkName(const AName:String):Boolean; virtual;  
 
function GetSecurityFromDescriptor(ADescriptor:Pointer):TDiskSecurity; virtual;  
function GetDescriptorFromSecurity(ASecurity:TDiskSecurity; ADescriptor:Pointer; var ASize:LongWord):Boolean; virtual;  
public
property Volume:TDiskVolume read FVolume write SetVolume;  
property Drive:TDiskDrive read FDrive write SetDrive;  
 
property PathChar:String read GetPathChar;  
property NameChar:String read GetNameChar;  
property FileChar:String read GetFileChar;  
property RootChar:String read GetRootChar;  
property RootName:String read GetRootName;  
property RootPath:String read GetRootPath;  
property MaxFile:Integer read FMaxFile;  
property MaxPath:Integer read FMaxPath;  
property MaxAltFile:Integer read FMaxAltFile;  
property MaxAltPath:Integer read FMaxAltPath;  
property Attributes:LongWord read FAttributes;  
property MaxAttributes:LongWord read FMaxAttributes;  
property MaskAttributes:LongWord read FMaskAttributes;  
property MountPointTag:LongWord read FMountPointTag;  
property SymbolicLinkTag:LongWord read FSymbolicLinkTag;  
property MinFileTime:TFileTime read FMinFileTime;  
property SystemName:String read GetSystemName;  
property VolumeName:String read GetVolumeName;  
property VolumeGUID:String read GetVolumeGUID;  
property VolumeSerial:LongWord read FVolumeSerial;  
property FileSysType:TFileSysType read FFileSysType;  
 
property SectorSize:Word read FSectorSize;  
property StartSector:Int64 read FStartSector;  
property SectorCount:LongWord read FSectorCount;  
 
property MarkDirty:Boolean read FMarkDirty write FMarkDirty;  
property MarkClean:Boolean read FMarkClean write FMarkClean;  
property MarkError:Boolean read FMarkError;  
property LogDirty:Boolean read FLogDirty;  
property MountDirty:Boolean read FMountDirty;  
 
function ReaderLock:Boolean;  
function ReaderUnlock:Boolean;  
function ReaderConvert:Boolean;  
function WriterLock:Boolean;  
function WriterUnlock:Boolean;  
function WriterConvert:Boolean;  
 
function FileSystemInit:Boolean; virtual;  
 
function MountFileSystem:Boolean; virtual;  
function DismountFileSystem:Boolean; virtual;  
function InitializeFileSystem(ASectorsPerCluster:LongWord; AFileSysType:TFileSysType):Boolean; virtual;  
 
function CreateCatalog(const AName:String; AMediaType:TMediaType; AFloppyType:TFloppyType; AAttributes:LongWord; ASectorSize:Word; const ASectorCount:Int64):LongWord; virtual;  
function DeleteCatalog(ACatalogNo:LongWord):Boolean; virtual;  
 
function FindFirstCatalog(var ASearchRec:TCatalogSearchRec):Integer; virtual;  
function FindNextCatalog(var ASearchRec:TCatalogSearchRec):Integer; virtual;  
procedure FindCatalogClose(var ASearchRec:TCatalogSearchRec); virtual;  
 
function GetDriveLabel:String; virtual;  
function SetDriveLabel(const ALabel:String):Boolean; virtual;  
function GetDriveSerial:LongWord; virtual;  
function SetDriveSerial(ASerial:LongWord):Boolean; virtual;  
 
function GetDriveFreeSpace:LongWord; virtual;  
function GetDriveFreeSpaceEx:Int64; virtual;  
function GetDriveTotalSpace:LongWord; virtual;  
function GetDriveTotalSpaceEx:Int64; virtual;  
 
function GetDriveInformation(var AClusterSize:LongWord; var ATotalClusterCount,AFreeClusterCount:Int64):Boolean; virtual;  
 
function FileOpen(const FileName:String; Mode:Integer):THandle; virtual;  
function FileCreate(const FileName:String; Mode:Integer = fmOpenReadWrite or fmShareExclusive):THandle; virtual;  
function DeleteFile(const FileName:String):Boolean; virtual;  
procedure FileClose(Handle:THandle); virtual;  
function RenameFile(const OldName,NewName:String):Boolean; virtual;  
function FileSeek(Handle:THandle; Offset,Origin:LongInt):LongInt; virtual;  
function FileSeekEx(Handle:THandle; const Offset:Int64; Origin:LongInt):Int64; virtual;  
function FileFlush(Handle:THandle):Boolean; virtual;  
function FileTruncate(Handle:THandle):Boolean; virtual;  
 
function FilePos(Handle:THandle):LongInt; virtual;  
function FilePosEx(Handle:THandle):Int64; virtual;  
 
function FileGetAttr(const FileName:String):Integer; virtual;  
function FileGetDate(Handle:THandle):Integer; virtual;  
function FileGetSize(Handle:THandle):LongInt; virtual;  
function FileGetSizeEx(Handle:THandle):Int64; virtual;  
function FileSetAttr(const FileName:String; Attr:Integer):Integer; virtual;  
function FileSetDate(Handle:THandle; Age:Integer):Integer; virtual;  
function FileSetSize(Handle:THandle; Size:LongInt):LongInt; virtual;  
function FileSetSizeEx(Handle:THandle; const Size:Int64):LongInt; virtual;  
 
function FileRead(Handle:THandle; var Buffer; Count:LongInt):LongInt; virtual;  
function FileWrite(Handle:THandle; const Buffer; Count:LongInt):LongInt; virtual;  
 
function CreateDir(const DirName:String):Boolean; virtual;  
function RemoveDir(const DirName:String):Boolean; virtual;  
function GetCurrentDir:String; virtual;  
function SetCurrentDir(const DirName:String):Boolean; virtual;  
 
function FindOne(const Path:String; var SearchRec:TFileSearchRec):Integer; virtual;  
function FindAll(const Path:String; var SearchRec:TFileSearchRec):Integer; virtual;  
 
function FindFirstEx(const Path:String; var SearchRec:TFileSearchRec):Integer; virtual;  
function FindNextEx(var SearchRec:TFileSearchRec):Integer; virtual;  
procedure FindCloseEx(var SearchRec:TFileSearchRec); virtual;  
 
function FindFirstStream(const FileName:String; var SearchRec:TStreamSearchRec):Integer; virtual;  
function FindNextStream(var SearchRec:TStreamSearchRec):Integer; virtual;  
procedure FindStreamClose(var SearchRec:TStreamSearchRec); virtual;  
 
function FindFirstFileName(const FileName:String; var SearchRec:TLinkSearchRec):Integer; virtual;  
function FindNextFileName(var SearchRec:TLinkSearchRec):Integer; virtual;  
procedure FindFileNameClose(var SearchRec:TLinkSearchRec); virtual;  
 
function CreateHardLink(const LinkName,FileName:String):Boolean; virtual;  
function DeleteHardLink(const LinkName:String):Boolean; virtual;  
 
function CreateMountPoint(const PathName,VolumeName:String):Boolean; virtual;  
function DeleteMountPoint(const PathName:String):Boolean; virtual;  
 
function CreateJunctionPoint(const PathName,FolderName:String):Boolean; virtual;  
function DeleteJunctionPoint(const PathName:String):Boolean; virtual;  
 
function CreateSymbolicLink(const LinkName,TargetName:String; Directory:Boolean):Boolean; virtual;  
function CreateSymbolicLinkEx(const LinkName,ShortName,TargetName:String; Directory:Boolean):Boolean; virtual;  
function DeleteSymbolicLink(const LinkName:String):Boolean; virtual;  
 
function GetMountPointTarget(const PathName:String):String; virtual;  
function GetJunctionPointTarget(const PathName:String):String; virtual;  
function GetSymbolicLinkTarget(const LinkName:String):String; virtual;  
 
function SetFileShortName(const FileName,ShortName:String):Boolean; virtual;  
function SetFileShortNameEx(Handle:THandle; const ShortName:String):Boolean; virtual;  
 
function GetFileSecurity(const FileName:String; Descriptor:Pointer; var Size:LongWord):Boolean; virtual;  
function SetFileSecurity(const FileName:String; Descriptor:Pointer):Boolean; virtual;  
 
function GetPathName(const FileName:String):String; virtual;  
 
function GetShortName(const FileName:String):String; virtual;  
function GetLongName(const FileName:String):String; virtual;  
function GetTrueName(const FileName:String):String; virtual;  
 
function FileCreateEx(const FileName,ShortName:String; Mode:Integer = fmOpenReadWrite or fmShareExclusive):THandle; virtual;  
function CreateDirEx(const DirName,ShortName:String):Boolean; virtual;  
 
function FileGetAttrEx(Handle:THandle):Integer; virtual;  
 
function FileGetDateEx(Handle:THandle):TFileTime; virtual;  
function FileSetDateEx(Handle:THandle; Age:TFileTime):Integer; virtual;  
function GetFileTime(Handle:THandle; CreateTime,AccessTime,ModifyTime:PFileTime):Boolean; virtual;  
function SetFileTime(Handle:THandle; CreateTime,AccessTime,ModifyTime:PFileTime):Boolean; virtual;  
 
function CloseFile(Handle:THandle):Boolean; virtual; Equivalent to Win32 CloseHandle


Function declarations



constructor TFileSystem.Create(ADriver:TFileSysDriver; AVolume:TDiskVolume; ADrive:TDiskDrive); virtual;
Description: To be documented
Note None documented


destructor TFileSystem.Destroy; virtual;
Description: To be documented
Note None documented


function TFileSystem.AcquireLock:Boolean; virtual;
Description: To be documented
Note None documented


function TFileSystem.ReleaseLock:Boolean; virtual;
Description: To be documented
Note None documented


function TFileSystem.SectorLock:Boolean; virtual;
Description: To be documented
Note None documented


function TFileSystem.SectorUnlock:Boolean; virtual;
Description: To be documented
Note None documented


procedure TFileSystem.SetDrive(ADrive:TDiskDrive); virtual;
Description: To be documented
Note None documented


procedure TFileSystem.SetVolume(AVolume:TDiskVolume); virtual;
Description: To be documented
Note None documented


function TFileSystem.GetPathChar:String; virtual;
Description: To be documented
Note None documented


function TFileSystem.GetNameChar:String; virtual;
Description: To be documented
Note None documented


function TFileSystem.GetFileChar:String; virtual;
Description: To be documented
Note None documented


function TFileSystem.GetRootChar:String; virtual;
Description: To be documented
Note None documented


function TFileSystem.GetRootName:String; virtual;
Description: To be documented
Note None documented


function TFileSystem.GetRootPath:String; virtual;
Description: To be documented
Note None documented


function TFileSystem.GetSystemName:String; virtual;
Description: To be documented
Note None documented


function TFileSystem.GetVolumeName:String; virtual;
Description: To be documented
Note None documented


function TFileSystem.GetVolumeGUID:String; virtual;
Description: To be documented
Note None documented


function TFileSystem.LoadPathChar:String; virtual;
Description: Load the Path separator character
Note None documented


function TFileSystem.LoadNameChar:String; virtual;
Description: Load the Name separator character
Note None documented


function TFileSystem.LoadFileChar:String; virtual;
Description: Load the File separator character
Note None documented


function TFileSystem.LoadRootChar:String; virtual;
Description: Load the Root specifier character (eg C:)
Note None documented


function TFileSystem.LoadRootName:String; virtual;
Description: Load Root Name from Drive or Volume (eg C:\ or \\?\Volume1)
Note None documented


function TFileSystem.LoadRootPath:String; virtual;
Description: Load Root Path from Volume or Drive (eg \\.\Harddisk0\Partition1 or C:\)
Note None documented


function TFileSystem.LoadMaxFile:Integer; virtual;
Description: Load the maximum File name length
Note None documented


function TFileSystem.LoadMaxPath:Integer; virtual;
Description: Load the maximum Path name length
Note None documented


function TFileSystem.LoadMaxAltFile:Integer; virtual;
Description: Load the maximum Alt File name length
Note None documented


function TFileSystem.LoadMaxAltPath:Integer; virtual;
Description: Load the maximum Alt Path name length
Note None documented


function TFileSystem.LoadAttributes:LongWord; virtual;
Description: Load the File System (Volume) Attributes
Note None documented


function TFileSystem.LoadMaxAttributes:LongWord; virtual;
Description: Load the Maximum File Attributes (FileSetAttr)
Note None documented


function TFileSystem.LoadMaskAttributes:LongWord; virtual;
Description: Load the File Attributes Mask (FileGetAttr/FindFirstEx/FindNextEx)
Note None documented


function TFileSystem.LoadMountPointTag:LongWord; virtual;
Description: To be documented
Note None documented


function TFileSystem.LoadSymbolicLinkTag:LongWord; virtual;
Description: To be documented
Note None documented


function TFileSystem.LoadMinFileTime:TFileTime; virtual;
Description: Load the Minimum File Time value (WriteTime/CreateTime/AccessTime)
Note None documented


function TFileSystem.LoadSystemName:String; virtual;
Description: To be documented
Note None documented


function TFileSystem.LoadVolumeName:String; virtual;
Description: To be documented
Note None documented


function TFileSystem.LoadVolumeGUID:String; virtual;
Description: To be documented
Note None documented


function TFileSystem.LoadVolumeSerial:LongWord; virtual;
Description: To be documented
Note None documented


function TFileSystem.LoadFileSysType:TFileSysType; virtual;
Description: To be documented
Note None documented


function TFileSystem.LoadSectorSize:Word; virtual;
Description: Load Sector Size from Volume
Note None documented


function TFileSystem.LoadStartSector:Int64; virtual;
Description: Load Start Sector from Volume
Note None documented


function TFileSystem.LoadSectorCount:LongWord; virtual;
Description: Load Sector Count from Volume
Note None documented


function TFileSystem.GetCurrent:TDiskEntry; virtual;
Description: To be documented
Note None documented


function TFileSystem.SetCurrent(ACurrent:TDiskEntry):Boolean; virtual;
Description: To be documented
Note None documented


function TFileSystem.FillSectors(ASector,ACount:LongWord; AValue:Byte):Boolean; virtual;
Description: Fill specified number of sectors with the supplied value
Note Sector is relative to the StartSector of the FileSystem


function TFileSystem.ReadSectors(ASector,ACount:LongWord; var ABuffer):Boolean; virtual;
Description: Read Sectors from the Volume using Cache
Note Sector is relative to the StartSector of the FileSystem

Caller must hold the filesystem lock, cache will serialize access to device.


function TFileSystem.WriteSectors(ASector,ACount:LongWord; const ABuffer):Boolean; virtual;
Description: Write Sectors to the Volume using Cache
Note Sector is relative to the StartSector of the FileSystem

Caller must hold the filesystem lock, cache will serialize access to device.


function TFileSystem.ReadEntry(AParent,AEntry:TDiskEntry; var ABuffer; const AStart:Int64; ACount:LongWord; var AOffset,AValue:LongWord):Integer; virtual;
Description: To be documented
Note Start, Count and Size have already been checked.

Offset and Value are private to the filesystem


function TFileSystem.WriteEntry(AParent,AEntry:TDiskEntry; const ABuffer; const AStart:Int64; ACount:LongWord; var AOffset,AValue:LongWord):Integer; virtual;
Description: To be documented
Note Start, Count and Size have already been checked.

Offset and Value are private to the filesystem


function TFileSystem.LoadTables:Boolean; virtual;
Description: Load all Disk Tables
Note Descendant method must use WriterLock on Tables


function TFileSystem.LoadBlocks:Boolean; virtual;
Description: Load all Disk Blocks
Note Descendant method must use WriterLock on Blocks


function TFileSystem.LoadEntries(AParent:TDiskEntry):Boolean; virtual;
Description: To be documented
Note Parent must be supplied

Descendant method must use WriterLock on Entries


function TFileSystem.LoadCatalogs:Boolean; virtual;
Description: To be documented
Note Descendant method must use WriterLock on Catalogs


function TFileSystem.LoadTable(ATableNo:LongWord):Boolean; virtual;
Description: To be documented
Note TableNo is zero based

Descendant method must use WriterLock on Tables


function TFileSystem.LoadBlock(ABlockNo:LongWord):Boolean; virtual;
Description: To be documented
Note BlockNo is zero based

Descendant method must use WriterLock on Blocks


function TFileSystem.UnloadEntries(AParent:TDiskEntry):Boolean; virtual;
Description: To be documented
Note Parent must be supplied

Descendant method must use WriterLock on Entries


function TFileSystem.AddEntry(AParent:TDiskEntry; const AName:String; AAttributes:LongWord; AReference:Boolean):TDiskEntry; virtual;
Description: To be documented
Reference Add a reference on the returned entry if True
Note Parent must be supplied, Name has already been checked.

Descendant method must use WriterLock on Entries


function TFileSystem.AddEntryEx(AParent:TDiskEntry; const AName,AAltName:String; AAttributes:LongWord; AReference:Boolean):TDiskEntry; virtual;
Description: To be documented
AltName If AltName already exists then a generated one will be provided, will not fail due to AltName.
Reference Add a reference on the returned entry if True
Note Parent must be supplied, Name and AltName have already been checked.

Descendant method must use WriterLock on Entries


function TFileSystem.RemoveEntry(AParent,AEntry:TDiskEntry):Boolean; virtual;
Description: To be documented
Note Files and Folders have been checked, Handles have been checked.

Parent must be supplied
Descendant method must use WriterLock on Entries


function TFileSystem.RenameEntry(AParent,AEntry:TDiskEntry; const AName:String):Boolean; virtual;
Description: To be documented
Note Parent must be supplied, Name has already been checked.

Descendant method must use WriterLock on Entries


function TFileSystem.RenameEntryEx(AParent,AEntry:TDiskEntry; const AAltName:String):Boolean; virtual;
Description: To be documented
Note Parent must be supplied, Name has already been checked.

Descendant method must use WriterLock on Entries


function TFileSystem.MoveEntry(ASource,ADest,AEntry:TDiskEntry):Boolean; virtual;
Description: To be documented
Note Source and Dest must be supplied, Name has already been checked.

Descendant method must use WriterLock on Entries


function TFileSystem.AddCatalog(AEntry:TDiskEntry; AMediaType:TMediaType; AFloppyType:TFloppyType; AAttributes:LongWord; ASectorSize:Word; const ASectorCount:Int64):TDiskCatalog; virtual;
Description: To be documented
Note Descendant method must use WriterLock on Catalogs


function TFileSystem.RemoveCatalog(ACatalog:TDiskCatalog):Boolean; virtual;
Description: To be documented
Note Descendant method must use WriterLock on Catalogs


function TFileSystem.CheckCatalog(ACatalog:TDiskCatalog; ALock:Boolean; AState:LongWord):Boolean; virtual;
Description: To be documented
Note None documented


function TFileSystem.GetCatalogByNo(ACatalogNo:LongWord; ALock:Boolean; AState:LongWord):TDiskCatalog; virtual;
Description: To be documented
Note CatalogNo is one based


function TFileSystem.GetCatalogByName(const AName:String; ALock:Boolean; AState:LongWord):TDiskCatalog; virtual;
Description: To be documented
Note None documented


function TFileSystem.GetCatalogByNext(APrevious:TDiskCatalog; ALock,AUnlock:Boolean; AState:LongWord):TDiskCatalog; virtual;
Description: To be documented
Note None documented


function TFileSystem.GetNextCatalogNo:LongWord; virtual;
Description: To be documented
Note None documented


function TFileSystem.GetMaxCatalogNo:LongWord; virtual;
Description: To be documented
Note None documented


function TFileSystem.AddHardlink(AEntry,AParent:TDiskEntry; const AName:String; AReference:Boolean):TDiskEntry; virtual;
Description: To be documented
Reference Add a reference on the returned entry if True
Note Entry and Parent must be supplied, Name has already been checked.

Descendant method must use WriterLock on Entries


function TFileSystem.RemoveHardlink(AParent,AEntry:TDiskEntry):Boolean; virtual;
Description: To be documented
Note Entry and Parent must be supplied, Entry will be deleted.

Descendant method must use WriterLock on Entries


function TFileSystem.AddMountPoint(AEntry:TDiskEntry; const ATarget:String):Boolean; virtual;
Description: To be documented
Note Entry must be supplied

Descendant method must use WriterLock on Entries


function TFileSystem.RemoveMountPoint(AEntry:TDiskEntry):Boolean; virtual;
Description: To be documented
Note Entry must be supplied, Entry will not be deleted.

Descendant method must use WriterLock on Entries


function TFileSystem.AddJunctionPoint(AEntry:TDiskEntry; const ATarget:String):Boolean; virtual;
Description: To be documented
Note Entry must be supplied

Descendant method must use WriterLock on Entries


function TFileSystem.RemoveJunctionPoint(AEntry:TDiskEntry):Boolean; virtual;
Description: To be documented
Note Entry must be supplied, Entry will not be deleted.

Descendant method must use WriterLock on Entries


function TFileSystem.AddSymbolicLink(AParent:TDiskEntry; const AName,ATarget:String; AFolder,AReference:Boolean):TDiskEntry; virtual;
Description: To be documented
Reference Add a reference on the returned entry if True
Note Parent must be supplied, Name has already been checked.

Descendant method must use WriterLock on Entries


function TFileSystem.AddSymbolicLinkEx(AParent:TDiskEntry; const AName,AAltName,ATarget:String; AFolder,AReference:Boolean):TDiskEntry; virtual;
Description: To be documented
Reference Add a reference on the returned entry if True
Note Parent must be supplied, Name has already been checked.

Descendant method must use WriterLock on Entries


function TFileSystem.RemoveSymbolicLink(AParent,AEntry:TDiskEntry):Boolean; virtual;
Description: To be documented
Note Entry and Parent must be supplied, Entry will be deleted.

Descendant method must use WriterLock on Entries


function TFileSystem.SetTable(ATable:TDiskTable):Boolean; virtual;
Description: To be documented
Note Descendant method must use WriterLock on Tables


function TFileSystem.SetBlock(ABlock:TDiskBlock):Boolean; virtual;
Description: To be documented
Note Descendant method must use WriterLock on Blocks


function TFileSystem.SetEntry(AParent,AEntry:TDiskEntry):Boolean; virtual;
Description: To be documented
Note Parent must be supplied

Descendant method must use WriterLock on Entries


function TFileSystem.SetCatalog(ACatalog:TDiskCatalog):Boolean; virtual;
Description: To be documented
Note Descendant method must use WriterLock on Catalogs


function TFileSystem.SetReparse(AParent,AEntry:TDiskEntry; AReparse:TDiskReparse):Boolean; virtual;
Description: To be documented
Note Descendant method must use WriterLock on Entries


function TFileSystem.SetSecurity(AParent,AEntry:TDiskEntry; ASecurity:TDiskSecurity):Boolean; virtual;
Description: To be documented
Note Descendant method must use WriterLock on Entries


function TFileSystem.SizeEntry(AParent,AEntry:TDiskEntry; const ASize:Int64):Boolean; virtual;
Description: To be documented
Note Parent must be supplied

Descendant method must use WriterLock on Entries


function TFileSystem.GetTable(ATableNo:LongWord):TDiskTable; virtual;
Description: To be documented
Note TableNo is zero based

Descendants may override if required


function TFileSystem.GetTableEx(ATableNo:LongWord; AWrite:Boolean):TDiskTable; virtual;
Description: To be documented
Write Use the writer lock on the blocks instead of the reader lock if True
Note TableNo is zero based

Descendants may override if required


function TFileSystem.GetBlock(ABlockNo:LongWord):TDiskBlock; virtual;
Description: To be documented
Note BlockNo is zero based

Descendants may override if required


function TFileSystem.GetBlockEx(ABlockNo:LongWord; AWrite:Boolean):TDiskBlock; virtual;
Description: To be documented
Write Use the writer lock on the blocks instead of the reader lock if True
Note BlockNo is zero based

Descendants may override if required


function TFileSystem.GetEntry(AParent:TDiskEntry; const AName:String; AAttributes:LongWord):TDiskEntry; virtual;
Description: To be documented
Attributes Attributes is the match attributes to be checked
Note If Parent is not supplied Root is assumed


function TFileSystem.GetEntryEx(AParent:TDiskEntry; const AName:String; AAttributes:LongWord; AAdd,ARemove,AWrite:Boolean):TDiskEntry; virtual;
Description: To be documented
Attributes Attributes is the match attributes to be checked
Add Add a reference on the returned entry if True
Remove Remove a reference from the parent entry if True (If supplied)
Write Use the writer lock on the entries instead of the reader lock if True
Note If Parent is not supplied Root is assumed


function TFileSystem.GetCatalog(ACatalogNo:LongWord):TDiskCatalog; virtual;
Description: To be documented
Note CatalogNo is one based


function TFileSystem.GetCatalogEx(ACatalogNo:LongWord; AWrite:Boolean):TDiskCatalog; virtual;
Description: To be documented
Note CatalogNo is one based


function TFileSystem.GetReparse(AEntry:TDiskEntry):TDiskReparse; virtual;
Description: To be documented
Note None documented


function TFileSystem.GetSecurity(AEntry:TDiskEntry):TDiskSecurity; virtual;
Description: To be documented
Note None documented


function TFileSystem.MatchEntry(AParent,APrevious:TDiskEntry; const AName:String; AAttributes:LongWord; AAny:Boolean):TDiskEntry; virtual;
Description: To be documented
Attributes Attributes is the match attributes to be checked
Note If Parent is not supplied Root is assumed


function TFileSystem.MatchEntryEx(AParent,APrevious:TDiskEntry; const AName:String; AAttributes:LongWord; AAny,AAdd,ARemove,AWrite:Boolean):TDiskEntry; virtual;
Description: To be documented
Attributes Attributes is the match attributes to be checked
Add Add a reference on the returned entry if True
Remove Remove a reference from the previous entry if True (If supplied)
Write Use the writer lock on the entries instead of the reader lock if True
Note If Parent is not supplied Root is assumed


function TFileSystem.GetEntryPath(AEntry:TDiskEntry; AAltName:Boolean):String; virtual;
Description: Get the Full Path of an Entry (Not including Entry itself)
Note Path ends with a trailing slash of PathChar unless Entry is a stream


function TFileSystem.GetEntryName(AEntry:TDiskEntry; AAltName:Boolean):String; virtual;
Description: Get the Full Name of an Entry (Including Entry itself)
Note None documented


function TFileSystem.SplitPath(const APath:String; var ARelative:Boolean; AFolders:TStrings; var AName:String):Boolean; virtual;
Description: Split a Path into the component parts
Relative Relative returns True if path is relative to current folder


function TFileSystem.SplitName(const AName:String; var AFile,AStream:String):Boolean; virtual;
Description: Split a Name into the component parts (File and Stream)
Name Name must not contain drive or path components
Return Returns False if name does not contain a stream component


function TFileSystem.SplitFile(const AFile:String; var AName,AExt:String):Boolean; virtual;
Description: Split a File into the component parts (Name and Ext)
File File must not contain drive or path components


function TFileSystem.SplitStream(const AStream:String; var AName,AType:String):Boolean; virtual;
Description: Split a Stream into the component parts (Name and Type)
Stream Stream must not contain drive, path or file components.


function TFileSystem.BuildPath(ARelative:Boolean; AFolders:TLinkedStringList; const AName:String):String; virtual;
Description: Build Path from the component parts
Relative If Relative is True then path is relative to current folder


function TFileSystem.BuildName(const AFile,AStream:String):String; virtual;
Description: Build a Name from the component parts (File and Stream)
Note None documented


function TFileSystem.BuildFile(const AName,AExt:String):String; virtual;
Description: Build a File from the component parts (Name and Ext)
Note None documented


function TFileSystem.BuildStream(const AName,AType:String):String; virtual;
Description: Build a Stream from the component parts (Name and Type)
Note None documented


function TFileSystem.CheckName(const AName:String):Boolean; virtual;
Description: Performs Name validation based on File System rules
Note None documented


function TFileSystem.CompareName(const AName,AMatch:String; AWildcard:Boolean):Boolean; virtual;
Description: Perform Name matching based on File System rules for Case-sensitivity etc
Note Also provides Wildcard matching based on File System rules


function TFileSystem.CheckAltName(const AAltName:String):Boolean; virtual;
Description: Performs Name validation based on File System rules
Note None documented


function TFileSystem.CompareAltName(const AAltName,AMatch:String; AWildcard:Boolean):Boolean; virtual;
Description: To be documented
Note None documented


function TFileSystem.CheckLinkName(const AName:String):Boolean; virtual;
Description: To be documented
Note None documented


function TFileSystem.GetSecurityFromDescriptor(ADescriptor:Pointer):TDiskSecurity; virtual;
Description: To be documented
Note None documented


function TFileSystem.GetDescriptorFromSecurity(ASecurity:TDiskSecurity; ADescriptor:Pointer; var ASize:LongWord):Boolean; virtual;
Description: To be documented
Note None documented


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


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


function TFileSystem.ReaderConvert:Boolean; virtual;
Description: Convert a Reader lock to a Writer lock
Note None documented


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


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


function TFileSystem.WriterConvert:Boolean; virtual;
Description: To be documented
Note None documented


function TFileSystem.FileSystemInit:Boolean; virtual;
Description: To be documented
Note None documented


function TFileSystem.MountFileSystem:Boolean; virtual;
Description: To be documented
Note None documented

function TFileSystem.DismountFileSystem:Boolean; virtual;
Description: To be documented
Note None documented


function TFileSystem.InitializeFileSystem(ASectorsPerCluster:LongWord; AFileSysType:TFileSysType):Boolean; virtual;
Description: To be documented
Note None documented


function TFileSystem.CreateCatalog(const AName:String; AMediaType:TMediaType; AFloppyType:TFloppyType; AAttributes:LongWord; ASectorSize:Word; const ASectorCount:Int64):LongWord; virtual;
Description: To be documented
Note None documented


function TFileSystem.DeleteCatalog(ACatalogNo:LongWord):Boolean; virtual;
Description: To be documented
Note None documented


function TFileSystem.FindFirstCatalog(var ASearchRec:TCatalogSearchRec):Integer; virtual;
Description: To be documented
Note None documented


function TFileSystem.FindNextCatalog(var ASearchRec:TCatalogSearchRec):Integer; virtual;
Description: To be documented
Note None documented


procedure TFileSystem.FindCatalogClose(var ASearchRec:TCatalogSearchRec); virtual;
Description: Close an open find Handle
Note None documented


function TFileSystem.GetDriveLabel:String; virtual;
Description: To be documented
Note None documented


function TFileSystem.SetDriveLabel(const ALabel:String):Boolean; virtual;
Description: To be documented
Note None documented


function TFileSystem.GetDriveSerial:LongWord; virtual;
Description: To be documented
Note None documented


function TFileSystem.SetDriveSerial(ASerial:LongWord):Boolean; virtual;
Description: To be documented
Note None documented


function TFileSystem.GetDriveFreeSpace:LongWord; virtual;
Description: Return the Free space on Drive up to 2GB
Note None documented


function TFileSystem.GetDriveFreeSpaceEx:Int64; virtual;
Description: To be documented
Note None documented


function TFileSystem.GetDriveTotalSpace:LongWord; virtual;
Description: Return the Total space on Drive up to 2GB
Note None documented


function TFileSystem.GetDriveTotalSpaceEx:Int64; virtual;
Description: Return the Total space on Drive up to 4TB
Note None documented


function TFileSystem.GetDriveInformation(var AClusterSize:LongWord; var ATotalClusterCount,AFreeClusterCount:Int64):Boolean; virtual;
Description: To be documented
Note None documented


function TFileSystem.FileOpen(const FileName:String; Mode:Integer):THandle; virtual;
Description: Open existing entry and return Handle
Note FileOpen can also open Folders but the handle can only be used for Get/SetFileTime

Cannot create with FileOpen


function TFileSystem.FileCreate(const FileName:String; Mode:Integer = fmOpenReadWrite or fmShareExclusive):THandle; virtual;
Description: Create new entry or truncate existing entry and return Handle
Note Cannot create Folders with FileCreate


function TFileSystem.DeleteFile(const FileName:String):Boolean; virtual;
Description: Delete existing entry
Note None documented


procedure TFileSystem.FileClose(Handle:THandle); virtual;
Description: Close open handle
Note None documented


function TFileSystem.RenameFile(const OldName,NewName:String):Boolean; virtual;
Description: Rename existing entry
Note If 8.3 then modify entry if Long then create new entry, delete existing.


function TFileSystem.FileSeek(Handle:THandle; Offset,Origin:LongInt):LongInt; virtual;
Description: Move the position of an open handle
Note None documented


function TFileSystem.FileSeekEx(Handle:THandle; const Offset:Int64; Origin:LongInt):Int64; virtual;
Description: Move the position of an open handle
Note File Seeks can extend the size if OpenMode is Write or ReadWrite


function TFileSystem.FileFlush(Handle:THandle):Boolean; virtual;
Description: Flush an open handle from Cache
Note Currently just flushes the Cache


function TFileSystem.FileTruncate(Handle:THandle):Boolean; virtual;
Description: Truncate an open file at the current position
Note Can extend a file as well as truncate


function TFileSystem.FilePos(Handle:THandle):LongInt; virtual;
Description: Return the position of an open Handle
Note None documented


function TFileSystem.FilePosEx(Handle:THandle):Int64; virtual;
Description: Return the position of an open Handle
Note None documented


function TFileSystem.FileGetAttr(const FileName:String):Integer; virtual;
Description: Get the attributes of an existing entry
Note None documented


function TFileSystem.FileGetDate(Handle:THandle):Integer; virtual;
Description: Get the date/time of an existing entry with an open Handle
Note Returned time is converted to Local


function TFileSystem.FileGetSize(Handle:THandle):LongInt; virtual;
Description: Get the size of an existing entry with an open Handle
Note None documented


function TFileSystem.FileGetSizeEx(Handle:THandle):Int64; virtual;
Description: Get the size of an existing entry with an open Handle
Note None documented


function TFileSystem.FileSetAttr(const FileName:String; Attr:Integer):Integer; virtual;
Description: Set the attributes of an existing entry
Note File attributes can be set regardless of existing Handles


function TFileSystem.FileSetDate(Handle:THandle; Age:Integer):Integer; virtual;
Description: Set the date/time of an existing entry with an open Handle
Note Passed time is assumed to be Local and is converted to UTC


function TFileSystem.FileSetSize(Handle:THandle; Size:LongInt):LongInt; virtual;
Description: Set the size of an existing entry with an open Handle
Note None documented


function TFileSystem.FileSetSizeEx(Handle:THandle; const Size:Int64):LongInt; virtual;
Description: Set the size of an existing entry with Open handle
Note None documented


function TFileSystem.FileRead(Handle:THandle; var Buffer;Count:LongInt):LongInt; virtual;
Description: Read data from an existing entry with an open Handle
Note Position may be beyond the end of the file

A read from beyond the end of the file will return 0 bytes


function TFileSystem.FileWrite(Handle:THandle; const Buffer; Count:LongInt):LongInt; virtual;
Description: Write data to an existing entry with an open Handle
Note Position may be beyond the end of the file

A write to beyond the end of the file will succeed and Size will be Position plus Count


function TFileSystem.CreateDir(const DirName:String):Boolean; virtual;
Description: Create a new entry
Note No File or Stream support


function TFileSystem.RemoveDir(const DirName:String):Boolean; virtual;
Description: Delete an existing entry
Note No File or Stream support


function TFileSystem.GetCurrentDir:String; virtual;
Description: Return the current directory
Note No File or Stream support


function TFileSystem.SetCurrentDir(const DirName:String):Boolean; virtual;
Description: Set the current directory to an existing entry}{No File or Stream support
Note None documented


function TFileSystem.FindFirstEx(const Path:String; var SearchRec:TFileSearchRec):Integer; virtual;
Description: Find existing entries matching the specifications
Note None documented


function TFileSystem.FindNextEx(var SearchRec:TFileSearchRec):Integer; virtual;
Description: Continue Finding existing entries matching the specifications
Note None documented


procedure TFileSystem.FindCloseEx(var SearchRec:TFileSearchRec); virtual;
Description: Close an open find Handle
Note None documented


function TFileSystem.FindFirstStream(const FileName:String; var SearchRec:TStreamSearchRec):Integer; virtual;
Description: Find existing streams matching the specifications
Note This does not return the default data stream for files


function TFileSystem.FindNextStream(var SearchRec:TStreamSearchRec):Integer; virtual;
Description: Continue finding existing streams matching the specifications
Note This does not return the default data stream for files


procedure TFileSystem.FindStreamClose(var SearchRec:TStreamSearchRec); virtual;
Description: Close an open find Handle
Note None documented


function TFileSystem.FindFirstFileName(const FileName:String; var SearchRec:TLinkSearchRec):Integer; virtual;
Description: Find existing file names matching the specifications
Note None documented


function TFileSystem.FindNextFileName(var SearchRec:TLinkSearchRec):Integer; virtual;
Description: Continue finding existing file names matching the specifications
Note None documented


procedure TFileSystem.FindFileNameClose(var SearchRec:TLinkSearchRec); virtual;
Description: Close an open find Handle
Note None documented


function TFileSystem.CreateHardLink(const LinkName,FileName:String):Boolean; virtual;
Description: To be documented
Note Link must not exist, File must exist and must be a file. Both must be on the same volume.


function TFileSystem.DeleteHardLink(const LinkName:String):Boolean; virtual;
Description: To be documented
Note Link must exist and must be a file


function TFileSystem.CreateMountPoint(const PathName,VolumeName:String):Boolean; virtual;
Description: To be documented
Note Path must exist and must be a folder, Volume value is not checked.


function TFileSystem.DeleteMountPoint(const PathName:String):Boolean; virtual;
Description: To be documented
Note Path must exist and must be a folder


function TFileSystem.CreateJunctionPoint(const PathName,FolderName:String):Boolean; virtual;
Description: To be documented
Note Path must exist and must be a folder, Folder value is not checked.


function TFileSystem.DeleteJunctionPoint(const PathName:String):Boolean; virtual;
Description: To be documented
Note Path must exist and must be a folder


function TFileSystem.CreateSymbolicLink(const LinkName,TargetName:String; Directory:Boolean):Boolean; virtual;
Description: To be documented
Note Link must not exist, Target value is not checked.


function TFileSystem.CreateSymbolicLinkEx(const LinkName,ShortName,TargetName:String; Directory:Boolean):Boolean; virtual;
Description: To be documented
Note Link must not exist, Target value is not checked.


function TFileSystem.DeleteSymbolicLink(const LinkName:String):Boolean; virtual;
Description: To be documented
Note Link must exist


function TFileSystem.GetMountPointTarget(const PathName:String):String; virtual;
Description: To be documented
Note None documented


function TFileSystem.GetJunctionPointTarget(const PathName:String):String; virtual;
Description: To be documented
Note None documented


function TFileSystem.GetSymbolicLinkTarget(const LinkName:String):String; virtual;
Description: To be documented
Note None documented


function TFileSystem.SetFileShortName(const FileName,ShortName:String):Boolean; virtual;
Description: To be documented
Note No Stream Support


function TFileSystem.SetFileShortNameEx(Handle:THandle; const ShortName:String):Boolean; virtual;
Description: To be documented
Note No Stream Support


function TFileSystem.GetFileSecurity(const FileName:String; Descriptor:Pointer; var Size:LongWord):Boolean; virtual;
Description: To be documented
Note None documented


function TFileSystem.SetFileSecurity(const FileName:String; Descriptor:Pointer):Boolean; virtual;
Description: To be documented
Note None documented


function TFileSystem.GetPathName(const FileName:String):String; virtual;
Description: Get the path from the supplied name (Does not include trailing slash)
Note None documented


function TFileSystem.GetShortName(const FileName:String):String; virtual;
Description: Convert the supplied name to its Short name form
Note None documented


function TFileSystem.GetLongName(const FileName:String):String; virtual;
Description: Convert the supplied name to its Long name form
Note None documented


function TFileSystem.GetTrueName(const FileName:String):String; virtual;
Description: Convert the supplied name to its True name form
Note Almost the same as GetShortName function


function TFileSystem.FileCreateEx(const FileName,ShortName:String; Mode:Integer = fmOpenReadWrite or fmShareExclusive):THandle; virtual;
Description: Create new entry or truncate existing entry and return Handle
Note Cannot create Folders with FileCreateEx

ShortName does not apply to Streams


function TFileSystem.CreateDirEx(const DirName,ShortName:String):Boolean; virtual;
Description: Create a new entry}{No File or Stream support
Note None documented


function TFileSystem.FileGetAttrEx(Handle:THandle):Integer; virtual;
Description: Get the Attributes of an existing entry with an open Handle
Note None documented


function TFileSystem.FileGetDateEx(Handle:THandle):TFileTime; virtual;
Description: Get the Date/Time of an existing entry with an open Handle
Note Returned time is UTC


function TFileSystem.FileSetDateEx(Handle:THandle; Age:TFileTime):Integer; virtual;
Description: Set the Date/Time of an existing entry with an open Handle
Note Passed time is assumed to be UTC


function TFileSystem.GetFileTime(Handle:THandle; CreateTime,AccessTime,ModifyTime:PFileTime):Boolean; virtual;
Description: Get the Dates and Times of an existing entry with an open Handle
Note Returned time is UTC


function TFileSystem.SetFileTime(Handle:THandle; CreateTime,AccessTime,ModifyTime:PFileTime):Boolean; virtual;
Description: Set the Dates and Times of an existing entry with an open Handle
Note Passed times are assumed to be UTC and are converted to Local


function TFileSystem.CloseFile(Handle:THandle):Boolean; virtual;
Description: Close open handle
Note Equivalent to Win32 CloseHandle


Return to Unit Reference