Back to index

texmacs  1.0.7.15
pdfnames.h
Go to the documentation of this file.
00001 /*  $Header: /home/cvsroot/dvipdfmx/src/pdfnames.h,v 1.3 2009/04/26 21:23:29 matthias Exp $
00002 
00003     This is dvipdfmx, an eXtended version of dvipdfm by Mark A. Wicks.
00004 
00005     Copyright (C) 2002 by Jin-Hwan Cho and Shunsaku Hirata,
00006     the dvipdfmx project team <dvipdfmx@project.ktug.or.kr>
00007     
00008     Copyright (C) 1998, 1999 by Mark A. Wicks <mwicks@kettering.edu>
00009 
00010     This program is free software; you can redistribute it and/or modify
00011     it under the terms of the GNU General Public License as published by
00012     the Free Software Foundation; either version 2 of the License, or
00013     (at your option) any later version.
00014     
00015     This program is distributed in the hope that it will be useful,
00016     but WITHOUT ANY WARRANTY; without even the implied warranty of
00017     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00018     GNU General Public License for more details.
00019     
00020     You should have received a copy of the GNU General Public License
00021     along with this program; if not, write to the Free Software
00022     Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
00023 */
00024 
00025 #ifndef _PDF_NAMES_H_
00026 #define _PDF_NAMES_H_
00027 
00028 /* Hash */
00029 #include "dpxutil.h"
00030 #include "pdfobj.h"
00031 
00032 /* Not actually tree... */
00033 extern struct ht_table *pdf_new_name_tree    (void);
00034 extern void             pdf_delete_name_tree (struct ht_table **names);
00035 
00036 extern int      pdf_names_add_object       (struct ht_table *names,
00037                                        const void *key, int keylen, pdf_obj *object);
00038 extern pdf_obj *pdf_names_lookup_reference (struct ht_table *names,
00039                                        const void *key, int keylen);
00040 extern pdf_obj *pdf_names_lookup_object    (struct ht_table *names, 
00041                                        const void *key, int keylen);
00042 extern int      pdf_names_close_object     (struct ht_table *names,
00043                                        const void *key, int keylen);
00044 
00045 /* Really create name tree... */
00046 extern pdf_obj *pdf_names_create_tree      (struct ht_table *names,
00047                                        long *count,
00048                                        struct ht_table *filter);
00049 
00050 extern char    *printable_key (const char *key, int keylen);
00051 
00052 #endif /*  _PDF_NAMES_H_ */