/**
 * @file       nwd_log.h
 * @brief      Platform-depended API to logging
 * @author     Ivan Vorobiov (i.vorobiov@samsung.com)
 * @version    1.0
 * @date       Created Jun 6, 2016
 * @copyright  In Samsung Ukraine R&D Center (SURC) under a contract between
 * @copyright  LLC "Samsung Electronics Ukraine Company" (Kiev, Ukraine) and
 * @copyright  "Samsung Electronics Co", Ltd (Seoul, Republic of Korea)
 * @copyright  Copyright: (c) Samsung Electronics Co, Ltd 2016. All rights reserved.
**/

#ifndef PA_NWD_LIB_SRC_NWD_LOG_H_
#define PA_NWD_LIB_SRC_NWD_LOG_H_

#include <tees_log.h>

// LOG_E is used only for Release building for data hiding,
#ifndef DEBUG_PA
#define LOG_V(...)
#define LOG_I(...)  TEES_LOG(TEES_LOG_LEVEL_INFO, __VA_ARGS__)
#define LOG_D(...)
#define LOG_E(...)  TEES_LOG(TEES_LOG_LEVEL_ERROR, __VA_ARGS__)

#define LOGM_V(...)
#define LOGM_I(...)
#define LOGM_D(...)
#define LOGM_E(...)
#else
#define LOG_V(...)  TEES_LOG(TEES_LOG_LEVEL_VERBOSE, __VA_ARGS__)
#define LOG_I(...)  TEES_LOG(TEES_LOG_LEVEL_INFO, __VA_ARGS__)
#define LOG_D(...)  TEES_LOG(TEES_LOG_LEVEL_DEBUG, __VA_ARGS__)
#define LOG_E(...)  TEES_LOG(TEES_LOG_LEVEL_ERROR, __VA_ARGS__)

#define LOGM_V(...)  TEES_LOGMEM(TEES_LOG_LEVEL_VERBOSE, __VA_ARGS__)
#define LOGM_I(...)  TEES_LOGMEM(TEES_LOG_LEVEL_INFO, __VA_ARGS__)
#define LOGM_D(...)  TEES_LOGMEM(TEES_LOG_LEVEL_DEBUG, __VA_ARGS__)
#endif

#endif  // PA_NWD_LIB_SRC_NWD_LOG_H_
