| with Interfaces.C; |
| with Interfaces.C.Strings; |
| with System; |
| |
| package FILO.FS.NullFS is |
| type NullFS_Type is private; |
| |
| |
| procedure Mount |
| (Item : in out NullFS_Type; |
| Success : out Boolean); |
| |
| procedure Open |
| (Item : in out NullFS_Type; |
| Path : in String; |
| Success : out Boolean); |
| |
| procedure Read |
| (Item : in out NullFS_Type; |
| Buffer : in out Buffer_Type; |
| Offset : in Natural; |
| Success : out Boolean); |
| |
| procedure Close |
| (Item : in out NullFS_Type; |
| Success : out Boolean); |
| |
| --------------------------------------------------------------------- |
| |
| function C_Mount return Interfaces.C.int |
| with |
| Export, |
| Convention => C, |
| External_Name => "nullfs_mount"; |
| |
| function C_Read |
| (buf : System.Address; |
| len : Interfaces.C.int) |
| return Interfaces.C.int |
| with |
| Export, |
| Convention => C, |
| External_Name => "nullfs_read"; |
| |
| function C_Dir |
| (Path : Interfaces.C.Strings.chars_ptr) |
| return Interfaces.C.int |
| with |
| Export, |
| Convention => C, |
| External_Name => "nullfs_dir"; |
| |
| function C_Close return Interfaces.C.int |
| with |
| Export, |
| Convention => C, |
| External_Name => "nullfs_close"; |
| |
| private |
| type State_Type is (Unmounted, Mounted, File_Open); |
| |
| type NullFS_Type is record |
| State : State_Type; |
| end record; |
| |
| end FILO.FS.NullFS; |