1 /*
    2  * << Haru Free PDF Library >> -- hpdf_catalog.h
    3  *
    4  * URL: http://libharu.org
    5  *
    6  * Copyright (c) 1999-2006 Takeshi Kanno <takeshi_kanno@est.hi-ho.ne.jp>
    7  * Copyright (c) 2007-2009 Antony Dovgal <tony@daylessday.org>
    8  *
    9  * Permission to use, copy, modify, distribute and sell this software
   10  * and its documentation for any purpose is hereby granted without fee,
   11  * provided that the above copyright notice appear in all copies and
   12  * that both that copyright notice and this permission notice appear
   13  * in supporting documentation.
   14  * It is provided "as is" without express or implied warranty.
   15  *
   16  */
   17 
   18 #ifndef _HPDF_CATALOG_H
   19 #define _HPDF_CATALOG_H
   20 
   21 #include "hpdf_objects.h"
   22 
   23 #ifdef __cplusplus
   24 extern "C" {
   25 #endif
   26 
   27 typedef HPDF_Dict HPDF_Catalog;
   28 
   29 HPDF_Catalog
   30 HPDF_Catalog_New  (HPDF_MMgr  mmgr,
   31                    HPDF_Xref  xref);
   32 
   33 
   34 HPDF_NameDict
   35 HPDF_Catalog_GetNames  (HPDF_Catalog  catalog);
   36 
   37 
   38 HPDF_STATUS
   39 HPDF_Catalog_SetNames  (HPDF_Catalog  catalog,
   40                         HPDF_NameDict dict);
   41 
   42 
   43 HPDF_Pages
   44 HPDF_Catalog_GetRoot  (HPDF_Catalog  catalog);
   45 
   46 
   47 HPDF_PageLayout
   48 HPDF_Catalog_GetPageLayout  (HPDF_Catalog  catalog);
   49 
   50 
   51 HPDF_STATUS
   52 HPDF_Catalog_SetPageLayout  (HPDF_Catalog      catalog,
   53                              HPDF_PageLayout   layout);
   54 
   55 
   56 HPDF_PageMode
   57 HPDF_Catalog_GetPageMode  (HPDF_Catalog  catalog);
   58 
   59 
   60 HPDF_STATUS
   61 HPDF_Catalog_SetPageMode  (HPDF_Catalog   catalog,
   62                            HPDF_PageMode  mode);
   63 
   64 
   65 HPDF_STATUS
   66 HPDF_Catalog_SetOpenAction  (HPDF_Catalog       catalog,
   67                              HPDF_Destination   open_action);
   68 
   69 
   70 HPDF_STATUS
   71 HPDF_Catalog_AddPageLabel  (HPDF_Catalog   catalog,
   72                             HPDF_UINT      page_num,
   73                             HPDF_Dict      page_label);
   74 
   75 
   76 HPDF_UINT
   77 HPDF_Catalog_GetViewerPreference  (HPDF_Catalog   catalog);
   78 
   79 
   80 HPDF_STATUS
   81 HPDF_Catalog_SetViewerPreference  (HPDF_Catalog   catalog,
   82                                    HPDF_UINT      value);
   83 
   84 
   85 HPDF_BOOL
   86 HPDF_Catalog_Validate  (HPDF_Catalog  catalog);
   87 
   88 #ifdef __cplusplus
   89 }
   90 #endif /* __cplusplus */
   91 
   92 #endif /* _HPDF_CATALOG_H */
   93