rtsp_tensorrt/pipeline/common/logger.hpp
sladro e13cb3659c feat: 初始化项目结构
- 创建基本项目结构和目录
- 添加CMake构建系统
- 实现基础的配置解析功能
- 添加YOLO推理框架支持
- 集成RTSP和视频流处理功能
- 添加性能监控和日志系统
2024-12-24 16:25:03 +08:00

53 lines
1.4 KiB
C++

#pragma once
#include <string>
#include <iostream>
#include <memory>
#include <NvInfer.h>
namespace pipeline {
class Logger {
public:
static void info(const std::string& message) {
std::cout << "[INFO] " << message << std::endl;
}
static void warning(const std::string& message) {
std::cout << "[WARNING] " << message << std::endl;
}
static void error(const std::string& message) {
std::cerr << "[ERROR] " << message << std::endl;
}
};
namespace detail {
class Logger : public nvinfer1::ILogger {
public:
void log(Severity severity, const char* msg) noexcept override {
switch (severity) {
case Severity::kINTERNAL_ERROR:
std::cerr << "[F] " << msg << std::endl;
break;
case Severity::kERROR:
std::cerr << "[E] " << msg << std::endl;
break;
case Severity::kWARNING:
std::cout << "[W] " << msg << std::endl;
break;
case Severity::kINFO:
std::cout << "[I] " << msg << std::endl;
break;
case Severity::kVERBOSE:
std::cout << "[V] " << msg << std::endl;
break;
default:
std::cout << "[?] " << msg << std::endl;
break;
}
}
};
} // namespace detail
} // namespace pipeline