source: XIOS3/trunk/extern/cpptrace/src/symbols.hpp

Last change on this file was 2573, checked in by ymipsl, 9 months ago

create new external source lib : cpptrace, for statck trace output
YM

File size: 1.4 KB
Line 
1#ifndef SYMBOLS_HPP
2#define SYMBOLS_HPP
3
4#include "cpptrace.hpp"
5
6#include <memory>
7#include <vector>
8
9namespace cpptrace {
10    namespace detail {
11        #ifdef CPPTRACE_GET_SYMBOLS_WITH_LIBBACKTRACE
12        namespace libbacktrace {
13            std::vector<stacktrace_frame> resolve_frames(const std::vector<void*>& frames);
14        }
15        #endif
16        #ifdef CPPTRACE_GET_SYMBOLS_WITH_LIBDWARF
17        namespace libdwarf {
18            std::vector<stacktrace_frame> resolve_frames(const std::vector<void*>& frames);
19        }
20        #endif
21        #ifdef CPPTRACE_GET_SYMBOLS_WITH_LIBDL
22        namespace libdl {
23            std::vector<stacktrace_frame> resolve_frames(const std::vector<void*>& frames);
24        }
25        #endif
26        #ifdef CPPTRACE_GET_SYMBOLS_WITH_ADDR2LINE
27        namespace addr2line {
28            std::vector<stacktrace_frame> resolve_frames(const std::vector<void*>& frames);
29        }
30        #endif
31        #ifdef CPPTRACE_GET_SYMBOLS_WITH_DBGHELP
32        namespace dbghelp {
33            std::vector<stacktrace_frame> resolve_frames(const std::vector<void*>& frames);
34        }
35        #endif
36        #ifdef CPPTRACE_GET_SYMBOLS_WITH_NOTHING
37        namespace nothing {
38            std::vector<stacktrace_frame> resolve_frames(const std::vector<void*>& frames);
39        }
40        #endif
41        std::vector<stacktrace_frame> resolve_frames(const std::vector<void*>& frames);
42    }
43}
44
45#endif
Note: See TracBrowser for help on using the repository browser.