17 #ifndef OSFI_C_INTERFACE
18 #define OSFI_C_INTERFACE 1
23 # define MAX_LENGTH_FILE_NAME 255
24 # define MAX_LENGTH_STRING 255
25 # define MAX_PARAMETER_FIELD_SIZE 255
26 # define MAX_PARAMETER_NAME_SIZE 255
27 # define MAX_PARAMETER_DESC_SIZE 255
28 # define MAX_LOG_SIZE 1000
32 #if __STDC_VERSION__ >= 201112L
33 #define OSFI_NO_RETURN _Noreturn
35 #define OSFI_NO_RETURN
311 const char *paramName);
360 const char *paramName,
int node[],
int depth);
446 int *columns,
const char *paramName);
456 const char *paramName);
466 const char *paramName);
476 void osfiConFMGetNodeDimension(
const char *paramName,
int node[],
int depth,
int *size);
478 bool osfiConFMIsLeaf(
const char *paramName,
int node[],
int depth);
void osfiCLPGetConfFile(char *fileName, int *length)
void osfiLoggerQualityDouble(const char *name, double value)
int osfiConFMGetColumns(const char *paramName)
void osfiConFMGetMatrixDoubleValues(double *doubleMatrix, int *rows, int *columns, const char *paramName)
void osfiConFMGetVectorDoubleValues(double *doubleList, int *size, const char *paramName)
void osfiConFMGetDoubleValue(double *value, const char *paramName)
void osfiConFMGetLeafVectorStringValues(char *stringList[], int *size, const char *paramName, int node[], int depth)
void osfiConFMGetVectorStringValues(char *stringList[], int *size, const char *paramName)
void osfiConFMGetStringValue(char *param, int *length, const char *paramName)
bool osfiConFMReadConfigFile(const char *fileName)
void osfiConFMfileExist(bool *booleanMatrix, int *rows, int *columns, const char *paramName)
void osfiLoggerInfo(const char *format,...)
void osfiConFMGetVectorTimeValues(osfi_timevalue_t *list, int *size, const char *paramName)
void osfiConFMGetIntegerValue(int *value, const char *paramName)
void osfiConFMGetFileValue(char *param, int *length, const char *paramName)
void osfiConFMGetParameter(osfiParameter *param, const char *paramName)
void osfiConFMGetLeafVectorFileValues(char *fileList[], int *size, const char *paramName, int node[], int depth)
ParamType
Definition: OSFIC.h:42
@ ParamDouble
Floating point number, in decimal representation with the range of IEEE754 binary64.
Definition: OSFIC.h:46
@ ParamFile
Definition: OSFIC.h:58
@ ParamInteger
Integral number, with the value range of int32_t.
Definition: OSFIC.h:44
@ ParamBoolean
Truth value. Per the E2E-ICD, only TRUE or FALSE are accepted, capitalized.
Definition: OSFIC.h:48
@ ParamFolder
Path to a folder, with the same rules as ParamFile.
Definition: OSFIC.h:60
@ ParamString
Definition: OSFIC.h:53
@ ParamTime
Definition: OSFIC.h:66
void osfiConFMGetMatrixStringValues(char *stringMatrix[], int *rows, int *columns, const char *paramName)
void osfiCLPGetOutputFiles(char *outputFiles[], int *noFiles)
void osfiLoggerQuality(const char *name, const char *value)
void osfiConFMGetVectorBooleanValues(bool *boolList, int *size, const char *paramName)
void osfiConFMGetLeafVectorTimeValues(osfi_timevalue_t *list, int *size, const char *paramName, int node[], int depth)
void osfiCLPGetConfFiles(char *confFiles[], int *noFiles)
void osfiLoggerError(const char *format,...)
void osfiLoggerFinishExecution(int errorCode)
void osfiConFMGetTimeValue(osfi_timevalue_t *value, const char *paramName)
int osfiConFMGetRows(const char *paramName)
void osfiLoggerProgress(int n, int m)
int osfiTimevalue_cmp(const osfi_timevalue_t *a, const osfi_timevalue_t *b)
struct osfi_timevalue osfi_timevalue_t
void osfiConFMGetMatrixBooleanValues(bool *booleanMatrix, int *rows, int *columns, const char *paramName)
void osfiConFMGetDimension(const char *paramName, int index, int *size)
void osfiConFMGetLeafVectorIntegerValues(int *intList, int *size, const char *paramName, int node[], int depth)
void osfiConFMPrintParameter(const char *paramName)
void osfiLoggerDebug(const char *format,...)
void osfiConFMPrintParameters()
void osfiCLPGetInputFiles(char *inputFiles[], int *noFiles)
void osfiLoggerWarning(const char *format,...)
bool osfiConFMGetBoolValue(const char *paramName)
void osfiConFMGetVectorFileValues(char *fileList[], int *size, const char *paramName)
void osfiConFMGetVectorIntegerValues(int *intList, int *size, const char *paramName)
void osfiConFMGetMatrixTimeValues(osfi_timevalue_t *intMatrix, int *rows, int *columns, const char *paramName)
bool osfiConFMExistParameter(const char *paramName)
bool osfiConFMIsArray(const char *paramName)
void osfiConFMGetMatrixIntegerValues(int *intMatrix, int *rows, int *columns, const char *paramName)
void osfiConFMGetLeafVectorBooleanValues(bool *boolList, int *size, const char *paramName, int node[], int depth)
enum osfi_confm_val_res osfiConFMValidateAgainst(const char *schemaFile)
int osfiConFMParamReader(const char *fileName, const char *schemaName)
void osfiConFMGetLeafVectorDoubleValues(double *doubleList, int *size, const char *paramName, int node[], int depth)
int osfiCLP(int argc, char *argv[])
void osfiConFMGetMatrixFileValues(char *fileMatrix[], int *rows, int *columns, const char *paramName)
#define OSFI_NO_RETURN
Definition: OSFIC.h:35
ParamType osfiConFMGetElementType(const char *paramName)
osfi_confm_val_res
Definition: OSFIC.h:203
@ OSFI_CONFM_VAL_PASSED
Definition: OSFIC.h:205
@ OSFI_CONFM_VAL_INVALID
Definition: OSFIC.h:207
@ OSFI_CONFM_VAL_ERRORS
Definition: OSFIC.h:209
int8_t hour
Hour of day, from 0 to 23.
Definition: OSFIC.h:233
int16_t year
Year number, from 1 to 9999 inclusive.
Definition: OSFIC.h:230
int8_t dom
Day of month, from 1 to the appropriate length according to the year.
Definition: OSFIC.h:232
int32_t nanosec
Fraction of second in ns resolution, from 0 to 999999999.
Definition: OSFIC.h:236
int8_t sec
Second of minute, from 0 to 60 to allow for leap seconds.
Definition: OSFIC.h:235
int8_t month
Month number, from 1 to 12.
Definition: OSFIC.h:231
int8_t minute
Minute of hour, from 0 to 59.
Definition: OSFIC.h:234