function TStreamReader.ReadPos(Idx: integer): Int64;
begin
Result:=flPos[Idx];
end;
procedure TStreamReader.WritePos(Idx: integer; AValue: Int64);
begin
flPos[idx]:=AValue;
end;
constructor TStreamReader.Create(AStream: TStream; ABufferSize: Integer;
AOwnsStream: Boolean);
begin
(...)
flPos:=TListInt64.Create;
end;
procedure TStreamReader.Close;
begin
(...)
FreeAndNil(flPos);
end;