head     1.5;
branch   ;
access   ;
symbols  Version_2_1:1.5 Version_2:1.4;
locks    ; strict;
comment  @ * @;


1.5
date     90.08.17.08.54.51;  author cimarron;  state Exp;
branches ;
next     1.4;

1.4
date     89.10.11.15.37.48;  author hirohama;  state Version_2;
branches ;
next     1.3;

1.3
date     89.09.25.11.28.16;  author cimarron;  state Exp;
branches ;
next     1.2;

1.2
date     89.09.21.19.13.01;  author hirohama;  state Exp;
branches ;
next     1.1;

1.1
date     89.06.16.13.31.23;  author hirohama;  state Exp;
branches ;
next     ;


desc
@@


1.5
log
@added pathnames to #include statements
@
text
@/*
 * pmod.h --
 *	POSTGRES processing mode definitions.
 *
 * Description:
 *	There are four processing modes in POSTGRES.  They are NoProcessing
 * or "none," BootstrapProcessing or "bootstrap," InitProcessing or
 * "initialization," and NormalProcessing or "normal."
 *
 *	If a POSTGRES binary is in normal mode, then all code may be executed
 * normally.  In the none mode, only bookkeeping code may be called.  In
 * particular, access method calls may not occur in this mode since the
 * execution state is outside a transaction.
 *
 *	The final two processing modes are used during special times.  When the
 * system state indicates bootstrap processing, transactions are all given
 * transaction id "one" and are consequently guarenteed to commit.  This mode
 * is used during the initial generation of template databases.
 *
 * Finally, the execution state is in initialization mode until all normal
 * initialization is complete.  Some code behaves differently when executed in
 * this mode to enable system bootstrapping.
 */

#ifndef	PModIncluded		/* Include this file only once */
#define PModIncluded	1

/*
 * Identification:
 */
#define PMOD_H	"$Header: RCS/pmod.h,v 1.4 89/10/11 15:37:48 hirohama Version_2 Locker: cimarron $"

#include "tmp/c.h"

typedef enum ProcessingMode {
	NoProcessing,		/* "nothing" can be done */
	BootstrapProcessing,	/* bootstrap creation of template database */
	InitProcessing,		/* initializing system */
	NormalProcessing,	/* normal processing */
} ProcessingMode;

/*
 * IsNoProcessingMode --
 *	True iff processing mode is NoProcessing.
 */
extern
bool
IsNoProcessingMode ARGS((
	void
));

/*
 * IsBootstrapProcessingMode --
 *	True iff processing mode is BootstrapProcessing.
 */
extern
bool
IsBootstrapProcessingMode ARGS((
	void
));

/*
 * IsInitProcessingMode --
 *	True iff processing mode is InitProcessing.
 */
extern
bool
IsInitProcessingMode ARGS((
	void
));

/*
 * IsNormalProcessingMode --
 *	True iff processing mode is NormalProcessing.
 */
extern
bool
IsNormalProcessingMode ARGS((
	void
));

/*
 * SetProcessingMode --
 *	Sets mode of processing as specified.
 *
 * Exceptions:
 *	BadArg if called with invalid mode.
 *
 * Note:
 *	Mode is NoProcessing before the first time this is called.
 */
extern
void
SetProcessingMode ARGS((
	ProcessingMode	mode
));

#endif	/* !defined(PModIncluded) */
@


1.4
log
@comments added
@
text
@d31 1
a31 1
#define PMOD_H	"$Header: RCS/pmod.h,v 1.3 89/09/25 11:28:16 cimarron Exp Locker: hirohama $"
d33 1
a33 3
#ifndef	C_H
#include "c.h"
#endif
@


1.3
log
@moved dynamic symbol stuff to syms.h
@
text
@d6 17
a22 1
 *	The four processing modes are ....  They signify ....
d31 1
a31 1
#define PMOD_H	"$Header: RCS/pmod.h,v 1.2 89/09/21 19:13:01 hirohama Exp Locker: hirohama $"
@


1.2
log
@added ...SYMBOLS declarations
miscellaneous cleanup
@
text
@d15 1
a15 1
#define PMOD_H	"$Header: RCS/pmod.h,v 1.1 89/06/16 13:31:23 hirohama Exp Locker: hirohama $"
a82 6

#define PMOD_SYMBOLS \
	SymbolDecl(IsNoProcessingMode, "_IsNoProcessingMode"), \
	SymbolDecl(IsBootstrapProcessingMode, "_IsBootstrapProcessingMode"), \
	SymbolDecl(IsInitProcessingMode, "_IsInitProcessingMode"), \
	SymbolDecl(IsNormalProcessingMode, "_IsNormalProcessingMode")
@


1.1
log
@Initial revision
@
text
@d5 2
a6 2
 * Identification:
 *	$Header: pusr.h,v 1.2 89/06/16 11:52:36 hirohama Exp $
d12 5
a20 2
#define PMOD_H	"$Header$"

d83 6
@
