#include "core/fpdfdoc/cpdf_structtree.h"
#include <utility>
#include "core/fpdfapi/parser/cpdf_array.h"
#include "core/fpdfapi/parser/cpdf_dictionary.h"
#include "core/fpdfapi/parser/cpdf_document.h"
#include "core/fpdfapi/parser/cpdf_number.h"
#include "core/fpdfapi/parser/cpdf_reference.h"
#include "core/fpdfdoc/cpdf_numbertree.h"
#include "core/fpdfdoc/cpdf_structelement.h"
namespace {
bool IsTagged(const CPDF_Document* pDoc) { … }
}
std::unique_ptr<CPDF_StructTree> CPDF_StructTree::LoadPage(
const CPDF_Document* pDoc,
RetainPtr<const CPDF_Dictionary> pPageDict) { … }
CPDF_StructTree::CPDF_StructTree(const CPDF_Document* pDoc)
: … { … }
CPDF_StructTree::~CPDF_StructTree() = default;
ByteString CPDF_StructTree::GetRoleMapNameFor(const ByteString& type) const { … }
void CPDF_StructTree::LoadPageTree(RetainPtr<const CPDF_Dictionary> pPageDict) { … }
RetainPtr<CPDF_StructElement> CPDF_StructTree::AddPageNode(
RetainPtr<const CPDF_Dictionary> pDict,
StructElementMap* map,
int nLevel) { … }
bool CPDF_StructTree::AddTopLevelNode(
const CPDF_Dictionary* pDict,
const RetainPtr<CPDF_StructElement>& pElement) { … }