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)