* fixed compile errors

git-svn-id: trunk@1694 -
This commit is contained in:
peter 2005-11-08 11:29:18 +00:00
parent 91324759e4
commit 87846e5986
2 changed files with 23 additions and 20 deletions

View File

@ -4,18 +4,19 @@
{$MODE objfpc} {$MODE objfpc}
program asiotest; program asiotest;
uses SysUtils, Classes, Crt, AsyncIO; uses SysUtils, Classes, Crt, FPAsync;
type type
TASIOTest = class TASIOTest = class
protected protected
FManager: TAsyncIOManager; FManager: Teventloop;
Input: THandleStream; Input: THandleStream;
MyTimer : Pointer;
procedure InputAvailable(UserData: TObject); procedure InputAvailable(UserData: TObject);
procedure Timeout(UserData: TObject); procedure TimerHandler(UserData: TObject);
public public
constructor Create(AManager: TAsyncIOManager); constructor Create(AManager: Teventloop);
destructor Destroy; override; destructor Destroy; override;
end; end;
@ -33,24 +34,26 @@ begin
WriteLn('#', b); WriteLn('#', b);
case b of case b of
Ord('q'): FManager.BreakRun; Ord('q'): FManager.Break;
Ord('t'): FManager.ClearTimeoutHandler; Ord('t'): begin
FManager.RemoveTimerNotify(MyTimer);
writeln('Timer stopped');
end;
end; end;
end; end;
procedure TASIOTest.Timeout(UserData: TObject); procedure TASIOTest.TimerHandler(UserData: TObject);
begin begin
WriteLn('Timeout'); writeln('Timer');
end; end;
constructor TASIOTest.Create(AManager: TAsyncIOManager); constructor TASIOTest.Create(AManager: Teventloop);
begin begin
inherited Create; inherited Create;
FManager := AManager; FManager := AManager;
Input := THandleStream.Create(StdInputHandle); Input := THandleStream.Create(StdInputHandle);
AManager.SetReadHandler(Input.Handle, @InputAvailable, nil); AManager.SetIONotify(Input.Handle, @InputAvailable, nil);
AManager.SetTimeoutHandler(@Timeout, nil); MyTimer:=AManager.AddTimerNotify(1000,true,@TimerHandler,nil);
AManager.Timeout := 1000;
end; end;
destructor TASIOTest.Destroy; destructor TASIOTest.Destroy;
@ -60,13 +63,13 @@ end;
var var
AsyncIOManager: TAsyncIOManager; AsyncIOManager: Teventloop;
app: TASIOTest; app: TASIOTest;
begin begin
WriteLn('Exit with "q", use "t" to stop the timeout handler'); WriteLn('Exit with "q", use "t" to stop the timer handler');
AsyncIOManager := TAsyncIOManager.Create; AsyncIOManager := Teventloop.Create;
app := TASIOTest.Create(AsyncIOManager); app := TASIOTest.Create(AsyncIOManager);
AsyncIOManager.Run; AsyncIOManager.Run;

View File

@ -14,9 +14,9 @@ Const TypeNames : Array [TTYpeKind] of string[15] =
('Unknown','Integer','Char','Enumeration', ('Unknown','Integer','Char','Enumeration',
'Float','Set','Method','ShortString','LongString', 'Float','Set','Method','ShortString','LongString',
'AnsiString','WideString','Variant','Array','Record', 'AnsiString','WideString','Variant','Array','Record',
'Interface','Class','Object','WideChar','Bool'); 'Interface','Class','Object','WideChar','Bool','Int64',
'QWord','DynArray','InterfaceRaw');
Const OrdinalTypes = [tkInteger,tkChar,tkENumeration,tkbool]; Const OrdinalTypes = [tkInteger,tkChar,tkENumeration,tkbool,tkInt64,tkQWord];
Type Type
TMyEnum = (meFirst,meSecond,meThird); TMyEnum = (meFirst,meSecond,meThird);
@ -563,14 +563,14 @@ end;
procedure testserial(O : TComponent); procedure testserial(O : TComponent);
Var W : TTextwriter; Var W : Twriter;
S : TStream; S : TStream;
begin begin
Writeln(stderr,'Creating stream'); Writeln(stderr,'Creating stream');
S:=TIOstream.Create(iosOutput); S:=TIOstream.Create(iosOutput);
Writeln(stderr,'Creating TTextWriter'); Writeln(stderr,'Creating TTextWriter');
W:=TTextWriter.Create(S); W:=TWriter.Create(S,1024);
Writeln(stderr,'Writing component TTextWriter'); Writeln(stderr,'Writing component TTextWriter');
W.WriteComponent(O); W.WriteComponent(O);
Writeln(stderr,'Destroying stream'); Writeln(stderr,'Destroying stream');