Pārlūkot izejas kodu

Added InitLogger function and renamed enums

Paul-Louis Ageneau 5 gadi atpakaļ
vecāks
revīzija
402a4df4a0
4 mainītis faili ar 38 papildinājumiem un 14 dzēšanām
  1. 21 0
      include/rtc/include.hpp
  2. 13 3
      include/rtc/rtc.h
  3. 2 9
      src/rtc.cpp
  4. 2 2
      test/main.cpp

+ 21 - 0
include/rtc/include.hpp

@@ -26,6 +26,8 @@
 #include <optional>
 #include <string>
 #include <vector>
+
+#include <plog/Appenders/ColorConsoleAppender.h>
 #include <plog/Log.h>
 
 namespace rtc {
@@ -49,6 +51,25 @@ const uint16_t DEFAULT_SCTP_PORT = 5000; // SCTP port to use by default
 const size_t DEFAULT_MAX_MESSAGE_SIZE = 65536;    // Remote max message size if not specified in SDP
 const size_t LOCAL_MAX_MESSAGE_SIZE = 256 * 1024; // Local max message size
 
+// Don't change, it must match plog severity
+enum class LogLevel {
+	None = 0,
+	Fatal = 1,
+	Error = 2,
+	Warning = 3,
+	Info = 4,
+	Debug = 5,
+	Verbose = 6
+};
+
+inline void InitLogger(LogLevel level, plog::IAppender *appender = nullptr) {
+	static plog::ColorConsoleAppender<plog::TxtFormatter> consoleAppender;
+	if (!appender)
+		appender = &consoleAppender;
+	plog::init(static_cast<plog::Severity>(level), appender);
+	LOGD << "Logger initialized";
+}
+
 template <class... Ts> struct overloaded : Ts... { using Ts::operator()...; };
 template <class... Ts> overloaded(Ts...)->overloaded<Ts...>;
 

+ 13 - 3
include/rtc/rtc.h

@@ -23,7 +23,7 @@
 extern "C" {
 #endif
 
-// libdatachannel rtc C API
+// libdatachannel C API
 
 typedef enum {
 	RTC_NEW = 0,
@@ -41,9 +41,19 @@ typedef enum {
 	RTC_GATHERING_COMPLETE = 2
 } rtc_gathering_state_t;
 
-typedef enum { none, fatal, error, warning, info, debug, verbose } LogLevel;
+// Don't change, it must match plog severity
+typedef enum {
+	RTC_LOG_NONE = 0,
+	RTC_LOG_FATAL = 1,
+	RTC_LOG_ERROR = 2,
+	RTC_LOG_WARNING = 3,
+	RTC_LOG_INFO = 4,
+	RTC_LOG_DEBUG = 5,
+	RTC_LOG_VERBOSE = 6
+} rtc_log_level_t;
+
+void rtcInitLogger(rtc_log_level_t level);
 
-void rtcInitLogger(LogLevel logLevel, plog::IAppender *appender = NULL);
 int rtcCreatePeerConnection(const char **iceServers, int iceServersCount);
 void rtcDeletePeerConnection(int pc);
 int rtcCreateDataChannel(int pc, const char *label);

+ 2 - 9
src/rtc.cpp

@@ -17,6 +17,7 @@
  */
 
 #include "datachannel.hpp"
+#include "include.hpp"
 #include "peerconnection.hpp"
 
 #include <rtc.h>
@@ -43,15 +44,7 @@ void *getUserPointer(int id) {
 
 } // namespace
 
-void rtcInitLogger(LogLevel logLevel, plog::IAppender *appender) {
-	static plog::ColorConsoleAppender<plog::TxtFormatter> consoleAppender;
-
-	if (appender == NULL)
-		plog::init(static_cast<plog::Severity>(logLevel), &consoleAppender);
-	else
-		plog::init(static_cast<plog::Severity>(logLevel), appender);
-	LOGD << "Logger Initialized";
-}
+void rtcInitLogger(rtc_log_level_t level) { InitLogger(static_cast<LogLevel>(level)); }
 
 int rtcCreatePeerConnection(const char **iceServers, int iceServersCount) {
 	Configuration config;

+ 2 - 2
test/main.cpp

@@ -29,8 +29,8 @@ using namespace std;
 template <class T> weak_ptr<T> make_weak_ptr(shared_ptr<T> ptr) { return ptr; }
 
 int main(int argc, char **argv) {
-	rtcInitLogger(LogLevel::debug);
-	rtc::Configuration config;
+	InitLogger(LogLevel::Debug);
+	Configuration config;
 
 	// config.iceServers.emplace_back("stun.l.google.com:19302");
 	// config.enableIceTcp = true;