1 /* 2 * config.h 3 */ 4 #ifndef _clish_config_h 5 #define _clish_config_h 6 7 #include "lub/types.h" 8 9 typedef struct clish_config_s clish_config_t; 10 11 /* Possible CONFIG operations */ 12 typedef enum { 13 CLISH_CONFIG_NONE, 14 CLISH_CONFIG_SET, 15 CLISH_CONFIG_UNSET, 16 CLISH_CONFIG_DUMP 17 } clish_config_op_e; 18 19 /*===================================== 20 * COMMAND INTERFACE 21 *===================================== */ 22 /*----------------- 23 * meta functions 24 *----------------- */ 25 clish_config_t *clish_config_new(void); 26 /*----------------- 27 * methods 28 *----------------- */ 29 void clish_config_delete(clish_config_t *instance); 30 void clish_config_dump(const clish_config_t *instance); 31 32 /*----------------- 33 * attributes 34 *----------------- */ 35 void clish_config__set_op(clish_config_t *instance, clish_config_op_e op); 36 clish_config_op_e clish_config__get_op(const clish_config_t *instance); 37 void clish_config__set_priority(clish_config_t *instance, unsigned short priority); 38 unsigned short clish_config__get_priority(const clish_config_t *instance); 39 void clish_config__set_pattern(clish_config_t *instance, const char *pattern); 40 char *clish_config__get_pattern(const clish_config_t *instance); 41 void clish_config__set_file(clish_config_t *instance, const char *file); 42 char *clish_config__get_file(const clish_config_t *instance); 43 void clish_config__set_splitter(clish_config_t *instance, bool_t splitter); 44 bool_t clish_config__get_splitter(const clish_config_t *instance); 45 void clish_config__set_seq(clish_config_t *instance, const char *seq_num); 46 const char *clish_config__get_seq(const clish_config_t *instance); 47 bool_t clish_config__get_unique(const clish_config_t *instance); 48 void clish_config__set_unique(clish_config_t *instance, bool_t unique); 49 void clish_config__set_depth(clish_config_t *instance, const char *depth); 50 const char *clish_config__get_depth(const clish_config_t *instance); 51 52 #endif /* _clish_config_h */ 53