diff options
author | tobigun <tobigun@b956fd51-792f-4845-bead-9b4dfca2ff2c> | 2009-03-14 21:18:50 +0000 |
---|---|---|
committer | tobigun <tobigun@b956fd51-792f-4845-bead-9b4dfca2ff2c> | 2009-03-14 21:18:50 +0000 |
commit | a92d9807237a024106b67f045822679f7ee4df54 (patch) | |
tree | 5f2c2501be7da18d2b82216fe60e645d1a2caaac /unicode/src/base/URingBuffer.pas | |
parent | c61a339ad465ecb43897975538a77c3eb87110be (diff) | |
download | usdx-a92d9807237a024106b67f045822679f7ee4df54.tar.gz usdx-a92d9807237a024106b67f045822679f7ee4df54.tar.xz usdx-a92d9807237a024106b67f045822679f7ee4df54.zip |
merge with current trunk (just update)
git-svn-id: svn://svn.code.sf.net/p/ultrastardx/svn/branches/experimental@1634 b956fd51-792f-4845-bead-9b4dfca2ff2c
Diffstat (limited to '')
-rw-r--r-- | unicode/src/base/URingBuffer.pas | 24 |
1 files changed, 18 insertions, 6 deletions
diff --git a/unicode/src/base/URingBuffer.pas b/unicode/src/base/URingBuffer.pas index 515d0efb..684c13ee 100644 --- a/unicode/src/base/URingBuffer.pas +++ b/unicode/src/base/URingBuffer.pas @@ -39,7 +39,7 @@ uses type TRingBuffer = class private - RingBuffer: PChar; + RingBuffer: PByteArray; BufferCount: integer; BufferSize: integer; WritePos: integer; @@ -47,8 +47,10 @@ type public constructor Create(Size: integer); destructor Destroy; override; - function Read(Buffer: PChar; Count: integer): integer; - function Write(Buffer: PChar; Count: integer): integer; + function Read(Buffer: PByteArray; Count: integer): integer; + function Write(Buffer: PByteArray; Count: integer): integer; + function Size(): integer; + function Available(): integer; procedure Flush(); end; @@ -71,7 +73,7 @@ begin FreeMem(RingBuffer); end; -function TRingBuffer.Read(Buffer: PChar; Count: integer): integer; +function TRingBuffer.Read(Buffer: PByteArray; Count: integer): integer; var PartCount: integer; begin @@ -106,7 +108,7 @@ begin Result := Count; end; -function TRingBuffer.Write(Buffer: PChar; Count: integer): integer; +function TRingBuffer.Write(Buffer: PByteArray; Count: integer): integer; var PartCount: integer; begin @@ -143,6 +145,16 @@ begin Result := Count; end; +function TRingBuffer.Available(): integer; +begin + Result := BufferCount; +end; + +function TRingBuffer.Size(): integer; +begin + Result := BufferSize; +end; + procedure TRingBuffer.Flush(); begin ReadPos := 0; @@ -150,4 +162,4 @@ begin BufferCount := 0; end; -end.
\ No newline at end of file +end. |