libabigail
abg-ctf-reader.h
Go to the documentation of this file.
1 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
2 // -*- Mode: C++ -*-
3 //
4 // Copyright (C) 2021-2023 Oracle, Inc.
5 //
6 // Author: Jose E. Marchesi
7 
8 /// @file
9 ///
10 /// This file contains the declarations of the entry points to
11 /// de-serialize an instance of @ref abigail::corpus from a file in
12 /// elf format, containing CTF information.
13 
14 #ifndef __ABG_CTF_READER_H__
15 #define __ABG_CTF_READER_H__
16 
17 #include <ostream>
18 #include "abg-corpus.h"
19 #include "abg-suppression.h"
20 #include "abg-elf-based-reader.h"
21 
22 #include "ctf-api.h"
23 
24 namespace abigail
25 {
26 
27 /// Namespace of the reader for the CTF debug information.
28 namespace ctf
29 {
30 
31 elf_based_reader_sptr
32 create_reader(const std::string& elf_path,
33  const vector<char**>& debug_info_root_paths,
34  environment& env);
35 
36 void
37 reset_reader(elf_based_reader& ctxt,
38  const std::string& elf_path,
39  const vector<char**>& debug_info_root_path);
40 } // end namespace ctf_reader
41 } // end namespace abigail
42 
43 #endif // ! __ABG_CTF_READER_H__
This file contains the declarations for an elf-based. DWARF and CTF readers can inherit this one.
void reset_reader(elf_based_reader &rdr, const std::string &elf_path, const vector< char ** > &debug_info_root_path)
Re-initialize a reader so that it can re-used to read another binary.
elf_based_reader_sptr create_reader(const std::string &elf_path, const vector< char ** > &debug_info_root_paths, environment &env)
Create and return a new read context to process CTF information from a given ELF file.
Toplevel namespace for libabigail.