8#ifndef INCLUDED_ORCUS_ORCUS_XLSX_HPP
9#define INCLUDED_ORCUS_ORCUS_XLSX_HPP
11#include "interface.hpp"
17namespace spreadsheet {
namespace iface {
class import_factory; }}
19struct xlsx_rel_sheet_info;
20struct xlsx_rel_table_info;
21struct xlsx_rel_pivot_cache_info;
22struct xlsx_rel_pivot_cache_record_info;
23struct orcus_xlsx_impl;
24class xlsx_opc_handler;
28 friend class xlsx_opc_handler;
30 std::unique_ptr<impl> mp_impl;
39 static bool detect(
const unsigned char* blob,
size_t size);
41 virtual void read_file(std::string_view filepath)
override;
44 virtual std::string_view
get_name()
const override;
48 void set_formulas_to_doc();
50 void read_workbook(
const std::string& dir_path,
const std::string& file_name);
55 void read_sheet(
const std::string& dir_path,
const std::string& file_name, xlsx_rel_sheet_info* data);
61 void read_shared_strings(
const std::string& dir_path,
const std::string& file_name);
63 void read_styles(
const std::string& dir_path,
const std::string& file_name);
65 void read_table(
const std::string& dir_path,
const std::string& file_name, xlsx_rel_table_info* data);
67 void read_pivot_cache_def(
68 const std::string& dir_path,
const std::string& file_name,
69 const xlsx_rel_pivot_cache_info* data);
71 void read_pivot_cache_rec(
72 const std::string& dir_path,
const std::string& file_name,
73 const xlsx_rel_pivot_cache_record_info* data);
75 void read_pivot_table(
const std::string& dir_path,
const std::string& file_name);
77 void read_rev_headers(
const std::string& dir_path,
const std::string& file_name);
79 void read_rev_log(
const std::string& dir_path,
const std::string& file_name);
81 void read_drawing(
const std::string& dir_path,
const std::string& file_name);
Definition interface.hpp:27
Definition orcus_xlsx.hpp:27
virtual void read_file(std::string_view filepath) override
virtual void read_stream(std::string_view stream) override
virtual std::string_view get_name() const override
Definition import_interface.hpp:1193