11#ifndef COMMON_CONFIG_H
22#define COMMON_CONFIG_H
33
4- #include <stdbool.h>
5- #include <stdint.h>
6-
74// ===================================================================
8- // 공통 설정 관리 시스템
5+ // 공통 설정 상수
96// ===================================================================
107
11- // 설정 타입
12- typedef enum {
13- CONFIG_TYPE_STRING ,
14- CONFIG_TYPE_INT ,
15- CONFIG_TYPE_BOOL ,
16- CONFIG_TYPE_FLOAT
17- } config_type_t ;
18-
19- // 설정 항목 구조체
20- typedef struct {
21- const char * key ; // 설정 키
22- config_type_t type ; // 설정 타입
23- void * value ; // 설정 값 포인터
24- void * default_value ; // 기본값 포인터
25- const char * description ; // 설정 설명
26- } config_item_t ;
27-
288// 기본 네트워크 설정
299#define DEFAULT_SERVER_HOST "127.0.0.1"
3010#define DEFAULT_SERVER_PORT 8080
@@ -36,35 +16,4 @@ typedef struct {
3616#define DEFAULT_MAX_CHAT_MESSAGES 50
3717#define DEFAULT_CHAT_MESSAGE_LENGTH 256
3818
39- // 기본 UI 설정
40- #define DEFAULT_ANIMATION_ENABLED true
41- #define DEFAULT_SOUND_ENABLED false
42- #define DEFAULT_AUTO_SAVE_ENABLED true
43-
44- // 설정 관리 함수들
45- int config_init (const char * config_file_path );
46- void config_cleanup (void );
47-
48- // 설정 값 읽기
49- const char * config_get_string (const char * key , const char * default_value );
50- int config_get_int (const char * key , int default_value );
51- bool config_get_bool (const char * key , bool default_value );
52- float config_get_float (const char * key , float default_value );
53-
54- // 설정 값 쓰기
55- int config_set_string (const char * key , const char * value );
56- int config_set_int (const char * key , int value );
57- int config_set_bool (const char * key , bool value );
58- int config_set_float (const char * key , float value );
59-
60- // 설정 파일 저장/로드
61- int config_save (void );
62- int config_load (void );
63-
64- // 설정 초기화 (기본값으로 복원)
65- void config_reset_to_defaults (void );
66-
67- // 설정 목록 출력 (디버그용)
68- void config_print_all (void );
69-
7019#endif // COMMON_CONFIG_H
0 commit comments