Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- TAbstractFile = CLASS ABSTRACT
- (***) PROTECTED (***)
- CONST
- MIN_BUF_SIZE = 64 * 1024;
- MAX_BUF_SIZE = 1024 * 1024;
- VAR
- fMode: TDeviceMode;
- fHasKnownSize: BOOLEAN;
- fSizeIsConst: BOOLEAN;
- fSize: INTEGER;
- fPos: INTEGER;
- fEOF: BOOLEAN;
- (***) PUBLIC (***)
- (* Core *)
- // Reads 1..Count bytes
- FUNCTION ReadUpTo
- (
- Count: INTEGER;
- {n} Buf: POINTER;
- OUT BytesRead: INTEGER
- ): BOOLEAN; VIRTUAL; ABSTRACT;
- // Writes 1..Count bytes
- FUNCTION WriteUpTo
- (
- Count: INTEGER;
- {n} Buf: POINTER;
- OUT ByteWritten: INTEGER
- ): BOOLEAN; VIRTUAL; ABSTRACT;
- FUNCTION Seek (NewPos: INTEGER): BOOLEAN; VIRTUAL; ABSTRACT;
- (* Reading *)
- FUNCTION Read (Count: INTEGER; {n} Buf: POINTER): BOOLEAN;
- FUNCTION ReadByte (OUT Res: BYTE): BOOLEAN;
- FUNCTION ReadInt (OUT Res: INTEGER): BOOLEAN;
- FUNCTION ReadStr (Count: INTEGER; OUT Res: STRING): BOOLEAN;
- FUNCTION ReadAllToBuf (OUT Buf: POINTER; OUT Size: INTEGER): BOOLEAN;
- FUNCTION ReadAllToStr (OUT Str: STRING): BOOLEAN;
- (* Writing *)
- FUNCTION Write (Count: INTEGER; {n} Buf: POINTER): BOOLEAN;
- FUNCTION WriteByte (Data: BYTE): BOOLEAN;
- FUNCTION WriteWord (Data: WORD): BOOLEAN;
- FUNCTION WriteInt (Data: INTEGER): BOOLEAN;
- FUNCTION WriteStr (Data: STRING): BOOLEAN;
- FUNCTION WriteFrom (Count: INTEGER; Source: TAbstractFile): BOOLEAN;
- FUNCTION WriteAllFrom (Source: TAbstractFile): BOOLEAN;
- PROPERTY Mode: TDeviceMode READ fMode;
- PROPERTY HasKnownSize: BOOLEAN READ fHasKnownSize;
- PROPERTY SizeIsConst: BOOLEAN READ fSizeIsConst;
- PROPERTY Size: INTEGER READ fSize;
- PROPERTY Pos: INTEGER READ fPos;
- PROPERTY EOF: BOOLEAN READ fEOF;
- END; // .CLASS TAbstractFile
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement