Difference between revisions of "Unit EXTFS"
From Ultibo.org
								
												
				 (Created page with "Return to Unit Reference   === Description === ----  ''To be documented''  === Constants === ----  ''To be documented''  === Type definitions === ----  ''To...")  | 
				|||
| Line 4: | Line 4: | ||
=== Description ===  | === Description ===  | ||
----  | ----  | ||
| + | |||
| + | '''Ultibo EXT2/3/4 File System interface unit'''  | ||
''To be documented''  | ''To be documented''  | ||
| Line 10: | Line 12: | ||
----  | ----  | ||
| − | ''  | + | |
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial; padding-top: 20px; padding-bottom: 15px;">  | ||
| + | <div style="font-size: 14px; padding-left: 12px;"> <code> extfs_* </code></div>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>extfsEXT2 = 0;</code>  | ||
| + | | style="width: 50%;"|   | ||
| + | |-  | ||
| + | | <code>extfsEXT3 = 1;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>rxtfsEXT4 = 2;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |colspan="2"|   | ||
| + | |-  | ||
| + | | <code>extfsNames:array[0..2] of String = (</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>'EXT2',</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>'EXT3',</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>'EXT4');</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />  | ||
=== Type definitions ===  | === Type definitions ===  | ||
----  | ----  | ||
| − | ''  | + | |
| + | '''EXTFS specific types'''  | ||
| + | |||
| + | {| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"  | ||
| + | |-  | ||
| + | | <code>TEXTFSType = (etNONE,etEXT2,etEXT3,etEXT4);</code>  | ||
| + | | style="width: 40%;"|  | ||
| + | |-  | ||
| + | |}  | ||
| + | <br />  | ||
| + | |||
| + | === Class definitions ===  | ||
| + | ----  | ||
| + | |||
| + | |||
| + | '''EXTFS recognizer'''  | ||
| + | |||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">  | ||
| + | |||
| + | <code>TEXTFSRecognizer = class(TRecognizer)</code>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>constructor Create(ADriver:TFileSysDriver);</code>  | ||
| + | | style="width: 50%;"|   | ||
| + | |-  | ||
| + | |colspan="2"|<div style="font-family: monospace,courier;">'''private'''</div>  | ||
| + | |-  | ||
| + | |colspan="2"|   | ||
| + | |-  | ||
| + | |colspan="2"|<div style="font-family: monospace,courier;">'''protected'''</div>  | ||
| + | |-  | ||
| + | | <code>function GetName:String; override;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>  | ||
| + | |-  | ||
| + | | <code>function RecognizePartitionId(APartitionId:Byte):Boolean; override;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>function RecognizeBootSector(ABootSector:PBootSector; const AStartSector,ASectorCount:Int64):Boolean; override;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |colspan="2"|   | ||
| + | |-  | ||
| + | | <code>function RecognizePartition(APartition:TDiskPartition):Boolean; override;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>function RecognizeVolume(AVolume:TDiskVolume):Boolean; override;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>function MountVolume(AVolume:TDiskVolume; ADrive:TDiskDrive):Boolean; override;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | |||
| + | '''EXTFS partitioner'''  | ||
| + | |||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">  | ||
| + | |||
| + | <code>TEXTFSPartitioner = class(TDiskPartitioner)</code>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>constructor Create(ADriver:TFileSysDriver; ARecognizer:TRecognizer);</code>  | ||
| + | | style="width: 50%;"|   | ||
| + | |-  | ||
| + | |colspan="2"|<div style="font-family: monospace,courier;">'''private'''</div>  | ||
| + | |-  | ||
| + | |colspan="2"|   | ||
| + | |-  | ||
| + | |colspan="2"|<div style="font-family: monospace,courier;">'''protected'''</div>  | ||
| + | |-  | ||
| + | | <code>function CheckLogical(ADevice:TDiskDevice; AParent:TDiskPartition; APartitionId:Byte):Boolean; override;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | | <code>function CheckExtended(ADevice:TDiskDevice; AParent:TDiskPartition; APartitionId:Byte):Boolean; override;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |colspan="2"|   | ||
| + | |-  | ||
| + | | <code>function GetPartitionId(ADevice:TDiskDevice; AParent:TDiskPartition; AStart,ACount:LongWord; APartitionId:Byte):Byte; override;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |colspan="2"|   | ||
| + | |-  | ||
| + | | <code>function InitPartition(ADevice:TDiskDevice; AParent:TDiskPartition; AStart,ACount:LongWord; APartitionId:Byte):Boolean; override;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>  | ||
| + | |-  | ||
| + | | <code>function AcceptPartition(ADevice:TDiskDevice; APartition,AParent:TDiskPartition; APartitionId:Byte):Boolean; override;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | |||
| + | '''EXTFS filesystem'''   | ||
| + | |||
| + | <div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">  | ||
| + | |||
| + | <code>TEXTFSFileSystem = class(TFileSystem)</code>  | ||
| + | <div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | | <code>constructor Create(ADriver:TFileSysDriver; AVolume:TDiskVolume; ADrive:TDiskDrive);</code>  | ||
| + | | style="width: 50%;"|   | ||
| + | |-  | ||
| + | | <code>destructor Destroy; override;</code>  | ||
| + | |    | ||
| + | |-  | ||
| + | |colspan="2"|<div style="font-family: monospace,courier;">'''private'''</div>  | ||
| + | |-  | ||
| + | |colspan="2"|   | ||
| + | |-  | ||
| + | |colspan="2"|<div style="font-family: monospace,courier;">'''public'''</div>  | ||
| + | |-  | ||
| + | |colspan="2"|   | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />  | ||
=== Public variables ===  | === Public variables ===  | ||
----  | ----  | ||
| − | ''  | + | ''None defined''  | 
=== Function declarations ===  | === Function declarations ===  | ||
----  | ----  | ||
| − | |||
| + | '''Initialization functions'''  | ||
| + | |||
| + | <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 EXTFSInit;</pre>  | ||
| + | <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;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | ! '''Note'''  | ||
| + | | None documented  | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <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;">procedure EXTFSQuit;</pre>  | ||
| + | <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;">  | ||
| + | {| class="wikitable" style="font-size: 14px; background: white;"  | ||
| + | |-  | ||
| + | ! '''Note'''  | ||
| + | | None documented  | ||
| + | |-  | ||
| + | |}  | ||
| + | </div></div>  | ||
| + | <br />  | ||
Return to [[Unit_Reference|Unit Reference]]  | Return to [[Unit_Reference|Unit Reference]]  | ||
Revision as of 03:46, 19 June 2017
Return to Unit Reference
Contents
Description
Ultibo EXT2/3/4 File System interface unit
To be documented
Constants
 extfs_*  extfsEXT2 = 0;
 | 
