1 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 2 // -*- Mode: C++ -*- 3 // 4 // Copyright (C) 2021 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-reader-common.h" 21 22 namespace abigail 23 { 24 namespace ctf_reader 25 { 26 27 class read_context; 28 typedef shared_ptr<read_context> read_context_sptr; 29 30 read_context_sptr 31 create_read_context(const std::string& elf_path, 32 ir::environment *env); 33 corpus_sptr 34 read_corpus(read_context *ctxt, elf_reader::status& status); 35 corpus_sptr 36 read_corpus(const read_context_sptr &ctxt, elf_reader::status &status); 37 } // end namespace ctf_reader 38 } // end namespace abigail 39 40 #endif // ! __ABG_CTF_READER_H__ 41