LAL  7.5.0.1-b72065a
ConfigFile.c File Reference

Prototypes

static void cleanConfig (char *text)
 
static CHARXLALGetSectionName (const CHAR *line)
 
int XLALParseDataFile (LALParsedDataFile **cfgdata, const CHAR *path)
 Parse an ASCII data-file into a pre-cleaned array of lines. More...
 
int XLALParseDataFileContent (LALParsedDataFile **cfgdata, const CHAR *string)
 
void XLALDestroyParsedDataFile (LALParsedDataFile *cfgdata)
 Free memory associated with a LALParsedDataFile structure. More...
 
int XLALConfigSectionExists (const LALParsedDataFile *cfgdata, const CHAR *secName)
 Function to determine whether a given section secName exists in the parsed config-file contents cfgdata. More...
 
LALStringVectorXLALListConfigFileSections (const LALParsedDataFile *cfgdata)
 Function to find all sections in given config-file contents cfgdata. More...
 
int XLALReadConfigSTRINGVariable (CHAR **varp, LALParsedDataFile *cfgdata, const CHAR *secName, const CHAR *varName, BOOLEAN *wasRead)
 String parser for config-file: can read config-variables of the form VARIABLE [=:] VALUE. More...
 
 DEFINE_XLALREADCONFIGVARIABLE (BOOLEAN, BOOLEAN)
 
 DEFINE_XLALREADCONFIGVARIABLE (INT4, INT4)
 
 DEFINE_XLALREADCONFIGVARIABLE (INT8, INT8)
 
 DEFINE_XLALREADCONFIGVARIABLE (UINT4, UINT4)
 
 DEFINE_XLALREADCONFIGVARIABLE (UINT8, UINT8)
 
 DEFINE_XLALREADCONFIGVARIABLE (REAL8, REAL8)
 
 DEFINE_XLALREADCONFIGVARIABLE (STRINGVector, LALStringVector *)
 
 DEFINE_XLALREADCONFIGVARIABLE (EPOCH, LIGOTimeGPS)
 
 DEFINE_XLALREADCONFIGVARIABLE (RAJ, REAL8)
 
 DEFINE_XLALREADCONFIGVARIABLE (DECJ, REAL8)
 
UINT4VectorXLALConfigFileGetUnreadEntries (const LALParsedDataFile *cfgdata)
 Return a list of unread config-file entries, NULL if none found (without error). More...
 

Go to the source code of this file.

Macros

#define WHITESPACE   " \t"
 
#define TRUE   (1==1)
 
#define FALSE   (1==0)
 
#define DEFINE_XLALREADCONFIGVARIABLE(TYPE, CTYPE)
 

Macro Definition Documentation

◆ WHITESPACE

#define WHITESPACE   " \t"

Definition at line 40 of file ConfigFile.c.

◆ TRUE

#define TRUE   (1==1)

Definition at line 42 of file ConfigFile.c.

◆ FALSE

#define FALSE   (1==0)

Definition at line 43 of file ConfigFile.c.

◆ DEFINE_XLALREADCONFIGVARIABLE

#define DEFINE_XLALREADCONFIGVARIABLE (   TYPE,
  CTYPE 
)
Value:
{ \
/* first read the value as a string */ \
CHAR *valString = NULL; \
XLAL_CHECK ( XLALReadConfigSTRINGVariable ( &valString, cfgdata, secName, varName, wasRead ) == XLAL_SUCCESS, XLAL_EFUNC ); \
if ( ! (*wasRead ) ) { \
return XLAL_SUCCESS; \
} \
XLAL_CHECK ( XLALParseStringValueAs ##TYPE ( varp, valString ) == XLAL_SUCCESS, XLAL_EFUNC ); \
XLALFree (valString); \
return XLAL_SUCCESS; \
}
#define TYPE
int XLALReadConfigSTRINGVariable(CHAR **varp, LALParsedDataFile *cfgdata, const CHAR *secName, const CHAR *varName, BOOLEAN *wasRead)
String parser for config-file: can read config-variables of the form VARIABLE [=:] VALUE.
Definition: ConfigFile.c:277
#define DECLARE_XLALREADCONFIGVARIABLE(TYPE, CTYPE)
Definition: ConfigFile.h:124
@ XLAL_SUCCESS
Success return value (not an error number)
Definition: XLALError.h:401
@ XLAL_EFUNC
Internal function call failed bit: "or" this with existing error number.
Definition: XLALError.h:462

Definition at line 367 of file ConfigFile.c.

Function Documentation

◆ cleanConfig()

void cleanConfig ( char *  text)
static

Definition at line 444 of file ConfigFile.c.

◆ XLALGetSectionName()

static CHAR * XLALGetSectionName ( const CHAR line)
static

Definition at line 250 of file ConfigFile.c.

◆ XLALReadConfigSTRINGVariable()

int XLALReadConfigSTRINGVariable ( CHAR **  varp,
LALParsedDataFile cfgdata,
const CHAR secName,
const CHAR varName,
BOOLEAN wasRead 
)

String parser for config-file: can read config-variables of the form VARIABLE [=:] VALUE.

Input is a TokenList containing the 'logical' lines of the cleaned config-file

Note
Opening and closing quotes (\' or ") are removed from the returned string.
Parameters
[out]varpreturn string value if found (NULL otherwise)
[in,out]cfgdatapre-parsed config-data
[in]secNamesection name in which to find variable 'varName', NULL='default' section
[in]varNamevariable name to be read
[out]wasReaddid we succeed in reading? *‍/

Definition at line 277 of file ConfigFile.c.

◆ DEFINE_XLALREADCONFIGVARIABLE() [1/10]

DEFINE_XLALREADCONFIGVARIABLE ( BOOLEAN  ,
BOOLEAN   
)

◆ DEFINE_XLALREADCONFIGVARIABLE() [2/10]

DEFINE_XLALREADCONFIGVARIABLE ( INT4  ,
INT4   
)

◆ DEFINE_XLALREADCONFIGVARIABLE() [3/10]

DEFINE_XLALREADCONFIGVARIABLE ( INT8  ,
INT8   
)

◆ DEFINE_XLALREADCONFIGVARIABLE() [4/10]

DEFINE_XLALREADCONFIGVARIABLE ( UINT4  ,
UINT4   
)

◆ DEFINE_XLALREADCONFIGVARIABLE() [5/10]

DEFINE_XLALREADCONFIGVARIABLE ( UINT8  ,
UINT8   
)

◆ DEFINE_XLALREADCONFIGVARIABLE() [6/10]

DEFINE_XLALREADCONFIGVARIABLE ( REAL8  ,
REAL8   
)

◆ DEFINE_XLALREADCONFIGVARIABLE() [7/10]

DEFINE_XLALREADCONFIGVARIABLE ( STRINGVector  ,
LALStringVector  
)

◆ DEFINE_XLALREADCONFIGVARIABLE() [8/10]

DEFINE_XLALREADCONFIGVARIABLE ( EPOCH  ,
LIGOTimeGPS   
)

◆ DEFINE_XLALREADCONFIGVARIABLE() [9/10]

DEFINE_XLALREADCONFIGVARIABLE ( RAJ  ,
REAL8   
)

◆ DEFINE_XLALREADCONFIGVARIABLE() [10/10]

DEFINE_XLALREADCONFIGVARIABLE ( DECJ  ,
REAL8   
)