/*     
      SCOL SYSTEM . Magma 1.0 . 1996 . Sylvain HUET

         scolpack.h : routines de gestion de package de scol
*/
// Modification history:
//
//$ FA(06/08/2001): Add the declaration of SPGetModifDate()
//

/* activation du cache */
int SCcacheActivate(mmachine m);

/* ajout d'un chemin à la partition en cours */
int SPrefinePartition(mmachine m);

/* ajout d'un chemin à la n-ieme partition */
int SPrefineNthPartition(mmachine m);

/* verification de la presence d'un package
  en 0 : nom complet
 -> en 0 : chemin complet (nil si absent) */
int SPcheckpack(mmachine m);

/* stockage d'un package depuis la bande memoire
  en 0 : nom complet   1 : string package
 -> 0 : 0 si succes, -1 sinon */
int SPstorepack(mmachine m);

/* préparation d'un fichier modifiable
 en 0 : nom complet
 -> 0 : type W si succes, NIL sinon */
int SPgetmodifypack(mmachine m);

/* creation d'un package
  en 0 : nom W   1 : string package
 -> 0 : 0 si succes, -1 sinon */
int SPcreatepack(mmachine m);

/* append d'un package
  en 0 : nom W   1 : string package
 -> 0 : 0 si succes, -1 sinon */
int SPappendpack(mmachine m);

/* conversion W -> P */
int SPWtoP(mmachine m);

/* chargement d'un package en memoire (sans traitement particulier)
  en 0 : nom complet
 -> en 0 : chaine contenant le package (nil si absent) */
int SPgetpack(mmachine m);

/* destruction d'un fichier */
int SPdeletepack(mmachine m);

/* chargement (et compilation) d'un package sur le canal courant 
 le nom du package est dans la pile */
int SPloadpak(mmachine m);

/* calcul du nom complet d'un fichier present en bande memoire
  en 0:type sign, 1:nom clair 2:string package
 -> 0 : nom complet si succes, nil sinon */
int SPgetlongname(mmachine m);

/* calcul de la signature d'un fichier, sans passer par la memoire scol */
int SPfileSign(mmachine m);

/* calcul de la taille d'un fichier, sans passer par la memoire scol */
int SPfileSize(mmachine m);

/* chargement d'un package (nom du package en niveau 0) */
int SCloadhard(mmachine m);

/* signature d'un environnement */
int SCsignenv(mmachine m);
/* signature de la machine */
int SCsignmachine(mmachine m);

/* definition du suffixe cookies
  en 0 : nom cookies 
  -> inchange */
int SPsetCookies(mmachine m);

/* retourne la liste des fichiers d'un répertoire */
int SClistoffiles(mmachine m);

/* retourne la liste des sous-répertoires d'un répertoire */
int SClistofsubdir(mmachine m);

/* nom de l'utilisateur */
int SCusername(mmachine m);

/* nom de l'ordinateur */
int SCcomputername(mmachine m);

/* routine envoyant la capacité courante au Superviseur */
int SCsendCapacity(mmachine m);

/* deplace les fichiers du cache dans un sous-repertoire */
int SCmovecache(mmachine m);

/* lit une trace cachée dans la machine */
int SCreadTrace(mmachine m);

//$ FA(06/08/2001): Returns the date a file was last modified
int SPGetModifDate(mmachine m);
