Initial commit based on common repo commit ffeb9c9b

This commit is contained in:
2021-04-22 15:57:00 +02:00
commit 8b2a408e6f
107 changed files with 61542 additions and 0 deletions

61
libs/gempa/caps/log.h Normal file
View File

@@ -0,0 +1,61 @@
/***************************************************************************
* Copyright (C) 2009 by gempa GmbH *
* *
* All Rights Reserved. *
* *
* NOTICE: All information contained herein is, and remains *
* the property of gempa GmbH and its suppliers, if any. The intellectual *
* and technical concepts contained herein are proprietary to gempa GmbH *
* and its suppliers. *
* Dissemination of this information or reproduction of this material *
* is strictly forbidden unless prior written permission is obtained *
* from gempa GmbH. *
***************************************************************************/
#ifndef GEMPA_CAPS_LOG_H
#define GEMPA_CAPS_LOG_H
namespace Gempa {
namespace CAPS {
enum LogLevel {
LL_UNDEFINED = 0,
LL_ERROR,
LL_WARNING,
LL_NOTICE,
LL_INFO,
LL_DEBUG,
LL_QUANTITY
};
#define CAPS_LOG_MSG(LogLevel, ...) \
do {\
if ( Gempa::CAPS::LogHandler[LogLevel] != NULL )\
Gempa::CAPS::LogHandler[LogLevel](__VA_ARGS__);\
} while(0)
#define CAPS_ERROR(...) CAPS_LOG_MSG(Gempa::CAPS::LL_ERROR, __VA_ARGS__)
#define CAPS_WARNING(...) CAPS_LOG_MSG(Gempa::CAPS::LL_WARNING, __VA_ARGS__)
#define CAPS_NOTICE(...) CAPS_LOG_MSG(Gempa::CAPS::LL_NOTICE, __VA_ARGS__)
#define CAPS_INFO(...) CAPS_LOG_MSG(Gempa::CAPS::LL_INFO, __VA_ARGS__)
#define CAPS_DEBUG(...) CAPS_LOG_MSG(Gempa::CAPS::LL_DEBUG, __VA_ARGS__)
typedef void (*LogOutput)(const char *, ...);
extern LogOutput LogHandler[LL_QUANTITY];
void SetLogHandler(LogLevel, LogOutput);
}
}
#endif