00001
00002
00003
00004
00005
00006 #ifndef H_CPPPDFStructSTree
00007 #define H_CPPPDFStructSTree
00008
00009 #include <PDF/Struct/RoleMap.h>
00010 #include <PDF/Struct/ClassMap.h>
00011
00012 namespace pdftron {
00013 namespace PDF {
00014 namespace Struct {
00015
00021 class STree
00022 {
00023 public:
00024
00033 STree (SDF::Obj struct_dict);
00034
00035 STree (const STree&);
00036 STree& operator= (const STree&);
00037
00041 bool IsValid() const;
00042
00046 int GetNumKids();
00047
00052 class SElement GetKid(int index);
00053
00060 class SElement GetElement(const char* id_buf, int id_buf_sz);
00061
00065 RoleMap GetRoleMap() const;
00066
00070 class ClassMap GetClassMap() const;
00071
00075 SDF::Obj GetSDFObj () const;
00076
00077
00079 STree(TRN_STree impl);
00080 private:
00081 TRN_STree mp_tree;
00083
00084 };
00085
00086
00087 };
00088 };
00089 };
00090
00091
00092
00093 #include <Impl/STree.inl>
00094 #endif
00095