20 #include "prtx/prtx.h" 21 #include "prtx/Types.h" 23 #include "prtx/OpaquePtr.h" 25 #include "prt/LogLevel.h" 26 #include "prt/LogHandler.h" 27 #include "prt/Status.h" 34 #ifndef PRTX_LOG_ENABLED 35 # define PRTX_LOG_ENABLED 1 // enable prtx logger by default 38 #ifndef PRTX_LOG_ENFORCE_TRACING 39 # define PRTX_LOG_ENFORCE_TRACING 0 // set to 1 if you want tracing even in PRT_CC_OPT or PRT_CC_OPT_SYM 42 #if (PRTX_LOG_ENFORCE_TRACING == 1) && defined(PRT_BC_REL) 43 # error "enforcing tracing in release build configuration is not allowed" 52 typedef std::shared_ptr<Reports> ReportsPtr;
158 LogFormatter& operator%(
const std::vector<uint32_t>& v);
169 std::wstring getMessage()
const;
172 BEGIN_SUPPRESS_EXPORT_WARNINGS
173 class LogFormatterImpl;
175 END_SUPPRESS_EXPORT_WARNINGS
182 template<
bool E, prt::LogLevel L,
typename LT>
185 template<
typename... ARGS>
189 LogFwd& operator%(T&&) {
return *
this; }
196 template<prt::LogLevel L,
typename LT>
197 class LogFwd<true, L, LT> final :
protected LT {
199 template<
typename... ARGS>
200 LogFwd(ARGS&&... args) : LT(L, args...) { }
203 LogFwd& operator%(T&& t) { LT::operator%(t);
return *
this; }
206 #if (defined(PRT_CC_DBG) && (PRT_CC_DBG == 1)) 207 constexpr
bool isDBG =
true;
209 constexpr
bool isDBG =
false;
212 template<prt::LogLevel L>
213 constexpr
bool IsLogEnabled = (PRTX_LOG_ENABLED == 1) && ((L !=
prt::LOG_TRACE) || ((L ==
prt::LOG_TRACE) && isDBG) || (PRTX_LOG_ENFORCE_TRACING == 1));
215 template<prt::LogLevel L>
Definition: BoundingBox.h:38
std::vector< double > DoubleVector
vector of double
Definition: Types.h:32
LogLevel
Definition: LogLevel.h:29
Internal call tracing. This log level is unused in release builds of the runtime but may be used by c...
Definition: LogLevel.h:30
std::vector< std::string > StringVector
vector of std::string
Definition: Types.h:34
The Procedural Runtime eXtension namespace. The prtx namespace contains the tools to extend the Proce...
Definition: AnnotationBuilder.h:35
std::shared_ptr< URI > URIPtr
shared pointer implementation of prtx::URI
Definition: URI.h:37
Status
Definition: Status.h:31
std::vector< std::wstring > WStringVector
vector of std::wstring
Definition: Types.h:35