annotate Param.h @ 16:93b017e30c76

adjust #defines to avoid double defs
author Nina Engelhardt <nengel@mailbox.tu-berlin.de>
date Mon, 29 Oct 2012 16:55:57 +0100
parents 8f6d8a258491
children 756969c89fe7
rev   line source
Nina@4 1 /*
Nina@4 2 *
Nina@4 3 * Author: SeanHalle@yahoo.com
Nina@4 4 *
Nina@4 5 * Created on November 19, 2009, 6:30 PM
Nina@4 6 */
Nina@4 7
Nina@4 8 #ifndef _PARAM_H
Nina@4 9 #define _PARAM_H
Nina@4 10
Nina@4 11 typedef
Nina@4 12 struct
Nina@4 13 { int type;
Nina@4 14 int intValue;
Nina@4 15 char * strValue;
Nina@4 16 float floatValue;
Nina@4 17 }
Nina@4 18 ParamStruc;
Nina@4 19
Nina@4 20 #define INT_PARAM_TYPE 0
Nina@4 21 #define STRING_PARAM_TYPE 1
Nina@4 22 #define FLOAT_PARAM_TYPE 2
Nina@4 23
Nina@4 24 #define PARAM_BAG_HASHSIZE 1024
Nina@4 25
Nina@4 26 typedef struct _ParamBagHashEntry ParamBagHashEntry;
Nina@4 27
Nina@4 28 struct _ParamBagHashEntry
Nina@4 29 {
Nina@4 30 char *key;
Nina@4 31 ParamStruc *param;
Nina@4 32 struct _ParamBagHashEntry *next;
Nina@4 33 }
Nina@4 34 /*ParamBagHashEntry*/;
Nina@4 35
Nina@4 36
Nina@4 37 typedef
Nina@4 38 struct
Nina@4 39 { int bagSz;
Nina@4 40 ParamBagHashEntry* *entries;
Nina@4 41 }
Nina@4 42 ParamBag;
Nina@4 43
Nina@4 44
Nina@4 45 ParamBag *makeParamBag();
Nina@4 46 void readParamFileIntoBag( char *paramFileName, ParamBag * bag );
Nina@4 47 ParamStruc *getParamFromBag( char *key, ParamBag * bag );
Nina@4 48 int addParamToBag( char* key, ParamStruc *param, ParamBag *bag );
Nina@4 49 void freeParamBag( ParamBag *bag );
Nina@4 50 //char *paramBagToString( ParamBag * bag );
Nina@4 51 ParamStruc *makeParamStruc();
Nina@4 52 ParamStruc *makeParamFromStrs( char * type, char *value );
Nina@4 53 ssize_t getline( char **lineptr, size_t *n, FILE *stream );
Nina@4 54
Nina@4 55 #endif /* _PARAM_H */
Nina@4 56