summaryrefslogtreecommitdiff
path: root/fpcsrc/utils/fppkg/lnet/sys/lkqueueeventerh.inc
blob: 44b2d3e1572a3e29947635ff1e02f980179edcee (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
{% lkqueueeventerh.inc included by levents.pas }

{$ifdef BSD}

  { TLKQueueEventer }

  TLKQueueEventer = class(TLEventer)
   protected
    FTimeout: TTimeSpec;
    FEvents: array of TKEvent;
    FChanges: array of TKEvent;
    FFreeSlot: Integer;
    FQueue: THandle;
    function GetTimeout: Integer; override;
    procedure SetTimeout(const Value: Integer); override;
    procedure HandleIgnoreRead(aHandle: TLHandle); override;
    procedure Inflate;
   public
    constructor Create; override;
    destructor Destroy; override;
    function AddHandle(aHandle: TLHandle): Boolean; override;
    function CallAction: Boolean; override;
  end;
  
{$endif} // bsd