//
//  RTCXLogMacros.h
//  RTCXLog
//
//  Created by Apple on 2025/8/28.
//

#ifndef RTCXLogMacros_h
#define RTCXLogMacros_h
#import <RTCXLog/RTCXLog.h>
#define RTCX_LOG_MACRO(level, atag, frmt, ...)                        \
        [RTCXLog logLevel : level                                     \
                     tag : atag                                       \
                    file : __FILE__                                   \
                function : __PRETTY_FUNCTION__                        \
                    line : __LINE__                                   \
                  format : (frmt), ## __VA_ARGS__]

#define RTCXLogError(tag,frmt,...) RTCX_LOG_MACRO(RTCXLogLevelError, tag, frmt, ##__VA_ARGS__)
#define RTCXLogWarn(tag,frmt,...) RTCX_LOG_MACRO(RTCXLogLevelWarning, tag, frmt, ##__VA_ARGS__)
#define RTCXLogInfo(tag,frmt,...) RTCX_LOG_MACRO(RTCXLogLevelInfo, tag, frmt, ##__VA_ARGS__)
#define RTCXLogDebug(tag,frmt,...) RTCX_LOG_MACRO(RTCXLogLevelDebug, tag, frmt, ##__VA_ARGS__)
#define RTCXLogVerbose(tag,frmt,...) RTCX_LOG_MACRO(RTCXLogLevelVerbose, tag, frmt, ##__VA_ARGS__)

#endif /* RTCXLogMacros_h */
