/usr/include/ug/ugstruct.h is in libdune-uggrid-dev 2.5.0-1.
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 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 | // -*- tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*-
// vi: set et ts=4 sw=2 sts=2:
/****************************************************************************/
/* */
/* File: ugstruct.h */
/* */
/* Purpose: implements hierachically structured string variables */
/* */
/* Author: Nikolas Neuss */
/* Interdisziplinaeres Zentrum fuer Wissenschaftliches Rechnen */
/* Universitaet Heidelberg */
/* Im Neuenheimer Feld 368 */
/* 6900 Heidelberg */
/* internet: ug@ica3.uni-stuttgart.de */
/* */
/* */
/* History: 18.02.92 begin, ug version 2.0 */
/* 05 Sep 1992, split cmd.c into cmdint.c and commands.c */
/* 17.12.94 ug 3.0 */
/* */
/* Remarks: */
/* */
/****************************************************************************/
/****************************************************************************/
/* */
/* auto include mechanism and other include files */
/* */
/****************************************************************************/
#ifndef __UGSTRUCT__
#define __UGSTRUCT__
#include "ugtypes.h"
#include "ugenv.h"
#include "namespace.h"
START_UG_NAMESPACE
/****************************************************************************/
/* */
/* defines in the following order */
/* */
/* compile time constants defining static data size (i.e. arrays) */
/* other constants */
/* macros */
/* */
/****************************************************************************/
#define STRUCTSEP ":"
#define STRUCTSEPC ':'
enum SV_NOTIFY
{
SV_ERROR,
SV_CREATED,
SV_CHANGED,
SV_NOT_CHANGED
};
/****************************************************************************/
/* */
/* data structures exported by the corresponding source file */
/* */
/****************************************************************************/
typedef struct { /* string variable */
ENVVAR v; /* this is an environment variable */
INT length; /* bytes allocated for the string */
char s[1]; /* allocated as needed */
} STRVAR ;
/****************************************************************************/
/* */
/* function declarations */
/* */
/****************************************************************************/
/* hierarchical string directory */
INT MakeStruct (const char *name);
INT DeleteStruct (const char *name);
INT DeleteVariable (const char *name);
ENVDIR *ChangeStructDir (const char *s);
ENVDIR *FindStructDir (const char *name, const char **lastnameHnd);
STRVAR *FindStringVar (const ENVDIR *where, const char *name);
ENVDIR *FindStructure (const ENVDIR *where, const char *name);
INT RemoveStringVar (ENVDIR *homeDir, STRVAR *theVar);
INT SetStringVar (const char *name, const char *sval);
INT SetStringVarNotify (const char *name, const char *sval);
INT SetnStringVar (const char *name, const char *sval, int n);
char *GetStringVar (const char *name);
INT GetStringValue (const char *name, double *value);
INT GetStringValueDouble (const char *name, double *value);
INT GetStringValueInt (const char *name, int *value);
INT GetStringDOUBLEInRange (const char *name, DOUBLE min, DOUBLE max, DOUBLE *value);
INT GetStringINTInRange (const char *name, INT min, INT max, INT *value);
INT SetStringValue (const char *name, double value);
ENVDIR *GetCurrentStructDir (void);
INT GetStructPathName (char *s, int n);
ENVITEM *MakeStructItem (ENVDIR *where, const char *name, INT type, INT size);
INT CheckStructTree (const ENVDIR *theDir);
INT CheckIfInStructPath (const ENVDIR *theDir);
INT RemoveStructTree (ENVDIR *homeDir, ENVDIR *theDir);
INT PrintStructContents (const char *name, char *buffer, int bufLen, int ropt);
INT PrintCurrentStructContents (int flag, char *buffer, int bufLen, int ropt);
/* initialization of this module */
INT InitUgStruct (void);
END_UG_NAMESPACE
#endif
|