Vanilla.PDF  2.0.0
Cross-platform toolkit for creating and modifying PDF documents
c_handles.h
Go to the documentation of this file.
1#ifndef _C_HANDLES_H
2#define _C_HANDLES_H
3
4#ifdef __cplusplus
5extern "C"
6{
7#endif
8
24 #define DECLARE_OBJECT_HANDLE(x) \
25 typedef struct x##HandleTag x##Handle;
26
27 #pragma region Syntax
28
29 #pragma region Objects
30
31 DECLARE_OBJECT_HANDLE(Object);
32 DECLARE_OBJECT_HANDLE(ArrayObject);
33 DECLARE_OBJECT_HANDLE(BooleanObject);
34 DECLARE_OBJECT_HANDLE(NameObject);
35 DECLARE_OBJECT_HANDLE(NullObject);
36 DECLARE_OBJECT_HANDLE(RealObject);
37 DECLARE_OBJECT_HANDLE(IntegerObject);
38 DECLARE_OBJECT_HANDLE(StreamObject);
39 DECLARE_OBJECT_HANDLE(StringObject);
40 DECLARE_OBJECT_HANDLE(HexadecimalStringObject);
41 DECLARE_OBJECT_HANDLE(LiteralStringObject);
42 DECLARE_OBJECT_HANDLE(IndirectReferenceObject);
43 DECLARE_OBJECT_HANDLE(DictionaryObject);
44 DECLARE_OBJECT_HANDLE(DictionaryObjectIterator);
45
46 // Attributes
47 DECLARE_OBJECT_HANDLE(BaseObjectAttribute);
48 DECLARE_OBJECT_HANDLE(ImageMetadataObjectAttribute);
49 DECLARE_OBJECT_HANDLE(SerializationOverrideObjectAttribute);
50 DECLARE_OBJECT_HANDLE(ObjectAttributeList);
51
52 #pragma endregion
53
54 #pragma region Files
55
56 DECLARE_OBJECT_HANDLE(File);
57 DECLARE_OBJECT_HANDLE(FileWriter);
58 DECLARE_OBJECT_HANDLE(FileWriterObserver);
59
60 DECLARE_OBJECT_HANDLE(Xref);
61 DECLARE_OBJECT_HANDLE(XrefIterator);
62 DECLARE_OBJECT_HANDLE(XrefEntry);
63 DECLARE_OBJECT_HANDLE(XrefFreeEntry);
64 DECLARE_OBJECT_HANDLE(XrefUsedEntry);
65 DECLARE_OBJECT_HANDLE(XrefCompressedEntry);
66 DECLARE_OBJECT_HANDLE(XrefChain);
67 DECLARE_OBJECT_HANDLE(XrefChainIterator);
68
69 DECLARE_OBJECT_HANDLE(FilterBase);
70 DECLARE_OBJECT_HANDLE(FlateDecodeFilter);
71 DECLARE_OBJECT_HANDLE(DCTDecodeFilter);
72 DECLARE_OBJECT_HANDLE(ASCII85DecodeFilter);
73 DECLARE_OBJECT_HANDLE(ASCIIHexDecodeFilter);
74 DECLARE_OBJECT_HANDLE(LZWDecodeFilter);
75 DECLARE_OBJECT_HANDLE(JPXDecodeFilter);
76
77 #pragma endregion
78
79 #pragma region Contents
80
81 /* Content instructions */
82 DECLARE_OBJECT_HANDLE(ContentObject);
83 DECLARE_OBJECT_HANDLE(ContentOperation);
84 DECLARE_OBJECT_HANDLE(ContentInstruction);
85 DECLARE_OBJECT_HANDLE(ContentInstructionCollection);
86 DECLARE_OBJECT_HANDLE(ContentInstructionCollectionIterator);
87
88 /* Content operations */
89 DECLARE_OBJECT_HANDLE(ContentOperationGeneric);
90 DECLARE_OBJECT_HANDLE(ContentOperationTextFont);
91 DECLARE_OBJECT_HANDLE(ContentOperationTextShow);
92 DECLARE_OBJECT_HANDLE(ContentOperationTextShowArray);
93 DECLARE_OBJECT_HANDLE(ContentOperationBeginText);
94 DECLARE_OBJECT_HANDLE(ContentOperationEndText);
95
96 /* Content operators */
97 DECLARE_OBJECT_HANDLE(ContentOperator);
98 DECLARE_OBJECT_HANDLE(ContentOperatorUnknown);
99
100 /* Content objects */
101 DECLARE_OBJECT_HANDLE(ContentObjectText);
102 DECLARE_OBJECT_HANDLE(ContentObjectInlineImage);
103
104 /* Content stream parser */
105 DECLARE_OBJECT_HANDLE(ContentParser);
106
107 #pragma endregion
108
109 #pragma region Utils
110
111 DECLARE_OBJECT_HANDLE(Buffer);
112 DECLARE_OBJECT_HANDLE(BufferArray);
113 DECLARE_OBJECT_HANDLE(IUnknown);
114
115 DECLARE_OBJECT_HANDLE(SigningKey);
116 DECLARE_OBJECT_HANDLE(EncryptionKey);
117 DECLARE_OBJECT_HANDLE(PKCS12Key);
118
119 DECLARE_OBJECT_HANDLE(InputStream);
120 DECLARE_OBJECT_HANDLE(OutputStream);
121 DECLARE_OBJECT_HANDLE(InputOutputStream);
122
123 #pragma endregion
124
125 #pragma endregion
126
127 #pragma region Documents
128
129 DECLARE_OBJECT_HANDLE(Document);
130
131 DECLARE_OBJECT_HANDLE(Catalog);
132
133 DECLARE_OBJECT_HANDLE(DocumentInfo);
134
135 DECLARE_OBJECT_HANDLE(PageTree);
136 DECLARE_OBJECT_HANDLE(PageObject);
137 DECLARE_OBJECT_HANDLE(PageContents);
138
139 DECLARE_OBJECT_HANDLE(DeveloperExtensions);
140 DECLARE_OBJECT_HANDLE(DeveloperExtensionsIterator);
141 DECLARE_OBJECT_HANDLE(DeveloperExtension);
142
143 DECLARE_OBJECT_HANDLE(PageLabels);
144 DECLARE_OBJECT_HANDLE(PageLabel);
145
146 DECLARE_OBJECT_HANDLE(ViewerPreferences);
147 DECLARE_OBJECT_HANDLE(PageRange);
148 DECLARE_OBJECT_HANDLE(PageSubRange);
149
150 DECLARE_OBJECT_HANDLE(OutlineBase);
151 DECLARE_OBJECT_HANDLE(Outline);
152 DECLARE_OBJECT_HANDLE(OutlineItem);
153 DECLARE_OBJECT_HANDLE(OutlineItemColor);
154 DECLARE_OBJECT_HANDLE(OutlineItemFlags);
155
156 DECLARE_OBJECT_HANDLE(ResourceDictionary);
157
158 DECLARE_OBJECT_HANDLE(NamedDestinations);
159 DECLARE_OBJECT_HANDLE(Destination);
160
161 DECLARE_OBJECT_HANDLE(PageAnnotations);
162 DECLARE_OBJECT_HANDLE(Annotation);
163 DECLARE_OBJECT_HANDLE(LinkAnnotation);
164
165 DECLARE_OBJECT_HANDLE(InteractiveForm);
166
167 DECLARE_OBJECT_HANDLE(DigitalSignature);
168 DECLARE_OBJECT_HANDLE(ByteRangeCollection);
169 DECLARE_OBJECT_HANDLE(ByteRange);
170
171 DECLARE_OBJECT_HANDLE(Field);
172 DECLARE_OBJECT_HANDLE(FieldCollection);
173 DECLARE_OBJECT_HANDLE(ButtonField);
174 DECLARE_OBJECT_HANDLE(TextField);
175 DECLARE_OBJECT_HANDLE(ChoiceField);
176 DECLARE_OBJECT_HANDLE(SignatureField);
177
178 DECLARE_OBJECT_HANDLE(DocumentSigner);
179 DECLARE_OBJECT_HANDLE(DocumentSignatureSettings);
180
181 DECLARE_OBJECT_HANDLE(DocumentEncryptionSettings);
182
183 /* Fonts */
184
185 DECLARE_OBJECT_HANDLE(Font);
186 DECLARE_OBJECT_HANDLE(Type0Font);
187 DECLARE_OBJECT_HANDLE(FontMap);
188 DECLARE_OBJECT_HANDLE(CharacterMap);
189 DECLARE_OBJECT_HANDLE(EmbeddedCharacterMap);
190 DECLARE_OBJECT_HANDLE(UnicodeCharacterMap);
191
192 DECLARE_OBJECT_HANDLE(BaseFontRange);
193
194 /* Common data structures */
195
196 DECLARE_OBJECT_HANDLE(Date);
197 DECLARE_OBJECT_HANDLE(Rectangle);
198
199 #pragma endregion
200
203#ifdef __cplusplus
204};
205#endif
206
207#endif /* _C_HANDLES_H */