|
 extfsEXT3 = 1;
 | 
|
 rxtfsEXT4 = 2;
 | 
|
 extfsNames:array[0..2] of String = (
 | 
|
 'EXT2',
 | 
|
 'EXT3',
 | 
|
 'EXT4');
 | 
|
Type definitions
EXTFS specific types
 TEXTFSType = (etNONE,etEXT2,etEXT3,etEXT4);
 | 
Class definitions
EXTFS recognizer
TEXTFSRecognizer = class(TRecognizer)
 constructor Create(ADriver:TFileSysDriver);
 | 
|
private 
 | |
protected 
 | |
 function GetName:String; override;
 | 
|
public 
 | |
 function RecognizePartitionId(APartitionId:Byte):Boolean; override;
 | 
|
 function RecognizeBootSector(ABootSector:PBootSector; const AStartSector,ASectorCount:Int64):Boolean; override;
 | 
|
 function RecognizePartition(APartition:TDiskPartition):Boolean; override;
 | 
|
 function RecognizeVolume(AVolume:TDiskVolume):Boolean; override;
 | 
|
 function MountVolume(AVolume:TDiskVolume; ADrive:TDiskDrive):Boolean; override;
 | 
|
EXTFS partitioner
TEXTFSPartitioner = class(TDiskPartitioner)
 constructor Create(ADriver:TFileSysDriver; ARecognizer:TRecognizer);
 | 
|
private 
 | |
protected 
 | |
 function CheckLogical(ADevice:TDiskDevice; AParent:TDiskPartition; APartitionId:Byte):Boolean; override;
 | 
|
 function CheckExtended(ADevice:TDiskDevice; AParent:TDiskPartition; APartitionId:Byte):Boolean; override;
 | 
|
 function GetPartitionId(ADevice:TDiskDevice; AParent:TDiskPartition; AStart,ACount:LongWord; APartitionId:Byte):Byte; override;
 | 
|
 function InitPartition(ADevice:TDiskDevice; AParent:TDiskPartition; AStart,ACount:LongWord; APartitionId:Byte):Boolean; override;
 | 
|
public 
 | |
 function AcceptPartition(ADevice:TDiskDevice; APartition,AParent:TDiskPartition; APartitionId:Byte):Boolean; override;
 | 
|
EXTFS filesystem
TEXTFSFileSystem = class(TFileSystem)
 constructor Create(ADriver:TFileSysDriver; AVolume:TDiskVolume; ADrive:TDiskDrive);
 | 
|
 destructor Destroy; override;
 | 
|
private 
 | |
public 
 | |
Public variables
None defined
Function declarations
Initialization functions
procedure EXTFSInit;
Description: To be documented
| Note | None documented | 
|---|
procedure EXTFSQuit;
Description: To be documented
| Note | None documented | 
|---|
Return to Unit Reference