DEFINITION MODULE NdxFiles; (* * REPERTOIRE * Release 1.6 * By Charles Bradford and Cole Brecheen * (c) Copyright 1985-1992 PMI * Green Bay, Wisconsin * All rights reserved * (414) 468-6040 * * $Header: D:/logfiles/defs/ndxfiles.dev 1.4 30 Dec 1990 18:02:44 coleb $ * *) FROM SYSTEM IMPORT BYTE, ADDRESS; FROM GenLists IMPORT GenList; FROM NdxTypes IMPORT NdxFileType; PROCEDURE CreateNdxFile( VAR NdxFile: NdxFileType; fname, Structure: ARRAY OF CHAR ); PROCEDURE CloseNdxFile( VAR NdxFile: NdxFileType ); PROCEDURE DeleteRecord( VAR NdxFile: NdxFileType; RecName: ARRAY OF CHAR ): BOOLEAN; PROCEDURE WriteRecord( VAR NdxFile: NdxFileType; RecName: ARRAY OF CHAR ): BOOLEAN; PROCEDURE GetField( VAR NdxFile: NdxFileType; RecName, FieldName: ARRAY OF CHAR; VAR TheType: CARDINAL; VAR TheField: ARRAY OF BYTE ): BOOLEAN; PROCEDURE PutField( VAR NdxFile: NdxFileType; RecName, FieldName: ARRAY OF CHAR; TheType: CARDINAL; TheField: ARRAY OF BYTE ): BOOLEAN; PROCEDURE GetFieldAdr( VAR NdxFile: NdxFileType; RecName, FieldName: ARRAY OF CHAR; VAR TheType: CARDINAL; VAR TheFieldAdr: ADDRESS; VAR TheFieldSize: CARDINAL ): BOOLEAN; PROCEDURE PutFieldAdr( VAR NdxFile: NdxFileType; RecName, FieldName: ARRAY OF CHAR; TheType: CARDINAL; TheFieldAdr: ADDRESS; TheFieldSize: CARDINAL ): BOOLEAN; PROCEDURE FileStructure( NdxFile: NdxFileType; VAR Structure: ARRAY OF CHAR ); PROCEDURE RecordExists( NdxFile: NdxFileType; VAR RecName: ARRAY OF CHAR ): BOOLEAN; PROCEDURE SafetyOn( VAR NdxFile: NdxFileType ); PROCEDURE SafetyOff( VAR NdxFile: NdxFileType ); PROCEDURE InsertNdxEntry( RecName: ARRAY OF CHAR; VAR FilePos: LONGINT; UsedChars: CARDINAL; VAR AllocatedChars: CARDINAL; VAR NdxFile: NdxFileType ): BOOLEAN; PROCEDURE ChangeNdxEntry( OldRecName, NewRecName: ARRAY OF CHAR; FilePos: LONGINT; NumUsed: CARDINAL; VAR NdxFile: NdxFileType ): BOOLEAN; (*===================================================== Following routines exported only for Repertoire's own use. =====================================================*) PROCEDURE FindField( StruList: GenList; FieldName: ARRAY OF CHAR; VAR DataList: GenList; VAR spot: CARDINAL): BOOLEAN; PROCEDURE WriteNdx( NdxFile: NdxFileType ); PROCEDURE SetFileUpdate( handle: CARDINAL; GbgByte: CHAR); PROCEDURE Init(); END NdxFiles.