ViewVC Help
View File | Revision Log | View Changeset | Root Listing
root/Oni2/oup/current/DataAccess/DataAccess.pas
(Generate patch)

Comparing oup/rewrite/DataAccess/DataAccess.pas (file contents):
Revision 101 by alloc, Tue Feb 20 20:43:29 2007 UTC vs.
Revision 105 by alloc, Wed Feb 21 00:29:27 2007 UTC

# Line 41 | Line 41 | type
41      procedure LoadDatFilePart(FileID, Offset, Size: Integer; var Target: TByteData); overload;
42      procedure LoadDatFilePart(FileID, Offset, Size: Integer; Target: Pointer); overload;
43      procedure UpdateDatFilePart(FileID, Offset, Size: Integer; Src: TStream); overload; virtual; abstract;
44    procedure UpdateDatFilePart(FileID, Offset, Size: Integer; Src: TByteData); overload;
44      procedure UpdateDatFilePart(FileID, Offset, Size: Integer; Src: Pointer); overload;
45  
46      function GetRawList(FileID: Integer): TRawDataList; virtual; abstract;
# Line 55 | Line 54 | type
54      procedure LoadRawFilePart(FileID, DatOffset, Offset, Size: Integer; var Target: TByteData); overload;
55      procedure LoadRawFilePart(FileID, DatOffset, Offset, Size: Integer; Target: Pointer); overload;
56      procedure UpdateRawFilePart(FileID, DatOffset, Offset, Size: Integer; Src: TStream); overload; virtual; abstract;
58    procedure UpdateRawFilePart(FileID, DatOffset, Offset, Size: Integer; Src: TByteData); overload;
57      procedure UpdateRawFilePart(FileID, DatOffset, Offset, Size: Integer; Src: Pointer); overload;
58  
59 <    function AppendRawFile(LocSep: Boolean; Size: Integer; Src: TStream): Integer; overload; virtual;
60 <    function AppendRawFile(LocSep: Boolean; Size: Integer; Src: TByteData): Integer; overload;
59 >    function AppendRawFile(LocSep: Boolean; Src: TStream): Integer; overload; virtual;
60 >    function AppendRawFile(LocSep: Boolean; Src: TByteData): Integer; overload;
61      function AppendRawFile(LocSep: Boolean; Size: Integer; Src: Pointer): Integer; overload;
62    published
63    end;
# Line 172 | Line 170 | begin
170    end;
171   end;
172  
175 procedure TDataAccess.UpdateDatFilePart(FileID, Offset, Size: Integer; Src: TByteData);
176 var
177  data: TStream;
178 begin
179  if fileid < GetFileCount then
180  begin
181    data := TMemoryStream.Create;
182    data.Write(Src[0], Size);
183    data.Seek(0, soFromBeginning);
184    UpdateDatFilePart(FileID, offset, size, data);
185    data.Free;
186  end;
187 end;
188
173   procedure TDataAccess.UpdateDatFilePart(FileID, Offset, Size: Integer; Src: Pointer);
174   var
175    data: TStream;
# Line 259 | Line 243 | begin
243    end;
244   end;
245  
262 procedure TDataAccess.UpdateRawFilePart(FileID, DatOffset, Offset, Size: Integer; Src: TByteData);
263 var
264  data: TStream;
265 begin
266  if fileid < GetFileCount then
267  begin
268    data := TMemoryStream.Create;
269    data.Write(Src[0], Size);
270    data.Seek(0, soFromBeginning);
271    UpdateRawFilePart(FileID, DatOffset, Offset, Size, data);
272    data.Free;
273  end;
274 end;
275
246   procedure TDataAccess.UpdateRawFilePart(FileID, DatOffset, Offset, Size: Integer; Src: Pointer);
247   var
248    data: TStream;
# Line 288 | Line 258 | begin
258   end;
259  
260  
261 < function TDataAccess.AppendRawFile(LocSep: Boolean; Size: Integer; Src: TStream): Integer;
261 > function TDataAccess.AppendRawFile(LocSep: Boolean; Src: TStream): Integer;
262   begin
263    raise ENotImplemented.Create('ERROR: AppendRawFile not implemented here!!!');
264   end;
265  
266  
267 < function TDataAccess.AppendRawFile(LocSep: Boolean; Size: Integer; Src: TByteData): Integer;
267 > function TDataAccess.AppendRawFile(LocSep: Boolean; Src: TByteData): Integer;
268   var
269    data: TStream;
270   begin
271    data := TMemoryStream.Create;
272 <  data.Write(Src[0], Size);
273 <  AppendRawFile(LocSep, Size, data);
272 >  data.Write(Src[0], Length(Src));
273 >  data.Seek(0, soFromBeginning);
274 >  AppendRawFile(LocSep, data);
275    data.Free;
276   end;
277  
# Line 310 | Line 281 | var
281   begin
282    data := TMemoryStream.Create;
283    data.Write(Src^, Size);
284 <  AppendRawFile(LocSep, Size, data);
284 >  data.Seek(0, soFromBeginning);
285 >  AppendRawFile(LocSep, data);
286    data.Free;
287   end;
288  

Diff Legend

Removed lines
+ Added lines
< Changed lines (old)
> Changed lines (new)