My Project
Data Structures | Macros | Typedefs | Enumerations | Functions | Variables
feResource.h File Reference
#include <sys/param.h>
#include "../factory/globaldefs.h"

Go to the source code of this file.

Data Structures

struct  feResourceConfig_s
 

Macros

#define DIR_SEP   '/'
 
#define DIR_SEPP   "/"
 
#define MAXPATHLEN   1024
 

Typedefs

typedef feResourceConfig_sfeResourceConfig
 

Enumerations

enum  feResourceType {
  feResUndef = 0 , feResBinary , feResDir , feResFile ,
  feResUrl , feResPath
}
 

Functions

char * feResource (const char id, int warn=-1)
 
char * feResource (const char *key, int warn=-1)
 
char * feGetResource (const char id, int warn=-1)
 
void feInitResources (const char *argv0)
 
void feReInitResources ()
 

Variables

EXTERN_VAR feResourceConfig_s feResourceConfigs []
 
EXTERN_VAR char * feArgv0
 
const char fePathSep = ':'
 

Data Structure Documentation

◆ feResourceConfig_s

struct feResourceConfig_s

Definition at line 22 of file feResource.h.

Data Fields
const char * env
const char * fmt
const char id
const char * key
feResourceType type
char * value

Macro Definition Documentation

◆ DIR_SEP

#define DIR_SEP   '/'

Definition at line 6 of file feResource.h.

◆ DIR_SEPP

#define DIR_SEPP   "/"

Definition at line 7 of file feResource.h.

◆ MAXPATHLEN

#define MAXPATHLEN   1024

Definition at line 10 of file feResource.h.

Typedef Documentation

◆ feResourceConfig

Definition at line 31 of file feResource.h.

Enumeration Type Documentation

◆ feResourceType

Enumerator
feResUndef 
feResBinary 
feResDir 
feResFile 
feResUrl 
feResPath 

Definition at line 20 of file feResource.h.

feResourceType
Definition: feResource.h:20
@ feResBinary
Definition: feResource.h:20
@ feResPath
Definition: feResource.h:20
@ feResDir
Definition: feResource.h:20
@ feResUrl
Definition: feResource.h:20
@ feResUndef
Definition: feResource.h:20
@ feResFile
Definition: feResource.h:20

Function Documentation

◆ feGetResource()

char * feGetResource ( const char  id,
int  warn = -1 
)

Definition at line 148 of file feResource.cc.

149{
150 return feResource(feGetResourceConfig(id), warn);
151}
static feResourceConfig feGetResourceConfig(const char id)
Definition: feResource.cc:213
static char * feResource(feResourceConfig config, int warn)
Definition: feResource.cc:236

◆ feInitResources()

void feInitResources ( const char *  argv0)

Definition at line 163 of file feResource.cc.

164{
165 if (argv0==NULL)
166 {
167 //WarnS("illegal argv[0]==NULL");
168 feArgv0 = (char*)malloc(MAXPATHLEN+strlen("/Singular"));
169 getcwd(feArgv0, MAXPATHLEN);
170 strcat(feArgv0,"/Singular");
171 }
172 else
174#ifdef RESOURCE_DEBUG
175 printf("feInitResources(argv0: '%s'): entering...\n", feArgv0);
176#endif
177 // init some Resources
178 feResource('b');
179 feResource('r');
180 // don't complain about stuff when initializing SingularPath
181 feResource('s',0);
182 feResource('P');
183}
char * argv0
VAR char * feArgv0
Definition: feResource.cc:19
#define strdup
Definition: omAllocFunc.c:18
#define NULL
Definition: omList.c:12
#define MAXPATHLEN
Definition: omRet2Info.c:22
void * malloc(size_t size)
Definition: omalloc.c:85

◆ feReInitResources()

void feReInitResources ( )

Definition at line 185 of file feResource.cc.

186{
187 int i = 0;
188 while (feResourceConfigs[i].key != NULL)
189 {
190 if ((feResourceConfigs[i].value != NULL)
191 && (feResourceConfigs[i].value[0] != '\0'))
192 {
193 free(feResourceConfigs[i].value);
194 feResourceConfigs[i].value = (char *)"";
195 }
196 i++;
197 }
198#ifdef RESOURCE_DEBUG
199 printf("feInitResources(): entering...\n");
200#endif
201 // init some Resources
202 feResource('b');
203 feResource('r');
204 // don't complain about stuff when initializing SingularPath
205 feResource('s',0);
206}
int i
Definition: cfEzgcd.cc:132
VAR feResourceConfig_s feResourceConfigs[]
Definition: feResource.cc:41
#define free
Definition: omAllocFunc.c:14

◆ feResource() [1/2]

char * feResource ( const char *  key,
int  warn = -1 
)

Definition at line 138 of file feResource.cc.

139{
140 return feResource(feGetResourceConfig(key), warn);
141}

◆ feResource() [2/2]

char * feResource ( const char  id,
int  warn = -1 
)

Definition at line 143 of file feResource.cc.

144{
145 return feResource(feGetResourceConfig(id), warn);
146}

Variable Documentation

◆ feArgv0

EXTERN_VAR char* feArgv0

Definition at line 56 of file feResource.h.

◆ fePathSep

const char fePathSep = ':'

Definition at line 58 of file feResource.h.

◆ feResourceConfigs

EXTERN_VAR feResourceConfig_s feResourceConfigs[]

Definition at line 33 of file feResource.h.