home *** CD-ROM | disk | FTP | other *** search
/ Crawly Crypt Collection 2 / crawlyvol2.bin / program / misc / isam / fixfiles.d < prev    next >
Text File  |  1991-10-26  |  5KB  |  136 lines

  1. DEFINITION MODULE FixFiles;
  2.  
  3. (*                             Von Michael H.                               *)
  4. (*  portiert nach M-2 August '91 von Christian Felsch und Peter Oleski.     *)       
  5. (*  Diese ISAM ist Public Domain und darf von jedem für zivile Aufgaben     *)
  6. (*  benutzt werden. Eine Nutzung für militärische Zwecke ist untersagt !    *)
  7. (*                         Diese ISAM ist Peace-Ware !                      *)
  8. (*                         ---------------------------                      *)
  9. (*  Diese ISAM darf verändert und erweitert werden. Bei guten Erweiterungen *)
  10. (*  und Fehlern benachrichtigung bitte an uns senden.                       *)
  11. (*  Die ISAM hat unsere Platte NICHT zerstört aber wir übernehmen keine     *)
  12. (*  Verantwortung für nichts.                                               *)
  13. (*  Wir bitten aber, falls diese ISAM einmal eine Verwendung findet, uns    *)
  14. (*  mit dem Satz ' ISAM by Jau-Team ' zu erwähnen.                          *)
  15. (*  Wird mit dieser Bibliothek ein kommerzielles Programm erstellt, so ist  *)
  16. (*  uns ein kostenloses Exemplar zuzusenden                                 *)
  17. (*  Zu erreichen unter:                                                     *)
  18. (*                                                                          *)
  19. (*      E-Mail: Peter Oleski        oder   Christian Felsch @ HH (MausNet)  *)
  20. (*  gelbe Post: Eißendorfergrenzweg 83a     Bevenser Weg 18                 *)
  21. (*                             2100 Hamburg 90                              *)
  22.  
  23.  
  24.  (* Modul zur Verwaltung der Datendateien  *)
  25.   
  26.  (* Erläuterungen zu den zu übergebenden Variablen:       *)
  27.   
  28.  (*  I  : Eingabewerte vom Benutzer                       *)
  29.  (*  o  : nur interne Statusinformationen werden geändert *)
  30.  (*  O  : relevante Informationen werden zurückgeliefert  *)
  31.   
  32.   
  33.  FROM SYSTEM      IMPORT LOC;
  34.  FROM IsamGlobals IMPORT FixFile;
  35.  
  36.  
  37.  PROCEDURE FixMake(VAR Datei      : FixFile;               (* O *)
  38.                        FName      : ARRAY OF CHAR;         (* I *)
  39.                        RecLen     : CARDINAL;              (* I *)
  40.                        ZaehlStart : CARDINAL);             (* I *)
  41.                        
  42.   (* Kreiert neue Datendatei, max. Anzahl der Zugriffe in <ZaehlStand< *)
  43.                                                    
  44.                                                       
  45.  PROCEDURE FixOpen(VAR Datei   : FixFile;                  (* O *)
  46.                        FName   : ARRAY OF CHAR;            (* I *)
  47.                        RecLen  : CARDINAL;                 (* I *)
  48.                        MaxCount: CARDINAL);                (* I *)
  49.                        
  50.   (* Öffnet eine Datendatei *)
  51.   
  52.  
  53.  PROCEDURE FixFlush(VAR Datei : FixFile);                  (* I/o *)
  54.  
  55.   (* Führt ein Flush auf Datendatei aus *)
  56.   
  57.  
  58.  PROCEDURE FixClose(VAR Datei : FixFile);                  (* I/o *)
  59.  
  60.   (* Schließt eine Datendatei *)
  61.   
  62.  
  63.  PROCEDURE FixErase(VAR Datei : FixFile);                  (* I/o *)
  64.  
  65.   (* Löscht eine Datendatei *)
  66.   
  67.  
  68.  PROCEDURE FixRename(VAR Datei : FixFile;                  (* I/O *)
  69.                          fNeu  : ARRAY OF CHAR);           (* I *)
  70.                          
  71.   (* Benennt eine Datendatei um *)
  72.   
  73.  
  74.  PROCEDURE FixNew(VAR Datei  : FixFile;                    (* I/o *)
  75.                   VAR SatzNr : LONGINT);                   (* O *)
  76.                   
  77.   (* Legt einen neuen leeren Datensatz an *)
  78.   
  79.  
  80.  PROCEDURE FixAdd(VAR Datei  : FixFile;                    (* I/o *)
  81.                   VAR SatzNr : LONGINT;                    (* O *)
  82.                   VAR Buffer : ARRAY OF LOC);              (* I *)
  83.                   
  84.   (* Fügt einen neuen Datensatz in eine Datendatei ein *)
  85.  
  86.  
  87.  PROCEDURE FixDel(VAR Datei  : FixFile;                    (* I/o *)
  88.                       SatzNr : LONGINT);                   (* I *)
  89.                       
  90.   (* Löscht einen Datensatz aus einer Datendatei *)
  91.  
  92.  
  93.  PROCEDURE FixGet(VAR Datei  : FixFile;                    (* I/o *)
  94.                       SatzNr : LONGINT;                    (* I *)
  95.                   VAR Buffer : ARRAY OF LOC;               (* O *)
  96.                       Anz    : CARDINAL);                  (* I *)
  97.                       
  98.   (* Liest <Anz>  Datensätze aus einer Datendatei *)
  99.  
  100.  
  101.  PROCEDURE FixPut(VAR Datei  : FixFile;                    (* I/o *)
  102.                       SatzNr : LONGINT;                    (* I *)
  103.                   VAR Buffer : ARRAY OF LOC);              (* I *)
  104.                   
  105.   (* Schreibt einen Datensatz in eine Datendatei *)
  106.  
  107.  
  108.  PROCEDURE FixSize(VAR Datei : FixFile): LONGINT;          (* I *)
  109.  
  110.   (* Liefert gesamte Gröβe einer Datendatei in Bytes *)
  111.  
  112.  
  113.  PROCEDURE FixTotal(VAR Datei : FixFile) : LONGINT;        (* I *)
  114.  
  115.   (* Liefert Anzahl aller Datensätze (benutzt und unbenutz), inkl. Status *)
  116.  
  117.  
  118.  PROCEDURE FixUsed(VAR Datei : FixFile) : LONGINT;         (* I *)
  119.  
  120.   (* Liefert Anzahl der benutzten Datensätze *)
  121.  
  122.  
  123.  PROCEDURE FixCounter(VAR Datei : FixFile) : CARDINAL;     (* I *)
  124.  
  125.   (* Liefert den Zählerstand für Demo-Version *)
  126.  
  127.  
  128.  PROCEDURE FixRecSize(DateiName : ARRAY OF CHAR) : LONGINT; (* I *)
  129.  
  130.   (* Liefert die Gröβe eines Datensatzes in Bytes *)
  131.  
  132.  
  133.  PROCEDURE FixflushAll;
  134.  
  135.  
  136. END FixFiles.