/**
 * \file DLgDefines.h
 * \brief デバッグログライブラリの全てのマクロを定義するヘッダファイル。
 * \author gobi
 */

#ifndef DLGDEFINES_H_
#define DLGDEFINES_H_
/**
 * \def LOG_FORMAT_MAX_LENGTH
 * \brief デバッグログ出力形式ストリング。
 *
 * デバッグログライブラリの内部で使用される。
 * \ingroup DLg
 */
#define LOG_FORMAT_MAX_LENGTH			256

/**
 * \def DLOG_LVL_DEBUG
 * \brief デバッグログレベルを表す。
 *
 * DLOG_LVL_DEBUG, DLOG_LVL_INFO, DLOG_LVL_WARN, DLOG_LVL_ERROR, DLOG_LVL_FATAL
 * と言う５個デバッグ出力レベルある。DLgLog関数を呼び出す時に使用するマクロである。
 * 以下のように利用する。
 * \code
 * 		DLgLog(DLOG_LVL_DEBUG, "Error occurred. Errno[%d]. Error is [%s]",
 * 			errno, strerror(errno));
 * \endcode
 * \ingroup DLg
 */
#define DLOG_LVL_DEBUG					1, __FILE__, __LINE__
/**
 * \def DLOG_LVL_INFO
 * \brief デバッグログレベルを表す。
 *
 * DLOG_LVL_DEBUG, DLOG_LVL_INFO, DLOG_LVL_WARN, DLOG_LVL_ERROR, DLOG_LVL_FATAL
 * と言う５個デバッグ出力レベルある。DLgLog関数を呼び出す時に使用するマクロである。
 * 以下のように利用する。
 * \code
 * 		DLgLog(DLOG_LVL_INFO, "Error occurred. Errno[%d]. Error is [%s]",
 * 			errno, strerror(errno));
 * \endcode
 * \ingroup DLg
 */
#define DLOG_LVL_INFO					2, __FILE__, __LINE__
/**
 * \def DLOG_LVL_WARN
 * \brief デバッグログレベルを表す。
 *
 * DLOG_LVL_DEBUG, DLOG_LVL_INFO, DLOG_LVL_WARN, DLOG_LVL_ERROR, DLOG_LVL_FATAL
 * と言う５個デバッグ出力レベルある。DLgLog関数を呼び出す時に使用するマクロである。
 * 以下のように利用する。
 * \code
 * 		DLgLog(DLOG_LVL_WARN, "Error occurred. Errno[%d]. Error is [%s]",
 * 			errno, strerror(errno));
 * \endcode
 * \ingroup DLg
 */
#define DLOG_LVL_WARN					3, __FILE__, __LINE__
/**
 * \def DLOG_LVL_ERROR
 * \brief デバッグログレベルを表す。
 *
 * DLOG_LVL_DEBUG, DLOG_LVL_INFO, DLOG_LVL_WARN, DLOG_LVL_ERROR, DLOG_LVL_FATAL
 * と言う５個デバッグ出力レベルある。DLgLog関数を呼び出す時に使用するマクロである。
 * 以下のように利用する。
 * \code
 * 		DLgLog(DLOG_LVL_ERROR, "Error occurred. Errno[%d]. Error is [%s]",
 * 			errno, strerror(errno));
 * \endcode
 * \ingroup DLg
 */
#define DLOG_LVL_ERROR					4, __FILE__, __LINE__
/**
 * \def DLOG_LVL_FATAL
 * \brief デバッグログレベルを表す。
 *
 * DLOG_LVL_DEBUG, DLOG_LVL_INFO, DLOG_LVL_WARN, DLOG_LVL_ERROR, DLOG_LVL_FATAL
 * と言う５個デバッグ出力レベルある。DLgLog関数を呼び出す時に使用するマクロである。
 * 以下のように利用する。
 * \code
 * 		DLgLog(DLOG_LVL_FATAL, "Error occurred. Errno[%d]. Error is [%s]",
 * 			errno, strerror(errno));
 * \endcode
 * \ingroup DLg
 */
#define DLOG_LVL_FATAL					5, __FILE__, __LINE__

/** \def DBG_LOG_LEVEL
 * \brief デバッグログレベル設定される環境変数名を定義する。
 * \ingroup DLg
 */
#define DBG_LOG_LEVEL					"DBG_LOG_LEVEL"

#endif /*DLGDEFINES_H_*/
