Unit storagemanagement

Description

Driver->Storage->StorageManagment Storage Managment System

Overview

Classes, Interfaces, Objects and Records

Name Description
Record TFilesystem  
Record TStorage_Volume  
Record TStorage_Device  
Record TDirectory_Entry  

Functions and Procedures

procedure init();
procedure register_device(device : PStorage_Device);
function get_device_list() : PLinkedListBase;
procedure register_filesystem(filesystem : PFilesystem);
procedure register_volume(device : PStorage_Device; volume : PStorage_Volume);

Types

TControllerType = (...);
TDirectory_Entry_Type = (...);
PStorage_volume = ˆTStorage_Volume;
PStorage_device = ˆTStorage_Device;
APStorage_Volume = array[0..10] of PStorage_volume;
byteArray8 = array[0..7] of char;
PByteArray8 = ˆbyteArray8;
PDirectory_Entry = ˆTDirectory_Entry;
PPWriteHook = procedure(volume : PStorage_volume; directory : pchar; entry : PDirectory_Entry; byteCount : uint32; buffer : puint32; statusOut : puint32);
PPReadHook = function(volume : PStorage_Volume; directory : pchar; fileName : pchar; fileExtension : pchar; buffer : puint32; bytecount : puint32) : uint32;
PPHIOHook = procedure(volume : PStorage_device; addr : uint32; sectors : uint32; buffer : puint32);
PPCreateHook = procedure(disk : PStorage_Device; sectors : uint32; start : uint32; config : puint32);
PPDetectHook = procedure(disk : PStorage_Device);
PPCreateDirHook = procedure(volume : PStorage_volume; directory : pchar; dirname : pchar; attributes : uint32; status : puint32);
PPReadDirHook = function(volume : PStorage_volume; directory : pchar; status : puint32) : PLinkedListBase;
PPHIOHook_ = procedure;
PFileSystem = ˆTFilesystem;
APStorage_Device = array[0..255] of PStorage_device;

Variables

storageDevices: PLinkedListBase;
fileSystems: PLinkedListBase;
rootVolume: PStorage_Volume = PStorage_Volume(0);

Description

Functions and Procedures

procedure init();
 
procedure register_device(device : PStorage_Device);
 
function get_device_list() : PLinkedListBase;
 
procedure register_filesystem(filesystem : PFilesystem);
 
procedure register_volume(device : PStorage_Device; volume : PStorage_Volume);
 

Types

TControllerType = (...);
 
Values
  • ControllerIDE
  • ControllerUSB
  • ControllerAHCI
  • ControllerNET
  • ControllerRAM
  • rsvctr1
  • rsvctr2
  • rsvctr3
TDirectory_Entry_Type = (...);
 
Values
  • directoryEntry
  • fileEntry
  • mountEntry
PStorage_volume = ˆTStorage_Volume;
 
PStorage_device = ˆTStorage_Device;
 
APStorage_Volume = array[0..10] of PStorage_volume;
 
byteArray8 = array[0..7] of char;
 
PByteArray8 = ˆbyteArray8;
 
PDirectory_Entry = ˆTDirectory_Entry;
 
PPWriteHook = procedure(volume : PStorage_volume; directory : pchar; entry : PDirectory_Entry; byteCount : uint32; buffer : puint32; statusOut : puint32);
 
PPReadHook = function(volume : PStorage_Volume; directory : pchar; fileName : pchar; fileExtension : pchar; buffer : puint32; bytecount : puint32) : uint32;
 
PPHIOHook = procedure(volume : PStorage_device; addr : uint32; sectors : uint32; buffer : puint32);
 
PPCreateHook = procedure(disk : PStorage_Device; sectors : uint32; start : uint32; config : puint32);
 
PPDetectHook = procedure(disk : PStorage_Device);
 
PPCreateDirHook = procedure(volume : PStorage_volume; directory : pchar; dirname : pchar; attributes : uint32; status : puint32);
 
PPReadDirHook = function(volume : PStorage_volume; directory : pchar; status : puint32) : PLinkedListBase;
 
PPHIOHook_ = procedure;

returns: 0 = success, 1 = dir not exsist, 2 = not directory, 3 = error //returns: 0 = success, 1 = dir not exsist, 2 = not directory, 3 = error

PFileSystem = ˆTFilesystem;
 
APStorage_Device = array[0..255] of PStorage_device;
 

Variables

storageDevices: PLinkedListBase;
 
fileSystems: PLinkedListBase;

index in this array is global drive id

rootVolume: PStorage_Volume = PStorage_Volume(0);
 

Author


Generated by PasDoc 0.16.0.