74 lines
2.3 KiB
C
74 lines
2.3 KiB
C
|
#ifndef h_LAYER
|
||
|
#define h_LAYER
|
||
|
/******************************************************************************
|
||
|
*
|
||
|
* Definition of the error layer trapping structure
|
||
|
*
|
||
|
* 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 intented
|
||
|
* 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/06/96 18582 CSM Added L_TRIGCASC
|
||
|
* 10/25/94 15040 PVW Added L_TX
|
||
|
* 11/09/92 9899 JKW added auth_id to layer struct
|
||
|
* 08/26/91 8583 DTM Added L_CLIENT and L_DEFAULT for Xuv
|
||
|
* 08/09/91 8583 DTM Added L_RAID for use with Xuv
|
||
|
* 07/25/88 - - Maintenence log purged at 5.2.1, see release 5.1.10.
|
||
|
*
|
||
|
*****************************************************************************/
|
||
|
|
||
|
#include SETJMP_H
|
||
|
|
||
|
#define L_CL 0 /* Command Language */
|
||
|
#define L_PA 1 /* Paragraph */
|
||
|
#define L_MENU 2 /* Menu */
|
||
|
#define L_VERB 3 /* Verb */
|
||
|
#define L_PROC 4 /* Proc */
|
||
|
#define L_TAPE 5 /* Tape */
|
||
|
#define L_QUERY 6 /* Query */
|
||
|
#define L_BASIC 7 /* BASIC run machine */
|
||
|
#define L_EXEC 8 /* Execute */
|
||
|
#define L_PERF 9 /* Perform */
|
||
|
#define L_FEW 10 /* Fork, exec & wait */
|
||
|
#define L_RAID 11 /* Raid debugger level */
|
||
|
#define L_CLIENT 12 /* XApp mode */
|
||
|
#define L_DEFAULT 3 /* Default layer */
|
||
|
#define L_TX 13 /* Transaction layer */
|
||
|
#define L_TRIGCASC 14 /* Trigger/Cascade layer */
|
||
|
|
||
|
union lsave
|
||
|
{
|
||
|
PQ *pq; /* Data for the PROC machine */
|
||
|
PSAVE *psave; /* Data for PARAGRAPHS */
|
||
|
RUNDATA *rundata; /* Data for run-machine */
|
||
|
LEVEL *level; /* Data for EXECUTE */
|
||
|
};
|
||
|
|
||
|
struct layer_env
|
||
|
{
|
||
|
LAYER *next; /* Forward link */
|
||
|
int type; /* Type of layer */
|
||
|
LSAVE save; /* State save */
|
||
|
jmp_buf env; /* Error recovery point */
|
||
|
int (*warning)(); /* Warning message routine */
|
||
|
int (*fatal)(); /* Fatal message routine */
|
||
|
long timestamp;
|
||
|
int auth_id;
|
||
|
};
|
||
|
|
||
|
EXTERN LAYER *top_layer;
|
||
|
EXTERN char *layer_name[];
|
||
|
|
||
|
EXTERN void layer_setup(),
|
||
|
layer_reset();
|
||
|
#endif /* end of LAYER.h */
|