Changeset 26 in libcf for trunk/include/cf_log.h
- Timestamp:
- 02/04/13 17:00:53 (11 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/include/cf_log.h
r23 r26 1 1 /** 2 * cf_log.h 2 * @file cf_log.h 3 * @author myusgun <myusgun@gmail.com> 4 * @version 0.1 3 5 */ 4 6 #ifndef __CF_LOG_H__ … … 19 21 #define CF_ERROR_LOG_NOT_INITIALIZE CF_ERROR_LOG - 11 20 22 23 /** 24 * 로그의 버퍼 크기를 기본 값으로 설정 25 * 26 * @see CF_Log_CreateCtx, CF_LOG_OPEN 27 */ 21 28 #define CF_LOG_BUFFER_DEFAULT -1 29 30 /** 로그 기록 시 버퍼를 사용하지 않고 즉시 기록 31 * 32 * @see CF_Log_CreateCtx, CF_LOG_OPEN, CF_Log_Initialize 33 */ 22 34 #define CF_LOG_BUFFER_NO 0 23 35 36 /** 37 * 로그에 아이디 넘버를 부여하여 생성 <br /> 38 * 로그 기록 시, 아이디 넘버를 사용하면 해당 로그로 기록할 수 있음 39 * 40 * @param __id 부여할 아이디 넘버 41 * @param __file 로그 파일 경로 42 * @param __memsize 로그 버퍼 크기 43 * 44 * @see CF_Log_MapCtxID 45 */ 24 46 #define CF_LOG_OPEN(__id,__file,__memsize) \ 25 47 CF_Log_MapCtxID (__id, CF_Log_CreateCtx (__file, __memsize)) 26 48 49 /** 50 * 아이디 넘버에 해당하는 로그에 쓰기 51 * 52 * @param __id 로그의 아이디 넘버 53 * @param __pf 로그의 프리픽스 문자열 54 * @param __fmt 포맷 스트링 55 * @param ... 가변 인자 56 * 57 * @see CF_Log_GetMappedCtx 58 */ 27 59 #define CF_LOG_WRITE(__id,__pf,__fmt,...) \ 28 60 CF_Log_Write (CF_Log_GetMappedCtx (__id),__pf,__fmt,##__VA_ARGS__) 29 61 30 #define CF_LOG_CLOSE CF_Log_UnmapCtxID 31 62 /** 63 * 아이디 넘버에 해당하는 로그를 닫고 해제 64 * 65 * @param __id 로그의 아이디 넘버 66 * 67 * @see CF_Log_UnmapCtxID 68 */ 69 #define CF_LOG_CLOSE(__id) CF_Log_UnmapCtxID (__id) 70 71 /** 로그 컨텍스트 */ 32 72 typedef void * CF_Log_Ctx; 33 73 … … 36 76 #endif 37 77 78 /** 79 * 로그를 사용하기 위해 초기화 80 * 81 * @return 성공 시, CF_OK; 실패 시, 오류 코드 82 * 83 * @param logPool 아이디 넘버 최대 값 84 */ 38 85 CF_EXPORT int 39 86 CF_Log_Initialize (const int logPool); 40 87 88 /** 89 * 로그가 모두 사용된 후 자원 해제 90 * 91 * @return CF_OK 반환 92 */ 41 93 CF_EXPORT int 42 94 CF_Log_Finalize (void); 43 95 96 /** 97 * 로그 컨텍스트 생성 98 * 99 * @return 성공 시, 로그 컨텍스트; 실패 시, NULL 100 * 101 * @param path 로그 파일 경로 102 * @param memsize 로그 버퍼 크기 103 * 104 * @see CF_LOG_BUFFER_DEFAULT, CF_LOG_BUFFER_NO 105 */ 44 106 CF_EXPORT CF_Log_Ctx 45 107 CF_Log_CreateCtx (const char * path, 46 108 const int memsize); 47 109 110 /** 111 * 로그 컨텍스트 해제 112 * 113 * @return 성공 시, CF_OK; 실패 시, 오류 코드 114 * 115 * @param ctx 로그 컨텍스트 116 */ 48 117 CF_EXPORT int 49 118 CF_Log_DestroyCtx (CF_Log_Ctx ctx); 50 119 120 /** 121 * 로그 컨텍스트에 멀티쓰레드 모드 설정 122 * 123 * @return 성공 시, CF_OK; 실패 시, 오류 코드 124 * 125 * @param ctx 로그 컨텍스트 126 */ 51 127 CF_EXPORT int 52 128 CF_Log_SetMultiThread (CF_Log_Ctx ctx); 53 129 130 /** 131 * 로그 컨텍스트에 멀티쓰레드 모드 설정 해제 132 * 133 * @return 성공 시, CF_OK; 실패 시, 오류 코드 134 * 135 * @param ctx 로그 컨텍스트 136 */ 54 137 CF_EXPORT int 55 138 CF_Log_UnsetMultiThread (CF_Log_Ctx ctx); 56 139 140 /** 141 * 로그 컨텍스트에 따라 로그 쓰기 142 * 143 * @return 성공 시, CF_OK; 실패 시, 오류 코드 144 * 145 * @param ctx 로그 컨텍스트 146 * @param prefix 로그의 프리픽스 문자열 147 * @param fmt 포맷 스트링 148 * @param ... 가변 인자 149 */ 57 150 CF_EXPORT int 58 151 CF_Log_Write (CF_Log_Ctx ctx, … … 60 153 const char * fmt, ...); 61 154 155 /** 156 * 로그 버퍼의 데이터를 즉시 로그 파일에 쓰기 157 * 158 * @return 성공 시, CF_OK; 실패 시, 오류 코드 159 * 160 * @param ctx 로그 컨텍스트 161 */ 62 162 CF_EXPORT int 63 163 CF_Log_Flush (CF_Log_Ctx ctx); 64 164 165 /** 166 * 로그 컨텍스트에 아이디 넘버 할당<br /> 167 * 로그 기록 시, 아이디 넘버를 사용하면 해당 로그로 기록할 수 있음 168 * 169 * @return 성공 시, CF_OK; 실패 시, 오류 코드 170 * 171 * @param mapid 부여할 아이디 넘버 172 * @param ctx 로그 컨텍스트 173 * 174 * @remark 반드시 먼저 초기화 해야하며, 초기화 시에 주어진 번호보다 작은 아이디 넘버를 사용해야 함 175 * 176 * @see CF_LOG_OPEN, CF_Log_CreateCtx 177 */ 65 178 CF_EXPORT int 66 179 CF_Log_MapCtxID (const int mapid, 67 180 const CF_Log_Ctx ctx); 68 181 182 /** 183 * 아이디 넘버에 해당하는 로그를 닫고 해당하는 컨텍스트를 해제 184 * 185 * @return 성공 시, CF_OK; 실패 시, 오류 코드 186 * 187 * @param mapid 로그의 아이디 넘버 188 * 189 * @remark 아이디 넘버에 해당하는 컨텍스트가 해제되므로 주의 190 * 191 * @see CF_LOG_CLOSE, CF_Log_DestroyCtx 192 */ 69 193 CF_EXPORT int 70 194 CF_Log_UnmapCtxID (const int mapid); 71 195 196 /** 197 * 아이디 넘버에 해당하는 로그 컨텍스트를 얻기 198 * 199 * @return 성공 시, 로그 컨텍스트; 실패 시, NULL 200 * 201 * @param mapid 로그의 아이디 넘버 202 */ 72 203 CF_EXPORT CF_Log_Ctx 73 204 CF_Log_GetMappedCtx (const int mapid);
Note:
See TracChangeset
for help on using the changeset viewer.