xerus
a general purpose tensor library
callStack.h
Go to the documentation of this file.
1 // Xerus - A General Purpose Tensor Library
2 // Copyright (C) 2014-2017 Benjamin Huber and Sebastian Wolf.
3 //
4 // Xerus is free software: you can redistribute it and/or modify
5 // it under the terms of the GNU Affero General Public License as published
6 // by the Free Software Foundation, either version 3 of the License,
7 // or (at your option) any later version.
8 //
9 // Xerus is distributed in the hope that it will be useful,
10 // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 // GNU Affero General Public License for more details.
13 //
14 // You should have received a copy of the GNU Affero General Public License
15 // along with Xerus. If not, see <http://www.gnu.org/licenses/>.
16 //
17 // For further information on Xerus visit https://libXerus.org
18 // or contact us at contact@libXerus.org.
19 
25 #pragma once
26 
27 #include <string>
28 #include <utility>
29 
30 namespace xerus {
31  namespace misc {
38  std::string get_call_stack();
39 
43  std::pair<uintptr_t, uintptr_t> get_range_of_section(void* _addr, std::string _name);
44  }
45 }
The main namespace of xerus.
Definition: basic.h:37
std::string get_call_stack()
Returns a string representation of the current call-stack (excluding the function itself)...
Definition: callStack.cpp:166
std::pair< uintptr_t, uintptr_t > get_range_of_section(void *_addr, std::string _name)
Returns the address range of the elf-section names _name as part of the executable / so file that con...
Definition: callStack.cpp:186