Skip to main content

trace-cpp-api.cpp File

C++ source file with the definitions for the C++ trace API. More...

Included Headers

Namespaces Index

namespacemicro_os_plus

The primary namespace for the µOS++ framework. More...

namespacetrace

Tracing support namespace. More...

namespacedetail

Implementation details namespace. More...

Description

C++ source file with the definitions for the C++ trace API.

Definitions for the C++ API functions (micro_os_plus::trace::printf(), etc.) that forward to the corresponding C++ internal tracer<implementation> functions.

The empty inline stubs (used when tracing is disabled) are located in trace-cpp-api-inlines.h, included at the bottom of trace-cpp-api.h.

File Listing

The file content with the documentation metadata removed is:

1/*
2 * This file is part of the µOS++ project (https://micro-os-plus.github.io/).
3 * Copyright (c) 2015-2026 Liviu Ionescu. All rights reserved.
4 *
5 * Permission to use, copy, modify, and/or distribute this software
6 * for any purpose is hereby granted, under the terms of the MIT license.
7 *
8 * If a copy of the license was not distributed with this file, it can
9 * be obtained from https://opensource.org/licenses/mit.
10 */
11
12// ----------------------------------------------------------------------------
13
28// ----------------------------------------------------------------------------
29
31
32// ----------------------------------------------------------------------------
33
34#if defined(MICRO_OS_PLUS_DIAG_TRACE_ENABLED)
35
36// ----------------------------------------------------------------------------
37
38#if defined(__clang__)
39#pragma clang diagnostic ignored "-Wc++98-compat"
40#endif
41
43{
44 // --------------------------------------------------------------------------
45 // Explicit instantiation of the whole class, once per policy class.
46 // This instantiates all member functions (printf, vprintf, puts,
47 // putchar, dump_args) in one line, and makes them visible to the
48 // linker from other translation units. Do the same in your project
49 // for any user-defined policy class.
50 // --------------------------------------------------------------------------
51
52 template class tracer<implementation>;
53
54 // --------------------------------------------------------------------------
55} // namespace micro_os_plus::trace::detail
56
57// ----------------------------------------------------------------------------
58
59#endif // defined(MICRO_OS_PLUS_DIAG_TRACE_ENABLED)
60
61// ----------------------------------------------------------------------------

Generated via doxygen2docusaurus 2.2.1 by Doxygen 1.17.0.