Files
pdf/engine/src/parser/pdfium_loader.hpp
T
2026-05-15 10:39:16 +05:30

21 lines
786 B
C++

// pdfengine::parser — the PDFium boundary.
//
// Rule R2: this directory (engine/src/parser/) is the ONLY place in the entire
// codebase permitted to include PDFium headers or call raw FPDF_* APIs. CI
// enforces this with scripts/check_pdfium_boundary.* — keep it that way.
#pragma once
namespace pdfengine::parser {
// True if the engine was compiled with PDFENGINE_WITH_PDFIUM, i.e. linked
// against the PDFium static library. False in Phase 0 default builds.
[[nodiscard]] bool pdfiumAvailable() noexcept;
// Global one-time initialisation / teardown of the PDFium library.
// No-ops when built without PDFium. Init must be called before, and destroy
// after, any document parsing.
void pdfiumInitLibrary();
void pdfiumDestroyLibrary();
} // namespace pdfengine::parser