aboutsummaryrefslogtreecommitdiffstats
path: root/include/qpdf/Constants.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/qpdf/Constants.h')
-rw-r--r--include/qpdf/Constants.h52
1 files changed, 52 insertions, 0 deletions
diff --git a/include/qpdf/Constants.h b/include/qpdf/Constants.h
new file mode 100644
index 00000000..31cefd54
--- /dev/null
+++ b/include/qpdf/Constants.h
@@ -0,0 +1,52 @@
+#ifndef __QPDFCONSTANTS_H__
+#define __QPDFCONSTANTS_H__
+
+/* Keep this file 'C' compatible so it can be used from the C and C++
+ * interfaces.
+ */
+
+/* Error Codes */
+
+enum qpdf_error_code_e
+{
+ qpdf_e_success = 0,
+ qpdf_e_internal, /* logic/programming error -- indicates bug */
+ qpdf_e_system, /* I/O error, memory error, etc. */
+ qpdf_e_unsupported, /* PDF feature not (yet) supported by qpdf */
+ qpdf_e_password, /* incorrect password for encrypted file */
+ qpdf_e_damaged_pdf /* syntax errors or other damage in PDF */
+};
+
+/* Write Parameters */
+
+enum qpdf_object_stream_e
+{
+ qpdf_o_disable = 0, /* disable object streams */
+ qpdf_o_preserve, /* preserve object streams */
+ qpdf_o_generate /* generate object streams */
+};
+enum qpdf_stream_data_e
+{
+ qpdf_s_uncompress = 0, /* uncompress stream data */
+ qpdf_s_preserve, /* preserve stream data compression */
+ qpdf_s_compress /* compress stream data */
+};
+
+/* R3 Encryption Parameters */
+
+enum qpdf_r3_print_e
+{
+ qpdf_r3p_full = 0, /* allow all printing */
+ qpdf_r3p_low, /* allow only low-resolution printing */
+ qpdf_r3p_none /* allow no printing */
+};
+enum qpdf_r3_modify_e
+{
+ qpdf_r3m_all = 0, /* allow all modification */
+ qpdf_r3m_annotate, /* allow comment authoring and form operations */
+ qpdf_r3m_form, /* allow form field fill-in or signing */
+ qpdf_r3m_assembly, /* allow only document assembly */
+ qpdf_r3m_none /* allow no modification */
+};
+
+#endif /* __QPDFCONSTANTS_H__ */