Roc Toolkit internal modules
Roc Toolkit: real-time audio streaming
Toggle main menu visibility
Loading...
Searching...
No Matches
backtrace.h
Go to the documentation of this file.
1
/*
2
* Copyright (c) 2015 Roc Streaming authors
3
*
4
* This Source Code Form is subject to the terms of the Mozilla Public
5
* License, v. 2.0. If a copy of the MPL was not distributed with this
6
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
7
*/
8
9
//! @file roc_core/backtrace.h
10
//! @brief Backtrace printing.
11
12
#ifndef ROC_CORE_BACKTRACE_H_
13
#define ROC_CORE_BACKTRACE_H_
14
15
#include "
roc_core/stddefs.h
"
16
17
namespace
roc
{
18
namespace
core
{
19
20
//! Print backtrace to stderr.
21
//! @note
22
//! This function is NOT signal-safe
23
//! It CAN use heap and stdio.
24
void
print_backtrace_full
();
25
26
//! Print backtrace to stderr (emergency mode).
27
//! @note
28
//! This function IS signal-safe.
29
//! It can NOT use heap and stdio.
30
void
print_backtrace_safe
();
31
32
//! Demangle symbol name.
33
//! @note
34
//! This function is NOT signal-safe.
35
//! It CAN use heap and stdio.
36
//! @remarks
37
//! @p demangled_buf and @p demangled_size specify the buffer for demangled name.
38
//! When necessary, this function malloc()s or realloc()s @p demangled_buf and
39
//! updates @p demangled_size accordingly. The buffer may be NULL. The buffer may
40
//! be resused across several calls. The user should manually free() the buffer
41
//! when it's not needed anymore.
42
//! @returns
43
//! demangled symbol or NULL if the symbol can't be demangled.
44
const
char
*
45
demangle_symbol
(
const
char
* mangled,
char
*& demangled_buf,
size_t
& demangled_size);
46
47
}
// namespace core
48
}
// namespace roc
49
50
#endif
// ROC_CORE_BACKTRACE_H_
roc::core
General-purpose building blocks and platform abstraction layer.
roc::core::print_backtrace_safe
void print_backtrace_safe()
Print backtrace to stderr (emergency mode).
roc::core::print_backtrace_full
void print_backtrace_full()
Print backtrace to stderr.
roc::core::demangle_symbol
const char * demangle_symbol(const char *mangled, char *&demangled_buf, size_t &demangled_size)
Demangle symbol name.
roc
Root namespace.
stddefs.h
Commonly used types and functions.
roc_core
backtrace.h
Generated by
1.17.0