/usr/include/clips/envrnmnt.h is in libclips-dev 6.24-3.2.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 | /*******************************************************/
/* "C" Language Integrated Production System */
/* */
/* CLIPS Version 6.24 06/05/06 */
/* */
/* ENVRNMNT HEADER FILE */
/*******************************************************/
/*************************************************************/
/* Purpose: Routines for supporting multiple environments. */
/* */
/* Principal Programmer(s): */
/* Gary D. Riley */
/* */
/* Revision History: */
/* */
/* 6.24: Renamed BOOLEAN macro type to intBool. */
/* */
/* Added CreateRuntimeEnvironment function. */
/* */
/* Added support for context information when an */
/* environment is created (i.e a pointer from the */
/* CLIPS environment to its parent environment). */
/* */
/*************************************************************/
#ifndef _H_envrnmnt
#define _H_envrnmnt
#ifndef _H_symbol
#include "symbol.h"
#endif
#ifdef LOCALE
#undef LOCALE
#endif
#ifdef _ENVRNMNT_SOURCE_
#define LOCALE
#else
#define LOCALE extern
#endif
#define USER_ENVIRONMENT_DATA 70
#define MAXIMUM_ENVIRONMENT_POSITIONS 100
struct environmentCleanupFunction
{
char *name;
void (*func)(void *);
int priority;
struct environmentCleanupFunction *next;
};
struct environmentData
{
unsigned int initialized : 1;
unsigned long environmentIndex;
void *context;
void *routerContext;
void **theData;
void (**cleanupFunctions)(void *);
struct environmentCleanupFunction *listOfCleanupEnvironmentFunctions;
struct environmentData *next;
};
typedef struct environmentData ENVIRONMENT_DATA;
typedef struct environmentData * ENVIRONMENT_DATA_PTR;
#define GetEnvironmentData(theEnv,position) (((struct environmentData *) theEnv)->theData[position])
#define SetEnvironmentData(theEnv,position,value) (((struct environmentData *) theEnv)->theData[position] = value)
intBool AllocateEnvironmentData(void *,unsigned int,unsigned long,void (*)(void *));
LOCALE intBool DeallocateEnvironmentData(void);
#if ALLOW_ENVIRONMENT_GLOBALS
LOCALE void SetCurrentEnvironment(void *);
LOCALE intBool SetCurrentEnvironmentByIndex(unsigned long);
LOCALE void *GetEnvironmentByIndex(unsigned long);
LOCALE void *GetCurrentEnvironment(void);
LOCALE unsigned long GetEnvironmentIndex(void *);
#endif
LOCALE void *CreateEnvironment(void);
LOCALE void *CreateRuntimeEnvironment(struct symbolHashNode **,struct floatHashNode **,
struct integerHashNode **,struct bitMapHashNode **);
LOCALE intBool DestroyEnvironment(void *);
LOCALE intBool AddEnvironmentCleanupFunction(void *,char *,void (*)(void *),int);
LOCALE void *GetEnvironmentContext(void *);
LOCALE void *SetEnvironmentContext(void *,void *);
LOCALE void *GetEnvironmentRouterContext(void *);
LOCALE void *SetEnvironmentRouterContext(void *,void *);
#endif
|