362 Приложение
Procedure TEMSArray.GetItem(var Dest,Ind);
(Возвращает в переменной Dest элемент многомерного массива} var
М: Longint;
begin
N := GetVecIndex(Ind) ;
{$IFNDEF NOTCHECK}
if not EMSErrorFlag then {$endIF}
TEMSVector.GetItem(Dest,N) end; ITEMSArray.Get Item}
{---- Имитатор файла последовательного доступа ----} Constructor TEMSType.Init(ASize: Longint);
{Создает объект TEMSType: сначала создает базовый объект TEMSArea, затем обнуляет поле Роз}
begin
TEMSArea.Init (ASize) ;
Pos := О
end; {TEMSType.Init} ^______-____-____-__;
Constructor TEMSType.Load(var F: File) ;
(Считывает объект TEMSType из файла F} var
S: String;
begin
TEMSArea.Load(F) ;
if not EMSErrorFlag then
if ReadFile(F,S,SizeOf(RegHeadTEMSType)) and
(S=RegHeadTEMSType) then ReadFile(F,Pos,4) else
Done
end; {TEMSType.Load} ^______——————___;
Procedure TEMSType.Store(var F: File);
{Записывает объект в файл} begin
TEMSArea.Store(F) ;
if not EMSErrorFlag and
WriteFile(F,RegHeadTEMSType,SizeOC(RegHeadTEMSType)) then
WriteFile(F,Pos,4) end; /TEMSType.Store} ^_-____________-__-./
Procedure TEMSType.Setltem(var Source; Sz: Longint) ;
{Записывает в ТЕМСТуре очередной элемент} begin
WriteEMS(Source,Pos,Sz) ;
if not EMSErrorFlag than
inc(Pos,Sz) end; {TEMSType.} ^_____——————_____;
Procedure TEMSType.Getlten(var Dcst; Sz: Lon^Int);
{Читает из TEMSType очс^гднгй элем"лт} begin
ReadEMS(Pos,Dest,Sz) ;
if not EMSErrorrlag then inc(Pos,Sz)