Nina@4: /* Nina@4: * Nina@4: * Author: SeanHalle@yahoo.com Nina@4: * Nina@4: * Created on November 19, 2009, 6:30 PM Nina@4: */ Nina@4: Nina@4: #ifndef _PARAM_H Nina@4: #define _PARAM_H Nina@4: Nina@4: typedef Nina@4: struct Nina@4: { int type; Nina@4: int intValue; Nina@4: char * strValue; Nina@4: float floatValue; Nina@4: } Nina@4: ParamStruc; Nina@4: Nina@4: #define INT_PARAM_TYPE 0 Nina@4: #define STRING_PARAM_TYPE 1 Nina@4: #define FLOAT_PARAM_TYPE 2 Nina@4: Nina@4: #define PARAM_BAG_HASHSIZE 1024 Nina@4: Nina@4: typedef struct _ParamBagHashEntry ParamBagHashEntry; Nina@4: Nina@4: struct _ParamBagHashEntry Nina@4: { Nina@4: char *key; Nina@4: ParamStruc *param; Nina@4: struct _ParamBagHashEntry *next; Nina@4: } Nina@4: /*ParamBagHashEntry*/; Nina@4: Nina@4: Nina@4: typedef Nina@4: struct Nina@4: { int bagSz; Nina@4: ParamBagHashEntry* *entries; Nina@4: } Nina@4: ParamBag; Nina@4: Nina@4: Nina@4: ParamBag *makeParamBag(); Nina@4: void readParamFileIntoBag( char *paramFileName, ParamBag * bag ); Nina@4: ParamStruc *getParamFromBag( char *key, ParamBag * bag ); Nina@4: int addParamToBag( char* key, ParamStruc *param, ParamBag *bag ); Nina@4: void freeParamBag( ParamBag *bag ); Nina@4: //char *paramBagToString( ParamBag * bag ); Nina@4: ParamStruc *makeParamStruc(); Nina@4: ParamStruc *makeParamFromStrs( char * type, char *value ); Nina@4: ssize_t getline( char **lineptr, size_t *n, FILE *stream ); Nina@4: Nina@4: #endif /* _PARAM_H */ Nina@4: