2016-09-05 12:00:36 -07:00
|
|
|
/*----------------------------------------------------------------------------*/
|
2017-08-25 17:48:06 -07:00
|
|
|
/* Copyright (c) 2016-2017 FIRST. All Rights Reserved. */
|
2016-09-05 12:00:36 -07:00
|
|
|
/* Open Source Software - may be modified and shared by FRC teams. The code */
|
|
|
|
|
/* must be accompanied by the FIRST BSD license file in the root directory of */
|
|
|
|
|
/* the project. */
|
|
|
|
|
/*----------------------------------------------------------------------------*/
|
|
|
|
|
|
2017-08-25 17:48:06 -07:00
|
|
|
#ifndef CSCORE_LOG_H_
|
|
|
|
|
#define CSCORE_LOG_H_
|
2016-09-05 12:00:36 -07:00
|
|
|
|
2017-08-25 17:48:06 -07:00
|
|
|
#include <support/Logger.h>
|
|
|
|
|
#include <support/atomic_static.h>
|
2016-09-05 12:00:36 -07:00
|
|
|
|
|
|
|
|
namespace cs {
|
|
|
|
|
|
|
|
|
|
class Logger : public wpi::Logger {
|
|
|
|
|
public:
|
|
|
|
|
static Logger& GetInstance() {
|
|
|
|
|
ATOMIC_STATIC(Logger, instance);
|
|
|
|
|
return instance;
|
|
|
|
|
}
|
|
|
|
|
~Logger();
|
|
|
|
|
|
2017-02-17 01:12:16 -05:00
|
|
|
void SetDefaultLogger();
|
|
|
|
|
|
2016-09-05 12:00:36 -07:00
|
|
|
private:
|
|
|
|
|
Logger();
|
|
|
|
|
|
|
|
|
|
ATOMIC_STATIC_DECL(Logger)
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
#define LOG(level, x) WPI_LOG(cs::Logger::GetInstance(), level, x)
|
|
|
|
|
|
|
|
|
|
#undef ERROR
|
|
|
|
|
#define ERROR(x) WPI_ERROR(cs::Logger::GetInstance(), x)
|
|
|
|
|
#define WARNING(x) WPI_WARNING(cs::Logger::GetInstance(), x)
|
|
|
|
|
#define INFO(x) WPI_INFO(cs::Logger::GetInstance(), x)
|
|
|
|
|
|
|
|
|
|
#define DEBUG(x) WPI_DEBUG(cs::Logger::GetInstance(), x)
|
|
|
|
|
#define DEBUG1(x) WPI_DEBUG1(cs::Logger::GetInstance(), x)
|
|
|
|
|
#define DEBUG2(x) WPI_DEBUG2(cs::Logger::GetInstance(), x)
|
|
|
|
|
#define DEBUG3(x) WPI_DEBUG3(cs::Logger::GetInstance(), x)
|
|
|
|
|
#define DEBUG4(x) WPI_DEBUG4(cs::Logger::GetInstance(), x)
|
|
|
|
|
|
2016-12-10 23:36:35 -08:00
|
|
|
#define SERROR(x) ERROR(GetName() << ": " << x)
|
|
|
|
|
#define SWARNING(x) WARNING(GetName() << ": " << x)
|
|
|
|
|
#define SINFO(x) INFO(GetName() << ": " << x)
|
|
|
|
|
|
|
|
|
|
#define SDEBUG(x) DEBUG(GetName() << ": " << x)
|
|
|
|
|
#define SDEBUG1(x) DEBUG1(GetName() << ": " << x)
|
|
|
|
|
#define SDEBUG2(x) DEBUG2(GetName() << ": " << x)
|
|
|
|
|
#define SDEBUG3(x) DEBUG3(GetName() << ": " << x)
|
|
|
|
|
#define SDEBUG4(x) DEBUG4(GetName() << ": " << x)
|
|
|
|
|
|
2017-08-25 17:48:06 -07:00
|
|
|
} // namespace cs
|
2016-09-05 12:00:36 -07:00
|
|
|
|
2017-08-25 17:48:06 -07:00
|
|
|
#endif // CSCORE_LOG_H_
|