/****************************************************************************** * * ux74f.h - include for ux74f * * Module %M% Version %I% Date %H% * * (c) Copyright 1998 Ardent Software Inc. - All Rights Reserved * This is unpublished proprietary source code of Ardent Software Inc. * The copyright notice above does not evidence any actual or intended * publication of such source code. * ******************************************************************************* * * Maintenence log - insert most recent change descriptions at top * * Date.... GTAR# WHO Description......................................... * 10/14/98 23801 SAP Change copyrights. * 06/12/96 18335 PNV Original scadmin for port of 911 to Siemens Nixdorf. * ******************************************************************************/ #include "uv.h" #define signedchar char #define Libre ((signedchar)(-1)) #define FinChaine ('\000') #define UVSemMP (key_t)(0x11223344) #define UVMemPart (key_t)(0x22334455) #define UVBal00 (key_t)(0x12345670) #define UVBal01 (key_t)(0x12345671) #define UVBal02 (key_t)(0x12345672) #define UVBal03 (key_t)(0x12345673) #define UVBal04 (key_t)(0x12345674) #define UVBal05 (key_t)(0x12345675) #define UVBal06 (key_t)(0x12345676) #define UVBal07 (key_t)(0x12345677) #define UVBal08 (key_t)(0x12345678) #define UVBal09 (key_t)(0x12345679) #define UVBal10 (key_t)(0x1234567a) #define UVBal11 (key_t)(0x1234567b) #define UVBal12 (key_t)(0x1234567c) #define UVBal13 (key_t)(0x1234567d) #define UVBal14 (key_t)(0x1234567e) #define UVBal15 (key_t)(0x1234567f) #define NombreSemaphore 16 /* attention multiple de 4 */ #define NombreProcessus 256 /* attention multiple de 4 */ #define TailleNomSemaphore 24 /* attention multiple de 4 */ #define TailleNomProcessus 12 /* attention multiple de 4 */ #define TailleTableSemProcessus ((NombreSemaphore*TailleNomSemaphore)+\ (NombreProcessus*TailleNomProcessus)) #define UVTailleMemPart ((TailleTableSemProcessus)+\ (sizeof(struct uvtr)*NombreSemaphore)) #define UVNombreSem 1 #define Fini(m) {UVDeverrouiller();printf("%s::\n",m);exit(0);} union semun { int val; struct semid_ds *buf; ushort *array; }; struct UVmsgbuf { long UVmtype; /* message type */ signedchar UVmtext[40]; /* message text */ }; struct uvtr { int ListeProcessus[NombreProcessus]; int NombreMessage; }; extern int IdSem; extern int IdMemPart; extern int IdBal; extern union semun semctl_arg; extern struct sembuf sops; extern struct semid_ds ssemid; extern struct shmid_ds sshmid; extern signedchar *UVAdMemPart; extern struct msqid_ds smesid; extern int NumBal; extern int NumProcessus; extern signedchar *NomSemaphore; extern signedchar *NomProcessus; extern key_t UVTabNomBal[]; extern signedchar *Semaphore; extern signedchar *Processus; extern signedchar *Code; extern int CodeNum; extern signedchar *Message; extern signedchar *Destinataire; extern signedchar *Tempo; extern int TempoNum; extern struct uvtr *UVTableRelations; extern signedchar Lettre[];