Skip to main content

after_effects_sys/opt/rustwide/workdir/
bindings_macos.rs

1/* automatically generated by rust-bindgen 0.72.1 */
2
3pub const A_INTERNAL_TEST_TWO: u32 = 1;
4pub const PF_Vers_BUILD_BITS: u32 = 511;
5pub const PF_Vers_BUILD_SHIFT: u32 = 0;
6pub const PF_Vers_STAGE_BITS: u32 = 3;
7pub const PF_Vers_STAGE_SHIFT: u32 = 9;
8pub const PF_Vers_BUGFIX_BITS: u32 = 15;
9pub const PF_Vers_BUGFIX_SHIFT: u32 = 11;
10pub const PF_Vers_SUBVERS_BITS: u32 = 15;
11pub const PF_Vers_SUBVERS_SHIFT: u32 = 15;
12pub const PF_Vers_VERS_BITS: u32 = 7;
13pub const PF_Vers_VERS_SHIFT: u32 = 19;
14pub const PF_Vers_VERS_HIGH_BITS: u32 = 15;
15pub const PF_Vers_VERS_HIGH_SHIFT: u32 = 26;
16pub const PF_Vers_VERS_LOW_SHIFT: u32 = 3;
17pub const PF_AE235_PLUG_IN_VERSION: u32 = 13;
18pub const PF_AE235_PLUG_IN_SUBVERS: u32 = 29;
19pub const PF_AE234_PLUG_IN_VERSION: u32 = 13;
20pub const PF_AE234_PLUG_IN_SUBVERS: u32 = 28;
21pub const PF_AE220_PLUG_IN_VERSION: u32 = 13;
22pub const PF_AE220_PLUG_IN_SUBVERS: u32 = 27;
23pub const PF_AE184_PLUG_IN_VERSION: u32 = 13;
24pub const PF_AE184_PLUG_IN_SUBVERS: u32 = 26;
25pub const PF_AE182_PLUG_IN_VERSION: u32 = 13;
26pub const PF_AE182_PLUG_IN_SUBVERS: u32 = 25;
27pub const PF_AE180_PLUG_IN_VERSION: u32 = 13;
28pub const PF_AE180_PLUG_IN_SUBVERS: u32 = 24;
29pub const PF_AE177_PLUG_IN_VERSION: u32 = 13;
30pub const PF_AE177_PLUG_IN_SUBVERS: u32 = 23;
31pub const PF_AE176_PLUG_IN_VERSION: u32 = 13;
32pub const PF_AE176_PLUG_IN_SUBVERS: u32 = 22;
33pub const PF_AE175_PLUG_IN_VERSION: u32 = 13;
34pub const PF_AE175_PLUG_IN_SUBVERS: u32 = 21;
35pub const PF_AE171_PLUG_IN_VERSION: u32 = 13;
36pub const PF_AE171_PLUG_IN_SUBVERS: u32 = 20;
37pub const PF_AE170_PLUG_IN_VERSION: u32 = 13;
38pub const PF_AE170_PLUG_IN_SUBVERS: u32 = 18;
39pub const PF_AE161_PLUG_IN_VERSION: u32 = 13;
40pub const PF_AE161_PLUG_IN_SUBVERS: u32 = 17;
41pub const PF_AE160_PLUG_IN_VERSION: u32 = 13;
42pub const PF_AE160_PLUG_IN_SUBVERS: u32 = 16;
43pub const PF_AE151_PLUG_IN_VERSION: u32 = 13;
44pub const PF_AE151_PLUG_IN_SUBVERS: u32 = 15;
45pub const PF_AE150_PLUG_IN_VERSION: u32 = 13;
46pub const PF_AE150_PLUG_IN_SUBVERS: u32 = 15;
47pub const PF_AE142_PLUG_IN_VERSION: u32 = 13;
48pub const PF_AE142_PLUG_IN_SUBVERS: u32 = 14;
49pub const PF_AE140_PLUG_IN_VERSION: u32 = 13;
50pub const PF_AE140_PLUG_IN_SUBVERS: u32 = 13;
51pub const PF_AE138_PLUG_IN_VERSION: u32 = 13;
52pub const PF_AE138_PLUG_IN_SUBVERS: u32 = 11;
53pub const PF_AE136_PLUG_IN_VERSION: u32 = 13;
54pub const PF_AE136_PLUG_IN_SUBVERS: u32 = 10;
55pub const PF_AE135_PLUG_IN_VERSION: u32 = 13;
56pub const PF_AE135_PLUG_IN_SUBVERS: u32 = 9;
57pub const PF_AE130_PLUG_IN_VERSION: u32 = 13;
58pub const PF_AE130_PLUG_IN_SUBVERS: u32 = 7;
59pub const PF_AE122_PLUG_IN_VERSION: u32 = 13;
60pub const PF_AE122_PLUG_IN_SUBVERS: u32 = 6;
61pub const PF_AE121_PLUG_IN_VERSION: u32 = 13;
62pub const PF_AE121_PLUG_IN_SUBVERS: u32 = 5;
63pub const PF_AE120_PLUG_IN_VERSION: u32 = 13;
64pub const PF_AE120_PLUG_IN_SUBVERS: u32 = 4;
65pub const PF_AE1101_PLUG_IN_VERSION: u32 = 13;
66pub const PF_AE1101_PLUG_IN_SUBVERS: u32 = 3;
67pub const PF_AE110_PLUG_IN_VERSION: u32 = 13;
68pub const PF_AE110_PLUG_IN_SUBVERS: u32 = 2;
69pub const PF_AE105_PLUG_IN_VERSION: u32 = 13;
70pub const PF_AE105_PLUG_IN_SUBVERS: u32 = 1;
71pub const PF_AE100_PLUG_IN_VERSION: u32 = 13;
72pub const PF_AE100_PLUG_IN_SUBVERS: u32 = 0;
73pub const PF_AE90_PLUG_IN_VERSION: u32 = 12;
74pub const PF_AE90_PLUG_IN_SUBVERS: u32 = 14;
75pub const PF_AE80_PLUG_IN_VERSION: u32 = 12;
76pub const PF_AE80_PLUG_IN_SUBVERS: u32 = 13;
77pub const PF_AE70_PLUG_IN_VERSION: u32 = 12;
78pub const PF_AE70_PLUG_IN_SUBVERS: u32 = 12;
79pub const PF_AE65_PLUG_IN_VERSION: u32 = 12;
80pub const PF_AE65_PLUG_IN_SUBVERS: u32 = 11;
81pub const PF_AE41_PLUG_IN_VERSION: u32 = 12;
82pub const PF_AE41_PLUG_IN_SUBVERS: u32 = 2;
83pub const PF_AE40_PLUG_IN_VERSION: u32 = 12;
84pub const PF_AE40_PLUG_IN_SUBVERS: u32 = 1;
85pub const PF_AE31_PLUG_IN_VERSION: u32 = 11;
86pub const PF_AE31_PLUG_IN_SUBVERS: u32 = 6;
87pub const PF_AE31_PLUG_IN_SUBVERS_STRICTIFY: u32 = 8;
88pub const PF_AE_PLUG_IN_VERSION: u32 = 13;
89pub const PF_AE_PLUG_IN_SUBVERS: u32 = 29;
90pub const PF_MAX_EFFECT_NAME_LEN: u32 = 31;
91pub const PF_MAX_EFFECT_CATEGORY_NAME_LEN: u32 = 31;
92pub const PF_MAX_EFFECT_PARAM_NAME_LEN: u32 = 31;
93pub const PF_MAX_PARAM_DESCRIPTION_LEN: u32 = 31;
94pub const PF_MAX_PARAM_VALUE_LEN: u32 = 31;
95pub const PF_MAX_EFFECT_MSG_LEN: u32 = 255;
96pub const PF_AE65_AND_EARLIER_MAX_NUM_EFFECT_PARAMS: u32 = 127;
97pub const PF_MAX_WORLD_WIDTH: u32 = 30000;
98pub const PF_MAX_WORLD_HEIGHT: u32 = 30000;
99pub const PF_FIRST_ERR: u32 = 512;
100pub const PF_Category_BLUR_AND_SHARPEN: &[u8; 15] = b"Blur & Sharpen\0";
101pub const PF_Category_CHANNEL: &[u8; 8] = b"Channel\0";
102pub const PF_Category_DISTORT: &[u8; 8] = b"Distort\0";
103pub const PF_Category_IMAGE_CONTROL: &[u8; 14] = b"Image Control\0";
104pub const PF_Category_KEYING: &[u8; 7] = b"Keying\0";
105pub const PF_Category_PERSPECTIVE: &[u8; 12] = b"Perspective\0";
106pub const PF_Category_STYLIZE: &[u8; 8] = b"Stylize\0";
107pub const PF_Category_TEXT: &[u8; 5] = b"Text\0";
108pub const PF_Category_VIDEO: &[u8; 6] = b"Video\0";
109pub const PF_Category_TRANSITION: &[u8; 11] = b"Transition\0";
110pub const PF_Category_AUDIO: &[u8; 6] = b"Audio\0";
111pub const PF_Category_OTHER: &[u8; 6] = b"Other\0";
112pub const PF_MAX_CHAN8: u32 = 255;
113pub const PF_HALF_CHAN8: u32 = 128;
114pub const PF_MAX_CHAN16: u32 = 32768;
115pub const PF_HALF_CHAN16: u32 = 16384;
116pub const PF_HUE_UNDEFINED: u32 = 2147483648;
117pub const PF_CHANNEL_NAME_LEN: u32 = 63;
118pub const PF_CONTEXT_MAGIC: u32 = 99251998;
119pub const kSPNoError: u32 = 0;
120pub const kSPBasicSuite: &[u8; 15] = b"SP Basic Suite\0";
121pub const kSPBasicSuiteVersion: u32 = 4;
122pub const kPFAdvAppSuite: &[u8; 20] = b"PF AE Adv App Suite\0";
123pub const kPFAdvAppSuiteVersion1: u32 = 1;
124pub const kPFAdvAppSuiteVersion2: u32 = 2;
125pub const PF_MAX_TIME_LEN: u32 = 31;
126pub const kPFAdvTimeSuite: &[u8; 21] = b"PF AE Adv Time Suite\0";
127pub const kPFAdvTimeSuiteVersion4: u32 = 4;
128pub const kPFAdvTimeSuiteVersion3: u32 = 3;
129pub const kPFAdvTimeSuiteVersion2: u32 = 2;
130pub const kPFAdvTimeSuiteVersion1: u32 = 1;
131pub const kPFAdvItemSuite: &[u8; 21] = b"PF AE Adv Item Suite\0";
132pub const kPFAdvItemSuiteVersion1: u32 = 1;
133pub const kPFCacheOnLoadSuite: &[u8; 23] = b"PF Cache On Load Suite\0";
134pub const kPFCacheOnLoadSuiteVersion1: u32 = 1;
135pub const PF_CHANNEL_DEPTH_INFINITY: f64 = 10000000.0;
136pub const kPFChannelSuite1: &[u8; 20] = b"PF AE Channel Suite\0";
137pub const kPFChannelSuiteVersion1: u32 = 1;
138pub const PF_PI: f64 = 3.141592653589793;
139pub const PF_2PI: f64 = 6.283185307179586;
140pub const PF_HALF_PI: f64 = 1.5707963267948966;
141pub const PF_E: f64 = 2.718281828459045;
142pub const PF_SQRT2: f64 = 1.4142135623730951;
143pub const PF_RAD_PER_DEGREE: f64 = 0.017453292519943295;
144pub const PF_KernelFlag_2D: u32 = 0;
145pub const PF_KernelFlag_1D: u32 = 1;
146pub const PF_KernelFlag_UNNORMALIZED: u32 = 0;
147pub const PF_KernelFlag_NORMALIZED: u32 = 2;
148pub const PF_KernelFlag_CLAMP: u32 = 0;
149pub const PF_KernelFlag_NO_CLAMP: u32 = 4;
150pub const PF_KernelFlag_USE_LONG: u32 = 0;
151pub const PF_KernelFlag_USE_CHAR: u32 = 8;
152pub const PF_KernelFlag_USE_FIXED: u32 = 16;
153pub const PF_KernelFlag_USE_UNDEFINED: u32 = 24;
154pub const PF_KernelFlag_HORIZONTAL: u32 = 0;
155pub const PF_KernelFlag_VERTICAL: u32 = 32;
156pub const PF_KernelFlag_TRANSPARENT_BORDERS: u32 = 0;
157pub const PF_KernelFlag_REPLICATE_BORDERS: u32 = 64;
158pub const PF_KernelFlag_STRAIGHT_CONVOLVE: u32 = 0;
159pub const PF_KernelFlag_ALPHA_WEIGHT_CONVOLVE: u32 = 128;
160pub const PF_Iterations_ONCE_PER_PROCESSOR: i32 = -1;
161pub const PF_Iteratations_ONCE_PER_PROCESSOR: i32 = -1;
162pub const kPFHandleSuite: &[u8; 16] = b"PF Handle Suite\0";
163pub const kPFHandleSuiteVersion1: u32 = 2;
164pub const kPFANSISuite: &[u8; 14] = b"PF ANSI Suite\0";
165pub const kPFANSISuiteVersion1: u32 = 1;
166pub const kPFPixelDataSuite: &[u8; 20] = b"PF Pixel Data Suite\0";
167pub const kPFPixelDataSuiteVersion1: u32 = 1;
168pub const kPFPixelDataSuiteVersion2: u32 = 2;
169pub const kPFColorCallbacksSuite: &[u8; 15] = b"PF Color Suite\0";
170pub const kPFColorCallbacksSuiteVersion1: u32 = 1;
171pub const kPFColorCallbacks16Suite: &[u8; 17] = b"PF Color16 Suite\0";
172pub const kPFColorCallbacks16SuiteVersion1: u32 = 1;
173pub const kPFColorCallbacksFloatSuite: &[u8; 20] = b"PF ColorFloat Suite\0";
174pub const kPFColorCallbacksFloatSuiteVersion1: u32 = 1;
175pub const kPFBatchSamplingSuite: &[u8; 24] = b"PF Batch Sampling Suite\0";
176pub const kPFBatchSamplingSuiteVersion1: u32 = 1;
177pub const kPFSampling8Suite: &[u8; 19] = b"PF Sampling8 Suite\0";
178pub const kPFSampling8SuiteVersion1: u32 = 1;
179pub const kPFSampling16Suite: &[u8; 20] = b"PF Sampling16 Suite\0";
180pub const kPFSampling16SuiteVersion1: u32 = 1;
181pub const kPFSamplingFloatSuite: &[u8; 23] = b"PF SamplingFloat Suite\0";
182pub const kPFSamplingFloatSuiteVersion1: u32 = 1;
183pub const kPFWorldSuite: &[u8; 15] = b"PF World Suite\0";
184pub const kPFWorldSuiteVersion2: u32 = 2;
185pub const kPFPixelFormatSuite: &[u8; 22] = b"PF Pixel Format Suite\0";
186pub const kPFPixelFormatSuiteVersion2: u32 = 2;
187pub const kPFWorldSuiteVersion1: u32 = 1;
188pub const kPFIterate8Suite: &[u8; 18] = b"PF Iterate8 Suite\0";
189pub const kPFIterate8SuiteVersion1: u32 = 1;
190pub const kPFIterate8SuiteVersion2: u32 = 2;
191pub const kPFIterate16Suite: &[u8; 19] = b"PF iterate16 Suite\0";
192pub const kPFIterate16SuiteVersion1: u32 = 1;
193pub const kPFIterate16SuiteVersion2: u32 = 2;
194pub const kPFIterateFloatSuite: &[u8; 22] = b"PF iterateFloat Suite\0";
195pub const kPFIterateFloatSuiteVersion1: u32 = 1;
196pub const kPFIterateFloatSuiteVersion2: u32 = 2;
197pub const kPFWorldTransformSuite: &[u8; 25] = b"PF World Transform Suite\0";
198pub const kPFWorldTransformSuiteVersion1: u32 = 1;
199pub const kPFFillMatteSuite: &[u8; 20] = b"PF Fill Matte Suite\0";
200pub const kPFFillMatteSuiteVersion2: u32 = 2;
201pub const PF_CUDAVersion: u32 = 12080;
202pub const kPFGPUDeviceSuite: &[u8; 20] = b"PF GPU Device Suite\0";
203pub const kPFGPUDeviceSuiteVersion1: u32 = 1;
204pub const kPFPathQuerySuite: &[u8; 20] = b"PF Path Query Suite\0";
205pub const kPFPathQuerySuiteVersion1: u32 = 1;
206pub const kPFPathDataSuite: &[u8; 19] = b"PF Path Data Suite\0";
207pub const kPFPathDataSuiteVersion1: u32 = 1;
208pub const PF_MAX_PATH_NAME_LEN: u32 = 31;
209pub const kPFParamUtilsSuite: &[u8; 21] = b"PF Param Utils Suite\0";
210pub const kPFParamUtilsSuiteVersion3: u32 = 3;
211pub const PF_ParamIndex_NONE: i32 = -1;
212pub const PF_ParamIndex_CHECK_ALL: i32 = -2;
213pub const PF_ParamIndex_CHECK_ALL_EXCEPT_LAYER_PARAMS: i32 = -3;
214pub const PF_ParamIndex_CHECK_ALL_HONOR_EXCLUDE: i32 = -4;
215pub const PF_KeyIndex_NONE: i32 = -1;
216pub const kPFColorParamSuite: &[u8; 19] = b"PF ColorParamSuite\0";
217pub const kPFColorParamSuiteVersion1: u32 = 1;
218pub const kPFPointParamSuite: &[u8; 19] = b"PF PointParamSuite\0";
219pub const kPFPointParamSuiteVersion1: u32 = 1;
220pub const kPFAngleParamSuite: &[u8; 19] = b"PF AngleParamSuite\0";
221pub const kPFAngleParamSuiteVersion1: u32 = 1;
222pub const kPFAppSuite: &[u8; 16] = b"PF AE App Suite\0";
223pub const kPFAppSuiteVersion6: u32 = 1;
224pub const PF_APP_MAX_PERS_LEN: u32 = 63;
225pub const PF_FONT_NAME_LEN: u32 = 255;
226pub const PF_APP_LANG_TAG_SIZE: u32 = 6;
227pub const kPFEffectUISuite: &[u8; 19] = b"PF Effect UI Suite\0";
228pub const kPFEffectUISuiteVersion1: u32 = 1;
229pub const kPFEffectCustomUISuite: &[u8; 26] = b"PF Effect Custom UI Suite\0";
230pub const kPFEffectCustomUISuiteVersion2: u32 = 2;
231pub const kPFEffectCustomUIOverlayThemeSuite: &[u8; 40] =
232    b"PF Effect Custom UI Overlay Theme Suite\0";
233pub const kPFEffectCustomUIOverlayThemeSuiteVersion1: u32 = 1;
234pub const kPFParamUtilsSuiteVersion1: u32 = 2;
235pub const kPFAppSuiteVersion4: u32 = 6;
236pub const kPFAppSuiteVersion5: u32 = 7;
237pub const kPFEffectCustomUISuiteVersion1: u32 = 1;
238pub const kPFHelperSuite: &[u8; 23] = b"AE Plugin Helper Suite\0";
239pub const kPFHelperSuiteVersion1: u32 = 1;
240pub const kPFHelperSuiteVersion: u32 = 1;
241pub const kPFHelperSuite2: &[u8; 24] = b"AE Plugin Helper Suite2\0";
242pub const kPFHelperSuite2Version1: u32 = 1;
243pub const kPFHelperSuite2Version2: u32 = 2;
244pub const kPFHelperSuite2Version: u32 = 2;
245pub const PF_PLUG_IN_VERSION: u32 = 13;
246pub const PF_PLUG_IN_SUBVERS: u32 = 29;
247pub const FIEL_Label_VERSION: u32 = 1;
248pub const FIEL_ResID: u32 = 128;
249pub const PR_ARTISAN_EXTENSION: &[u8; 5] = b".aex\0";
250pub const PR_ARTISAN_API_VERSION_MAJOR: u32 = 1;
251pub const PR_ARTISAN_API_VERSION_MINOR: u32 = 0;
252pub const PR_PUBLIC_MATCH_NAME_LEN: u32 = 31;
253pub const PR_PUBLIC_ARTISAN_NAME_LEN: u32 = 31;
254pub const PF_MASKS_MAJOR_VERSION: u32 = 1;
255pub const PF_MASKS_MINOR_VERSION: u32 = 0;
256pub const kPF_MaskSuite: &[u8; 16] = b"AEGP Mask Suite\0";
257pub const kPF_MaskSuiteVersion1: u32 = 1;
258pub const AEIO_MAX_MODULE_NAME_LEN: u32 = 31;
259pub const AEIO_MAX_TYPES: u32 = 16;
260pub const AEIO_MAX_SEQ_NAME_LEN: u32 = 31;
261pub const AEIO_MAX_MESSAGE_LEN: u32 = 127;
262pub const AEIO_MAX_AUX_EXT: u32 = 16;
263pub const AEIO_ANY_CREATOR: i32 = -1;
264pub const AEIO_AlphaLabel_VERSION: u32 = 257;
265pub const AEIO_FileType_DIR: i32 = -2;
266pub const AEIO_FileType_NONE: i32 = -1;
267pub const AEIO_FileType_ANY: u32 = 0;
268pub const AEIO_FileType_GENERIC: u32 = 1;
269pub const AEGP_INITFUNC_MAJOR_VERSION: u32 = 1;
270pub const AEGP_INITFUNC_MINOR_VERSION: u32 = 9;
271pub const AEGP_SubLayer_ALL: i32 = -1;
272pub const AEGP_MAX_PATH_SIZE: u32 = 260;
273pub const AEGP_MAX_ABOUT_STRING_SIZE: u32 = 256;
274pub const AEGP_MAX_RQITEM_COMMENT_SIZE: u32 = 256;
275pub const AEGP_MAX_TYPE_NAME_SIZE: u32 = 32;
276pub const AEGP_MAX_ITEM_NAME_SIZE: u32 = 32;
277pub const AEGP_MAX_LAYER_NAME_SIZE: u32 = 32;
278pub const AEGP_MAX_MASK_NAME_SIZE: u32 = 32;
279pub const AEGP_MAX_EFFECT_NAME_SIZE: u32 = 48;
280pub const AEGP_MAX_EFFECT_MATCH_NAME_SIZE: u32 = 48;
281pub const AEGP_MAX_EFFECT_CATEGORY_NAME_SIZE: u32 = 32;
282pub const AEGP_MAX_STREAM_NAME_SIZE: u32 = 32;
283pub const AEGP_MAX_STREAM_UNITS_SIZE: u32 = 32;
284pub const AEGP_MAX_PROJ_NAME_SIZE: u32 = 48;
285pub const AEGP_MAX_PLUGIN_NAME_SIZE: u32 = 32;
286pub const AEGP_MAX_MARKER_NAME_SIZE: u32 = 64;
287pub const AEGP_MAX_MARKER_URL_SIZE: u32 = 1024;
288pub const AEGP_MAX_MARKER_TARGET_SIZE: u32 = 128;
289pub const AEGP_MAX_MARKER_CHAPTER_SIZE: u32 = 128;
290pub const AEGP_LayerIDVal_NONE: u32 = 0;
291pub const AEGP_MaskIDVal_NONE: u32 = 0;
292pub const AEGP_FramesPerFoot_35MM: u32 = 16;
293pub const AEGP_FramesPerFoot_16MM: u32 = 40;
294pub const kAEGPProjSuite: &[u8; 16] = b"AEGP Proj Suite\0";
295pub const kAEGPProjSuiteVersion6: u32 = 9;
296pub const kAEGPItemSuite: &[u8; 16] = b"AEGP Item Suite\0";
297pub const kAEGPItemSuiteVersion9: u32 = 14;
298pub const kAEGPItemViewSuite: &[u8; 21] = b"AEGP Item View Suite\0";
299pub const kAEGPItemViewSuiteVersion1: u32 = 1;
300pub const kAEGPSoundDataSuite: &[u8; 22] = b"AEGP Sound Data Suite\0";
301pub const kAEGPSoundDataVersion1: u32 = 1;
302pub const kAEGPCompSuite: &[u8; 16] = b"AEGP Comp Suite\0";
303pub const kAEGPCompSuiteVersion12: u32 = 26;
304pub const kAEGPMemorySuite: &[u8; 18] = b"AEGP Memory Suite\0";
305pub const kAEGPMemorySuiteVersion1: u32 = 1;
306pub const AEGP_REORDER_LAYER_TO_END: i32 = -1;
307pub const kAEGPLayerSuite: &[u8; 17] = b"AEGP Layer Suite\0";
308pub const kAEGPLayerSuiteVersion9: u32 = 15;
309pub const kAEGPStreamSuite: &[u8; 18] = b"AEGP Stream Suite\0";
310pub const kAEGPStreamSuiteVersion6: u32 = 11;
311pub const AEGP_MAX_STREAM_MATCH_NAME_SIZE: u32 = 40;
312pub const AEGP_StreamGroupName_MASK_PARADE: &[u8; 17] = b"ADBE Mask Parade\0";
313pub const AEGP_StreamGroupName_MASK_ATOM: &[u8; 15] = b"ADBE Mask Atom\0";
314pub const AEGP_StreamName_MASK_FEATHER: &[u8; 18] = b"ADBE Mask Feather\0";
315pub const AEGP_StreamName_MASK_OPACITY: &[u8; 18] = b"ADBE Mask Opacity\0";
316pub const AEGP_StreamName_MASK_OFFSET: &[u8; 17] = b"ADBE Mask Offset\0";
317pub const AEGP_StreamGroupName_EFFECT_PARADE: &[u8; 19] = b"ADBE Effect Parade\0";
318pub const AEGP_StreamGroupName_LAYER: &[u8; 20] = b"ADBE Abstract Layer\0";
319pub const AEGP_StreamGroupName_AV_LAYER: &[u8; 14] = b"ADBE AV Layer\0";
320pub const AEGP_StreamGroupName_TEXT_LAYER: &[u8; 16] = b"ADBE Text Layer\0";
321pub const AEGP_StreamGroupName_CAMERA_LAYER: &[u8; 18] = b"ADBE Camera Layer\0";
322pub const AEGP_StreamGroupName_LIGHT_LAYER: &[u8; 17] = b"ADBE Light Layer\0";
323pub const AEGP_StreamGroupName_AUDIO: &[u8; 17] = b"ADBE Audio Group\0";
324pub const AEGP_StreamGroupName_MATERIAL_OPTIONS: &[u8; 28] = b"ADBE Material Options Group\0";
325pub const AEGP_StreamGroupName_TRANSFORM: &[u8; 21] = b"ADBE Transform Group\0";
326pub const AEGP_StreamGroupName_LIGHT_OPTIONS: &[u8; 25] = b"ADBE Light Options Group\0";
327pub const AEGP_StreamGroupName_CAMERA_OPTIONS: &[u8; 26] = b"ADBE Camera Options Group\0";
328pub const kAEGPDynamicStreamSuite: &[u8; 26] = b"AEGP Dynamic Stream Suite\0";
329pub const kAEGPDynamicStreamSuiteVersion4: u32 = 5;
330pub const kAEGPKeyframeSuite: &[u8; 20] = b"AEGP Keyframe Suite\0";
331pub const kAEGPKeyframeSuiteVersion5: u32 = 5;
332pub const kAEGPTextDocumentSuite: &[u8; 25] = b"AEGP Text Document Suite\0";
333pub const kAEGPTextDocumentSuiteVersion1: u32 = 1;
334pub const kAEGPMarkerSuite: &[u8; 18] = b"AEGP Marker Suite\0";
335pub const kAEGPMarkerSuiteVersion3: u32 = 3;
336pub const kAEGPTextLayerSuite: &[u8; 22] = b"AEGP Text Layer Suite\0";
337pub const kAEGPTextLayerSuiteVersion1: u32 = 1;
338pub const AEGP_InstalledEffectKey_NONE: u32 = 0;
339pub const kAEGPEffectSuite: &[u8; 18] = b"AEGP Effect Suite\0";
340pub const kAEGPEffectSuiteVersion5: u32 = 5;
341pub const kAEGPMaskSuite: &[u8; 22] = b"AEGP Layer Mask Suite\0";
342pub const kAEGPMaskSuiteVersion6: u32 = 7;
343pub const AEGP_VertexIndex_END: u32 = 10922;
344pub const kAEGPMaskOutlineSuite: &[u8; 24] = b"AEGP Mask Outline Suite\0";
345pub const kAEGPMaskOutlineSuiteVersion3: u32 = 5;
346pub const AEGP_FOOTAGE_LAYER_NAME_LEN: u32 = 63;
347pub const AEGP_LayerIndex_UNKNOWN: i32 = -2;
348pub const AEGP_LayerIndex_MERGED: i32 = -1;
349pub const AEGP_LayerID_UNKNOWN: i32 = -1;
350pub const AEGP_ANY_FRAME: i32 = -1;
351pub const AEGP_FOOTAGE_MAIN_FILE_INDEX: u32 = 0;
352pub const kAEGPFootageSuite: &[u8; 19] = b"AEGP Footage Suite\0";
353pub const kAEGPFootageSuiteVersion5: u32 = 11;
354pub const AEGP_Command_ALL: u32 = 0;
355pub const kAEGPRegisterSuite: &[u8; 20] = b"AEGP Register Suite\0";
356pub const kAEGPRegisterSuiteVersion5: u32 = 6;
357pub const AEGP_MENU_INSERT_SORTED: i32 = -2;
358pub const AEGP_MENU_INSERT_AT_BOTTOM: i32 = -1;
359pub const AEGP_MENU_INSERT_AT_TOP: u32 = 0;
360pub const kAEGPCommandSuite: &[u8; 19] = b"AEGP Command Suite\0";
361pub const kAEGPCommandSuiteVersion1: u32 = 1;
362pub const kAEGPUtilitySuite: &[u8; 19] = b"AEGP Utility Suite\0";
363pub const kAEGPUtilitySuiteVersion6: u32 = 13;
364pub const kAEGPMathSuite: &[u8; 16] = b"AEGP Math Suite\0";
365pub const kAEGPMathSuiteVersion1: u32 = 1;
366pub const kAEGPColorSettingsSuite: &[u8; 24] = b"PF Color Settings Suite\0";
367pub const kAEGPColorSettingsSuiteVersion6: u32 = 7;
368pub const kAEGPRenderQueueSuite: &[u8; 24] = b"AEGP Render Queue Suite\0";
369pub const kAEGPRenderQueueSuiteVersion1: u32 = 1;
370pub const kAEGPRQItemSuite: &[u8; 29] = b"AEGP Render Queue Item Suite\0";
371pub const kAEGPRQItemSuiteVersion4: u32 = 5;
372pub const kAEGPOutputModuleSuite: &[u8; 25] = b"AEGP Output Module Suite\0";
373pub const kAEGPOutputModuleSuiteVersion4: u32 = 4;
374pub const kAEGPCanvasSuite: &[u8; 18] = b"AEGP Canvas Suite\0";
375pub const kAEGPCanvasSuiteVersion8: u32 = 14;
376pub const kAEGPArtisanUtilSuite: &[u8; 24] = b"AEGP Artisan Util Suite\0";
377pub const kAEGPArtisanUtilSuiteVersion1: u32 = 1;
378pub const kAEGPCameraSuite: &[u8; 18] = b"AEGP Camera Suite\0";
379pub const kAEGPCameraSuiteVersion2: u32 = 2;
380pub const kAEGPLightSuiteVersion2: u32 = 2;
381pub const kAEGPLightSuite: &[u8; 17] = b"AEGP Light Suite\0";
382pub const kAEGPLightSuiteVersion3: u32 = 3;
383pub const kAEGPQueryXformSuite: &[u8; 22] = b"AEGP QueryXform Suite\0";
384pub const kAEGPQueryXformSuiteVersion2: u32 = 4;
385pub const kAEGPCompositeSuite: &[u8; 21] = b"AEGP Composite Suite\0";
386pub const kAEGPCompositeSuiteVersion2: u32 = 4;
387pub const kAEGPIterateSuite: &[u8; 19] = b"AEGP Iterate Suite\0";
388pub const kAEGPIterateSuiteVersion2: u32 = 2;
389pub const kAEGPPFInterfaceSuite: &[u8; 24] = b"AEGP PF Interface Suite\0";
390pub const kAEGPPFInterfaceSuiteVersion1: u32 = 1;
391pub const kAEGPIOInSuite: &[u8; 17] = b"AEGP IO In Suite\0";
392pub const kAEGPIOInSuiteVersion7: u32 = 8;
393pub const kAEGPIOOutSuite: &[u8; 18] = b"AEGP IO Out Suite\0";
394pub const kAEGPIOOutSuiteVersion6: u32 = 9;
395pub const kAEGPFIMSuite: &[u8; 31] = b"AEGP File Import Manager Suite\0";
396pub const kAEGPFIMSuiteVersion4: u32 = 4;
397pub const kAEGPPersistentDataSuite: &[u8; 27] = b"AEGP Persistent Data Suite\0";
398pub const kAEGPPersistentDataSuiteVersion4: u32 = 4;
399pub const kAEGPCollectionSuite: &[u8; 22] = b"AEGP Collection Suite\0";
400pub const kAEGPCollectionSuiteVersion2: u32 = 2;
401pub const kAEGPWorldSuite: &[u8; 17] = b"AEGP World Suite\0";
402pub const kAEGPWorldSuiteVersion3: u32 = 3;
403pub const kAEGPRenderOptionsSuite: &[u8; 26] = b"AEGP Render Options Suite\0";
404pub const kAEGPRenderOptionsSuiteVersion4: u32 = 4;
405pub const kAEGPLayerRenderOptionsSuite: &[u8; 32] = b"AEGP Layer Render Options Suite\0";
406pub const kAEGPLayerRenderOptionsSuiteVersion2: u32 = 2;
407pub const kAEGPRenderSuite: &[u8; 18] = b"AEGP Render Suite\0";
408pub const kAEGPRenderSuiteVersion5: u32 = 8;
409pub const kAEGPRenderAsyncManagerSuite: &[u8; 31] = b"AEGP Render Asyc Manager Suite\0";
410pub const kAEGPRenderAsyncManagerSuiteVersion1: u32 = 1;
411pub const kAEGPTrackerSuite: &[u8; 19] = b"AEGP Tracker Suite\0";
412pub const kAEGPTrackerSuiteVersion1: u32 = 1;
413pub const kAEGPTrackerUtilitySuite: &[u8; 27] = b"AEGP Tracker Utility Suite\0";
414pub const kAEGPTrackerUtilitySuiteVersion1: u32 = 1;
415pub const kAEGPRenderQueueMonitorSuite: &[u8; 31] = b"AEGP RenderQueue Monitor Suite\0";
416pub const kAEGPRenderQueueMonitorSuiteVersion1: u32 = 1;
417pub const kPFEffectSequenceDataSuite: &[u8; 30] = b"PF Effect Sequence Data Suite\0";
418pub const kPFEffectSequenceDataSuiteVersion1: u32 = 1;
419pub const kAEGPCanvasSuiteVersion1: u32 = 4;
420pub const kAEGPRQItemSuiteVersion3: u32 = 4;
421pub const kAEGPRQItemSuiteVersion2: u32 = 3;
422pub const kAEGPRQItemSuiteVersion1: u32 = 1;
423pub const kAEGPCanvasSuiteVersion2: u32 = 6;
424pub const kAEGPCanvasSuiteVersion4: u32 = 9;
425pub const kAEGPCanvasSuiteVersion5: u32 = 10;
426pub const kAEGPCanvasSuiteVersion6: u32 = 11;
427pub const kAEGPCanvasSuiteVersion7: u32 = 13;
428pub const kAEGPMaskOutlineSuiteVersion2: u32 = 3;
429pub const kAEGPMaskOutlineSuiteVersion1: u32 = 2;
430pub const kAEGPCompSuiteVersion11: u32 = 25;
431pub const kAEGPCompSuiteVersion10: u32 = 21;
432pub const kAEGPCompSuiteVersion9: u32 = 19;
433pub const kAEGPCompSuiteVersion8: u32 = 18;
434pub const kAEGPCompSuiteVersion7: u32 = 15;
435pub const kAEGPCompSuiteVersion6: u32 = 14;
436pub const kAEGPCompSuiteVersion5: u32 = 11;
437pub const kAEGPCompSuiteVersion4: u32 = 9;
438pub const kAEGPCompSuiteVersion3: u32 = 7;
439pub const kAEGPCompSuiteVersion2: u32 = 6;
440pub const kAEGPCompSuiteVersion1: u32 = 4;
441pub const kAEGPLayerSuiteVersion8: u32 = 14;
442pub const kAEGPLayerSuiteVersion7: u32 = 13;
443pub const kAEGPLayerSuiteVersion6: u32 = 12;
444pub const kAEGPLayerSuiteVersion5: u32 = 11;
445pub const kAEGPLayerSuiteVersion4: u32 = 10;
446pub const kAEGPLayerSuiteVersion3: u32 = 8;
447pub const kAEGPStreamSuiteVersion5: u32 = 10;
448pub const kAEGPStreamSuiteVersion4: u32 = 9;
449pub const kAEGPStreamSuiteVersion3: u32 = 8;
450pub const kAEGPStreamSuiteVersion2: u32 = 7;
451pub const kAEGPStreamSuiteVersion1: u32 = 4;
452pub const kAEGPLayerSuiteVersion1: u32 = 5;
453pub const kAEGPLayerSuiteVersion2: u32 = 7;
454pub const kAEGPEffectSuiteVersion1: u32 = 1;
455pub const kAEGPEffectSuiteVersion2: u32 = 2;
456pub const kAEGPEffectSuiteVersion3: u32 = 3;
457pub const kAEGPEffectSuiteVersion4: u32 = 4;
458pub const kAEGPLightSuiteVersion1: u32 = 1;
459pub const kAEGPMaskSuiteVersion5: u32 = 6;
460pub const kAEGPMaskSuiteVersion4: u32 = 5;
461pub const kAEGPMaskSuiteVersion3: u32 = 4;
462pub const kAEGPMaskSuiteVersion1: u32 = 2;
463pub const kAEGPMaskSuiteVersion2: u32 = 3;
464pub const kAEGPCameraSuiteVersion1: u32 = 1;
465pub const kAEGPItemSuiteVersion8: u32 = 13;
466pub const kAEGPItemSuiteVersion7: u32 = 11;
467pub const kAEGPItemSuiteVersion6: u32 = 10;
468pub const kAEGPItemSuiteVersion5: u32 = 7;
469pub const kAEGPItemSuiteVersion4: u32 = 6;
470pub const kAEGPItemSuiteVersion3: u32 = 5;
471pub const kAEGPKeyframeSuiteVersion4: u32 = 4;
472pub const kAEGPKeyframeSuiteVersion3: u32 = 3;
473pub const kAEGPKeyframeSuiteVersion2: u32 = 2;
474pub const kAEGPKeyframeSuiteVersion1: u32 = 1;
475pub const kAEGPItemSuiteVersion2: u32 = 4;
476pub const kAEGPItemSuiteVersion1: u32 = 3;
477pub const kAEGPUtilitySuiteVersion5: u32 = 11;
478pub const kAEGPUtilitySuiteVersion4: u32 = 10;
479pub const kAEGPUtilitySuiteVersion3: u32 = 7;
480pub const kAEGPUtilitySuiteVersion2: u32 = 5;
481pub const kAEGPUtilitySuiteVersion1: u32 = 3;
482pub const kAEGPQueryXformSuiteVersion1: u32 = 1;
483pub const kAEGPRenderSuiteVersion1: u32 = 1;
484pub const kAEGPRenderSuiteVersion2: u32 = 2;
485pub const kAEGPRenderSuiteVersion3: u32 = 3;
486pub const kAEGPRenderSuiteVersion4: u32 = 5;
487pub const kAEGPWorldSuiteVersion2: u32 = 2;
488pub const kAEGPWorldSuiteVersion1: u32 = 1;
489pub const kAEGPCollectionSuiteVersion1: u32 = 1;
490pub const kAEGPDynamicStreamSuiteVersion1: u32 = 1;
491pub const kAEGPDynamicStreamSuiteVersion2: u32 = 2;
492pub const kAEGPDynamicStreamSuiteVersion3: u32 = 3;
493pub const kAEGPRenderOptionsSuiteVersion3: u32 = 3;
494pub const kAEGPRenderOptionsSuiteVersion2: u32 = 2;
495pub const kAEGPRenderOptionsSuiteVersion1: u32 = 1;
496pub const kAEGPLayerRenderOptionsSuiteVersion1: u32 = 1;
497pub const kAEGPColorSettingsSuiteVersion1: u32 = 1;
498pub const kAEGPColorSettingsSuiteVersion2: u32 = 3;
499pub const kAEGPColorSettingsSuiteVersion3: u32 = 4;
500pub const kAEGPColorSettingsSuiteVersion4: u32 = 5;
501pub const kAEGPColorSettingsSuiteVersion5: u32 = 6;
502pub const kAEGPMarkerSuiteVersion1: u32 = 1;
503pub const kAEGPMarkerSuiteVersion2: u32 = 2;
504pub const kAEGPProjSuiteVersion5: u32 = 8;
505pub const kAEGPPersistentDataSuiteVersion3: u32 = 3;
506pub const kAEGPIterateSuiteVersion1: u32 = 1;
507pub const kAEGPIOInSuiteVersion6: u32 = 7;
508pub const kAEGPIOInSuiteVersion5: u32 = 6;
509pub const kAEGPIOInSuiteVersion4: u32 = 5;
510pub const kAEGPIOOutSuiteVersion5: u32 = 8;
511pub const kAEGPIOOutSuiteVersion4: u32 = 7;
512pub const kAEGPFIMSuiteVersion3: u32 = 3;
513pub const kAEGPComputeCacheSuite: &[u8; 19] = b"AEGP Compute Cache\0";
514pub const kAEGPComputeCacheSuiteVersion1: u32 = 1;
515pub const kAEGPHashSuite: &[u8; 16] = b"AEGP Hash Suite\0";
516pub const kAEGPHashSuiteVersion1: u32 = 1;
517pub const kPFPixelFormatSuiteVersion1: u32 = 1;
518pub const kPFPixelFormatSuiteVersion: u32 = 1;
519pub const kPFBackgroundFrameSuite: &[u8; 26] = b"PF Background Frame Suite\0";
520pub const kPFBackgroundFrameSuiteVersion1: u32 = 1;
521pub const kPFBackgroundFrameSuiteVersion: u32 = 1;
522pub const kPFUtilitySuite: &[u8; 17] = b"PF Utility Suite\0";
523pub const kPFUtilitySuiteVersion2: u32 = 2;
524pub const kPFUtilitySuiteVersion3: u32 = 3;
525pub const kPFUtilitySuiteVersion4: u32 = 4;
526pub const kPFUtilitySuiteVersion5: u32 = 5;
527pub const kPFUtilitySuiteVersion6: u32 = 6;
528pub const kPFUtilitySuiteVersion7: u32 = 7;
529pub const kPFUtilitySuiteVersion8: u32 = 8;
530pub const kPFUtilitySuiteVersion9: u32 = 9;
531pub const kPFUtilitySuiteVersion: u32 = 9;
532pub const kPFSourceSettingsSuite: &[u8; 25] = b"PF Source Settings Suite\0";
533pub const kPFSourceSettingsSuiteVersion: u32 = 1;
534pub const kPFTransitionSuite: &[u8; 20] = b"PF Transition Suite\0";
535pub const kPFTransitionSuiteVersion1: u32 = 1;
536pub const kPFTransitionSuiteVersion2: u32 = 2;
537pub const kPFTransitionSuiteVersion: u32 = 2;
538pub const kDRAWBOT_DrawSuite: &[u8; 19] = b"DRAWBOT Draw Suite\0";
539pub const kDRAWBOT_DrawSuite_Version1: u32 = 1;
540pub const kDRAWBOT_DrawSuite_VersionCurrent: u32 = 1;
541pub const kDRAWBOT_SupplierSuite: &[u8; 23] = b"DRAWBOT Supplier Suite\0";
542pub const kDRAWBOT_SupplierSuite_Version1: u32 = 1;
543pub const kDRAWBOT_SupplierSuite_VersionCurrent: u32 = 1;
544pub const kDRAWBOT_SurfaceSuite: &[u8; 22] = b"DRAWBOT Surface Suite\0";
545pub const kDRAWBOT_SurfaceSuite_Version1: u32 = 1;
546pub const kDRAWBOT_SurfaceSuite_Version2: u32 = 2;
547pub const kDRAWBOT_SurfaceSuite_VersionCurrent: u32 = 2;
548pub const kDRAWBOT_PathSuite: &[u8; 19] = b"DRAWBOT Path Suite\0";
549pub const kDRAWBOT_PathSuite_Version1: u32 = 1;
550pub const kDRAWBOT_PathSuite_VersionCurrent: u32 = 1;
551pub const kDRAWBOT_PenSuite: &[u8; 18] = b"DRAWBOT Pen Suite\0";
552pub const kDRAWBOT_PenSuite_Version1: u32 = 1;
553pub const kDRAWBOT_PenSuite_VersionCurrent: u32 = 1;
554pub const kDRAWBOT_ImageSuite: &[u8; 20] = b"DRAWBOT Image Suite\0";
555pub const kDRAWBOT_ImageSuite_Version1: u32 = 1;
556pub const kDRAWBOT_ImageSuite_VersionCurrent: u32 = 1;
557pub const kPrSDKStringSuite: &[u8; 22] = b"MediaCore StringSuite\0";
558pub const kPrSDKStringSuiteVersion: u32 = 1;
559pub type A_long = i32;
560pub type A_u_long = u32;
561pub type A_char = ::std::os::raw::c_char;
562pub type A_FpLong = f64;
563pub type A_FpShort = f32;
564pub type A_Err = A_long;
565pub type A_Handle = *mut ::std::os::raw::c_void;
566pub type A_Fixed = A_long;
567pub type A_UFixed = A_u_long;
568pub type A_short = i16;
569pub type A_u_short = u16;
570pub type A_u_char = u8;
571pub type A_Boolean = u8;
572pub type A_intptr_t = isize;
573pub type A_u_longlong = u64;
574#[repr(C)]
575#[derive(Debug, Copy, Clone)]
576pub struct A_Time {
577    pub value: A_long,
578    pub scale: A_u_long,
579}
580#[repr(C)]
581#[derive(Debug, Copy, Clone)]
582pub struct A_Ratio {
583    pub num: A_long,
584    pub den: A_u_long,
585}
586#[repr(C)]
587#[derive(Debug, Copy, Clone)]
588pub struct A_FloatPoint {
589    pub x: A_FpLong,
590    pub y: A_FpLong,
591}
592#[repr(C)]
593#[derive(Debug, Copy, Clone)]
594pub struct A_FloatPoint3 {
595    pub x: A_FpLong,
596    pub y: A_FpLong,
597    pub z: A_FpLong,
598}
599#[repr(C)]
600#[derive(Debug, Copy, Clone)]
601pub struct A_FloatRect {
602    pub left: A_FpLong,
603    pub top: A_FpLong,
604    pub right: A_FpLong,
605    pub bottom: A_FpLong,
606}
607#[repr(C)]
608#[derive(Debug, Copy, Clone)]
609pub struct A_Matrix3 {
610    pub mat: [[A_FpLong; 3usize]; 3usize],
611}
612#[repr(C)]
613#[derive(Debug, Copy, Clone)]
614pub struct A_Matrix4 {
615    pub mat: [[A_FpLong; 4usize]; 4usize],
616}
617#[repr(C)]
618#[derive(Debug, Copy, Clone)]
619pub struct A_LegacyRect {
620    pub top: A_short,
621    pub left: A_short,
622    pub bottom: A_short,
623    pub right: A_short,
624}
625#[repr(C)]
626#[derive(Debug, Copy, Clone)]
627pub struct A_LRect {
628    pub left: A_long,
629    pub top: A_long,
630    pub right: A_long,
631    pub bottom: A_long,
632}
633pub type A_Rect = A_LRect;
634#[repr(C)]
635#[derive(Debug, Copy, Clone)]
636pub struct A_LPoint {
637    pub x: A_long,
638    pub y: A_long,
639}
640#[repr(C)]
641#[derive(Debug, Copy, Clone)]
642pub struct A_FloatPolar {
643    pub radius: A_FpLong,
644    pub angle: A_FpLong,
645}
646pub type A_HandleSize = A_u_longlong;
647#[repr(C)]
648#[derive(Debug, Copy, Clone)]
649pub struct A_Color {
650    pub alpha: A_FpLong,
651    pub red: A_FpLong,
652    pub green: A_FpLong,
653    pub blue: A_FpLong,
654}
655pub const A_Err_NONE: _bindgen_ty_1 = 0;
656pub const A_Err_GENERIC: _bindgen_ty_1 = 1;
657pub const A_Err_STRUCT: _bindgen_ty_1 = 2;
658pub const A_Err_PARAMETER: _bindgen_ty_1 = 3;
659pub const A_Err_ALLOC: _bindgen_ty_1 = 4;
660pub const A_Err_WRONG_THREAD: _bindgen_ty_1 = 5;
661pub const A_Err_CONST_PROJECT_MODIFICATION: _bindgen_ty_1 = 6;
662pub const A_Err_RESERVED_7: _bindgen_ty_1 = 7;
663pub const A_Err_RESERVED_8: _bindgen_ty_1 = 8;
664pub const A_Err_RESERVED_9: _bindgen_ty_1 = 9;
665pub const A_Err_RESERVED_10: _bindgen_ty_1 = 10;
666pub const A_Err_RESERVED_11: _bindgen_ty_1 = 11;
667pub const A_Err_RESERVED_12: _bindgen_ty_1 = 12;
668pub const A_Err_MISSING_SUITE: _bindgen_ty_1 = 13;
669pub const A_Err_RESERVED_14: _bindgen_ty_1 = 14;
670pub const A_Err_RESERVED_15: _bindgen_ty_1 = 15;
671pub const A_Err_RESERVED_16: _bindgen_ty_1 = 16;
672pub const A_Err_RESERVED_17: _bindgen_ty_1 = 17;
673pub const A_Err_RESERVED_18: _bindgen_ty_1 = 18;
674pub const A_Err_RESERVED_19: _bindgen_ty_1 = 19;
675pub const A_Err_RESERVED_20: _bindgen_ty_1 = 20;
676pub const A_Err_RESERVED_21: _bindgen_ty_1 = 21;
677pub const A_Err_NOT_IN_CACHE_OR_COMPUTE_PENDING: _bindgen_ty_1 = 22;
678pub const A_Err_PROJECT_LOAD_FATAL: _bindgen_ty_1 = 23;
679pub const A_Err_EFFECT_APPLY_FATAL: _bindgen_ty_1 = 24;
680pub const A_Err_LAST: _bindgen_ty_1 = 25;
681pub type _bindgen_ty_1 = ::std::os::raw::c_uint;
682#[repr(C)]
683#[derive(Debug, Copy, Clone)]
684pub struct A_Version {
685    pub majorS: A_short,
686    pub minorS: A_short,
687}
688#[repr(C)]
689#[derive(Debug, Copy, Clone)]
690pub struct _Up_OpaqueMem {
691    _unused: [u8; 0],
692}
693pub type AEGP_MemHandle = *mut *mut _Up_OpaqueMem;
694pub type A_UTF16Char = A_u_short;
695pub type A_LegacyEnumType = A_char;
696pub type UInt32 = ::std::os::raw::c_uint;
697pub type SInt32 = ::std::os::raw::c_int;
698pub type Fixed = SInt32;
699pub type Ptr = *mut ::std::os::raw::c_char;
700pub type Handle = *mut Ptr;
701pub type Boolean = ::std::os::raw::c_uchar;
702pub type ProcPtr = ::std::option::Option<unsafe extern "C" fn() -> ::std::os::raw::c_long>;
703pub type ProcHandle = *mut ProcPtr;
704#[repr(C, packed(2))]
705#[derive(Debug, Copy, Clone)]
706pub struct ProcessSerialNumber {
707    pub highLongOfPSN: UInt32,
708    pub lowLongOfPSN: UInt32,
709}
710pub type ProcessSerialNumberPtr = *mut ProcessSerialNumber;
711pub type PFVersionInfo = A_u_long;
712pub const PF_Stage_DEVELOP: _bindgen_ty_8 = 0;
713pub const PF_Stage_ALPHA: _bindgen_ty_8 = 1;
714pub const PF_Stage_BETA: _bindgen_ty_8 = 2;
715pub const PF_Stage_RELEASE: _bindgen_ty_8 = 3;
716pub type _bindgen_ty_8 = ::std::os::raw::c_uint;
717pub type PF_Stage = A_long;
718pub const PF_Quality_DRAWING_AUDIO: _bindgen_ty_9 = -1;
719pub const PF_Quality_LO: _bindgen_ty_9 = 0;
720pub const PF_Quality_HI: _bindgen_ty_9 = 1;
721pub type _bindgen_ty_9 = ::std::os::raw::c_int;
722pub type PF_Quality = A_long;
723pub const PF_MF_Alpha_PREMUL: _bindgen_ty_10 = 0;
724pub const PF_MF_Alpha_STRAIGHT: _bindgen_ty_10 = 1;
725pub type _bindgen_ty_10 = ::std::os::raw::c_uint;
726pub type PF_ModeFlags = A_long;
727pub const PF_Field_FRAME: _bindgen_ty_11 = 0;
728pub const PF_Field_UPPER: _bindgen_ty_11 = 1;
729pub const PF_Field_LOWER: _bindgen_ty_11 = 2;
730pub type _bindgen_ty_11 = ::std::os::raw::c_uint;
731pub type PF_Field = A_long;
732pub const PF_Param_RESERVED: _bindgen_ty_12 = -1;
733pub const PF_Param_LAYER: _bindgen_ty_12 = 0;
734pub const PF_Param_SLIDER: _bindgen_ty_12 = 1;
735pub const PF_Param_FIX_SLIDER: _bindgen_ty_12 = 2;
736pub const PF_Param_ANGLE: _bindgen_ty_12 = 3;
737pub const PF_Param_CHECKBOX: _bindgen_ty_12 = 4;
738pub const PF_Param_COLOR: _bindgen_ty_12 = 5;
739pub const PF_Param_POINT: _bindgen_ty_12 = 6;
740pub const PF_Param_POPUP: _bindgen_ty_12 = 7;
741pub const PF_Param_CUSTOM: _bindgen_ty_12 = 8;
742pub const PF_Param_NO_DATA: _bindgen_ty_12 = 9;
743pub const PF_Param_FLOAT_SLIDER: _bindgen_ty_12 = 10;
744pub const PF_Param_ARBITRARY_DATA: _bindgen_ty_12 = 11;
745pub const PF_Param_PATH: _bindgen_ty_12 = 12;
746pub const PF_Param_GROUP_START: _bindgen_ty_12 = 13;
747pub const PF_Param_GROUP_END: _bindgen_ty_12 = 14;
748pub const PF_Param_BUTTON: _bindgen_ty_12 = 15;
749pub const PF_Param_RESERVED2: _bindgen_ty_12 = 16;
750pub const PF_Param_RESERVED3: _bindgen_ty_12 = 17;
751pub const PF_Param_POINT_3D: _bindgen_ty_12 = 18;
752pub type _bindgen_ty_12 = ::std::os::raw::c_int;
753pub type PF_ParamType = A_long;
754pub const PF_Precision_INTEGER: _bindgen_ty_13 = 0;
755pub const PF_Precision_TENTHS: _bindgen_ty_13 = 1;
756pub const PF_Precision_HUNDREDTHS: _bindgen_ty_13 = 2;
757pub const PF_Precision_THOUSANDTHS: _bindgen_ty_13 = 3;
758pub const PF_Precision_TEN_THOUSANDTHS: _bindgen_ty_13 = 4;
759pub type _bindgen_ty_13 = ::std::os::raw::c_uint;
760pub type PF_Precision = A_short;
761pub const PF_ParamFlag_NONE: _bindgen_ty_14 = 0;
762pub const PF_ParamFlag_RESERVED1: _bindgen_ty_14 = 1;
763pub const PF_ParamFlag_CANNOT_TIME_VARY: _bindgen_ty_14 = 2;
764pub const PF_ParamFlag_CANNOT_INTERP: _bindgen_ty_14 = 4;
765pub const PF_ParamFlag_RESERVED2: _bindgen_ty_14 = 8;
766pub const PF_ParamFlag_RESERVED3: _bindgen_ty_14 = 16;
767pub const PF_ParamFlag_COLLAPSE_TWIRLY: _bindgen_ty_14 = 32;
768pub const PF_ParamFlag_SUPERVISE: _bindgen_ty_14 = 64;
769pub const PF_ParamFlag_START_COLLAPSED: _bindgen_ty_14 = 32;
770pub const PF_ParamFlag_USE_VALUE_FOR_OLD_PROJECTS: _bindgen_ty_14 = 128;
771pub const PF_ParamFlag_LAYER_PARAM_IS_TRACKMATTE: _bindgen_ty_14 = 128;
772pub const PF_ParamFlag_EXCLUDE_FROM_HAVE_INPUTS_CHANGED: _bindgen_ty_14 = 256;
773pub const PF_ParamFlag_SKIP_REVEAL_WHEN_UNHIDDEN: _bindgen_ty_14 = 512;
774pub const PF_ParamFlag_unused1: _bindgen_ty_14 = 1024;
775pub const PF_ParamFlag_RESERVED4: _bindgen_ty_14 = 2048;
776pub const PF_ParamFlags_ALL: _bindgen_ty_14 = 4294967295;
777pub type _bindgen_ty_14 = ::std::os::raw::c_uint;
778pub type PF_ParamFlags = A_long;
779pub const PF_Err_NONE: _bindgen_ty_15 = 0;
780pub const PF_Err_OUT_OF_MEMORY: _bindgen_ty_15 = 4;
781pub const PF_Err_INTERNAL_STRUCT_DAMAGED: _bindgen_ty_15 = 512;
782pub const PF_Err_INVALID_INDEX: _bindgen_ty_15 = 513;
783pub const PF_Err_UNRECOGNIZED_PARAM_TYPE: _bindgen_ty_15 = 514;
784pub const PF_Err_INVALID_CALLBACK: _bindgen_ty_15 = 515;
785pub const PF_Err_BAD_CALLBACK_PARAM: _bindgen_ty_15 = 516;
786pub const PF_Interrupt_CANCEL: _bindgen_ty_15 = 517;
787pub const PF_Err_CANNOT_PARSE_KEYFRAME_TEXT: _bindgen_ty_15 = 518;
788pub type _bindgen_ty_15 = ::std::os::raw::c_uint;
789pub type PF_Err = A_long;
790pub const PF_WorldFlag_DEEP: _bindgen_ty_16 = 1;
791pub const PF_WorldFlag_WRITEABLE: _bindgen_ty_16 = 2;
792pub const PF_WorldFlag_RESERVED0: _bindgen_ty_16 = 16777216;
793pub const PF_WorldFlag_RESERVED1: _bindgen_ty_16 = 33554432;
794pub const PF_WorldFlag_RESERVED2: _bindgen_ty_16 = 67108864;
795pub const PF_WorldFlag_RESERVED3: _bindgen_ty_16 = 134217728;
796pub const PF_WorldFlag_RESERVED4: _bindgen_ty_16 = 268435456;
797pub const PF_WorldFlag_RESERVED5: _bindgen_ty_16 = 536870912;
798pub const PF_WorldFlag_RESERVED6: _bindgen_ty_16 = 1073741824;
799pub const PF_WorldFlag_RESERVED: _bindgen_ty_16 = 2147483648;
800pub type _bindgen_ty_16 = ::std::os::raw::c_uint;
801pub type PF_WorldFlags = A_long;
802pub const PF_OutFlag_NONE: _bindgen_ty_17 = 0;
803pub const PF_OutFlag_KEEP_RESOURCE_OPEN: _bindgen_ty_17 = 1;
804pub const PF_OutFlag_WIDE_TIME_INPUT: _bindgen_ty_17 = 2;
805pub const PF_OutFlag_NON_PARAM_VARY: _bindgen_ty_17 = 4;
806pub const PF_OutFlag_RESERVED6: _bindgen_ty_17 = 8;
807pub const PF_OutFlag_SEQUENCE_DATA_NEEDS_FLATTENING: _bindgen_ty_17 = 16;
808pub const PF_OutFlag_I_DO_DIALOG: _bindgen_ty_17 = 32;
809pub const PF_OutFlag_USE_OUTPUT_EXTENT: _bindgen_ty_17 = 64;
810pub const PF_OutFlag_SEND_DO_DIALOG: _bindgen_ty_17 = 128;
811pub const PF_OutFlag_DISPLAY_ERROR_MESSAGE: _bindgen_ty_17 = 256;
812pub const PF_OutFlag_I_EXPAND_BUFFER: _bindgen_ty_17 = 512;
813pub const PF_OutFlag_PIX_INDEPENDENT: _bindgen_ty_17 = 1024;
814pub const PF_OutFlag_I_WRITE_INPUT_BUFFER: _bindgen_ty_17 = 2048;
815pub const PF_OutFlag_I_SHRINK_BUFFER: _bindgen_ty_17 = 4096;
816pub const PF_OutFlag_WORKS_IN_PLACE: _bindgen_ty_17 = 8192;
817pub const PF_OutFlag_RESERVED8: _bindgen_ty_17 = 16384;
818pub const PF_OutFlag_CUSTOM_UI: _bindgen_ty_17 = 32768;
819pub const PF_OutFlag_RESERVED7: _bindgen_ty_17 = 65536;
820pub const PF_OutFlag_REFRESH_UI: _bindgen_ty_17 = 131072;
821pub const PF_OutFlag_NOP_RENDER: _bindgen_ty_17 = 262144;
822pub const PF_OutFlag_I_USE_SHUTTER_ANGLE: _bindgen_ty_17 = 524288;
823pub const PF_OutFlag_I_USE_AUDIO: _bindgen_ty_17 = 1048576;
824pub const PF_OutFlag_I_AM_OBSOLETE: _bindgen_ty_17 = 2097152;
825pub const PF_OutFlag_FORCE_RERENDER: _bindgen_ty_17 = 4194304;
826pub const PF_OutFlag_PiPL_OVERRIDES_OUTDATA_OUTFLAGS: _bindgen_ty_17 = 8388608;
827pub const PF_OutFlag_I_HAVE_EXTERNAL_DEPENDENCIES: _bindgen_ty_17 = 16777216;
828pub const PF_OutFlag_DEEP_COLOR_AWARE: _bindgen_ty_17 = 33554432;
829pub const PF_OutFlag_SEND_UPDATE_PARAMS_UI: _bindgen_ty_17 = 67108864;
830pub const PF_OutFlag_AUDIO_FLOAT_ONLY: _bindgen_ty_17 = 134217728;
831pub const PF_OutFlag_AUDIO_IIR: _bindgen_ty_17 = 268435456;
832pub const PF_OutFlag_I_SYNTHESIZE_AUDIO: _bindgen_ty_17 = 536870912;
833pub const PF_OutFlag_AUDIO_EFFECT_TOO: _bindgen_ty_17 = 1073741824;
834pub const PF_OutFlag_AUDIO_EFFECT_ONLY: _bindgen_ty_17 = 2147483648;
835#[doc = " -------------------- Output Flags --------------------\n\nThe out_flags field of the OutData can be set to an OR-ed\ncombination of these flags to communicate various things to\nthe driver program.  The flags are described here:\n\nPF_OutFlag_NONE\nThis is the \"empty\" setting -- no outflags.\n\nPF_OutFlag_WIDE_TIME_INPUT\nSet this flag if the effect calls get_param to inquire a\nparameter at a time besides the current one (e.g. to get\nthe previous video frame). This should be sent, if it is\ngoing to be sent, at PF_Cmd_GLOBAL_SETUP. Can be over-ridden\ndynamically during PF_Cmd_QUERY_DYNAMIC_FLAGS.\n\nAs of AE10, this flag is no longer recommended. It still works the\nsame way and is safe to set, but there's a more efficient option.\nSee PF_OutFlag2_AUTOMATIC_WIDE_TIME_INPUT.\n\nPF_OutFlag_NON_PARAM_VARY\nSet this if the effect uses information other than the parameters\nin the param list to generate its output at the current time.\nFor instance, if the effect uses the current time of the frame\nor some random value to decide the output, set this flag.  This\nflag should be sent at PF_Cmd_GLOBAL_SETUP.  If the effect\nproduces changing frames when applied to a still image and\nall parameters are constant, that's a sure sign that this bit\nshould be set (e.g. Wave Warp).\tCan be over-ridden dynamically\nduring PF_Cmd_QUERY_DYNAMIC_FLAGS.\n\nPF_OutFlag_SEQUENCE_DATA_NEEDS_FLATTENING\nWhen you allocate a sequence data handle, the app\nmay write the handle out to disk and reuse it\nlater. Pass this flag if the handle is not \"flat\"\n(i.e. has pointers or handles hanging off of it).\nBasically, this gives you a chance to alter the\nhandle contents before it is written out to disk,\nso  you won't get invalid handles or pointers. Once\nyou have flattened a handle, you will get an\nopportunity to un-flatten it before the effect\nneeds to continue. For sequence data, you will be\ninvoked with a PF_Cmd_SEQUENCE_RESETUP call. You\nshould store a boolean at a common  offset in your\nunflattened and flattened data that says whether\nthe data is flat or not. If you get a\nPF_Cmd_SEQUENCE_RESETUP and the boolean indicated\nthe data is flattened, you should  unflatten the\ndata, free the flattened data handle, and set the\nsequence_data handle in the  PF_OutData. If you\never set the data to NULL when you flatten it, you\nwill NOT get the sequence  resetup call to\nunflatten it. Instead, you may just get a RENDER\ncall with NULL data. Forewarned is  forearmed. This\nflag, indicating if the data will need to be\nflattened, should be set at  PF_Cmd_GLOBAL_SETUP time.\n\nPF_OutFlag_I_DO_DIALOG\nSet this is the effect responds to a PF_Cmd_DO_DIALOG, i.e. Does this\neffect bring up an options dialog box.  PF_Cmd_DO_DIALOG is generated\nwhen the user presses the Options button on the Effect floater.\nThis flag should be set at PF_Cmd_GLOBAL_SETUP time.\n\nPF_OutFlag_USE_OUTPUT_EXTENT\nThe output layer is passed with an \"extent rect\" indicating\nthe area of the layer that actually contains visible image data.  If\nthe effect changes its behavior based on the extent rect (for instance,\nby not iterating over the entire image), set this flag, so the\napplication will know whether having the extent\tchange should cause\nthe frame to re-render.  Specify this flag at PF_Cmd_GLOBAL_SETUP.\n\nPF_OutFlag_SEND_DO_DIALOG\nSome filters need their options dialog box to be brought up at least\nonce to be valid.  You can set this flag, and the driver app will\nautomatically send a PF_Cmd_DO_DIALOG to the effect when it is applied.\nThe DO_DIALOG will be sent after PF_Cmd_SEQUENCE_SETUP.  This flag\nshould be set in PF_Cmd_SEQUENCE_SETUP if it is going to be set.\n\nPF_OutFlag_DISPLAY_ERROR_MESSAGE\nWhenever the return_msg field in the PF_OutData is set to a string,\nAfter Effects will bring up a simple dialog box containing that\nstring.  If you set this flag, the dialog box will be made to look\nlike an error message dialog box.  If you don't set this flag, it\nwill be an undecorated dialog box.  Using this flag, an effects module\ncan have and display its own error messages and not worry about the\ncode for dialog boxes -- the program will do it for you.\nThis flag can be sent after any command.\n\nPF_OutFlag_I_EXPAND_BUFFER\nStarting with After Effects 2.0, effects will be able to expand their buffers\nbeyond the current layer's dimensions. This has always been part of the\nPF specification, but as an extra precaution (and hint to the AE rendering\nengine) set this flag at PF_Cmd_GLOBAL_SETUP if you plan to expand your\nbuffer.\n\nPF_OutFlag_I_SHRINK_BUFFER\nSet this flag if you can shrink your buffer based on the extent-rects passed\nto you in order to be more memory efficient.\n\nPF_OutFlag_PIX_INDEPENDENT\nSet this flag if the output at a given pixel is not dependent on the values\nof the pixels around it. If this is set, the pixels After Effects does not\ncare about (because of field rendering, for example) could be filled with garbage\ncolors.  Please set this flag at PF_Cmd_GLOBAL_SETUP. Can be over-ridden\ndynamically during PF_Cmd_QUERY_DYNAMIC_FLAGS.\n\nPF_OutFlag_I_WRITE_INPUT_BUFFER\nSet this flag if your effect would like to write into the input buffer. This\ncan be useful if you need an scratch buffer, but it also invalidates some speedups\nin the AE rendering pipeline, so use it with some discretion. Please set this\nflag at PF_Cmd_GLOBAL_SETUP.\n\nPF_OutFlag_KEEP_RESOURCE_OPEN\n\nObsoleted in AE 2015 (does nothing when set).\n\nSet this flag if your effect expects its Macintosh resource fork to be open\nat any time other than global setup.  Note that this does not mean that\nthe resource fork will be kept open at all times, just whenever the\neffect is being executed.\n\nPF_OutFlag_NOP_RENDER\n\nSet this flag in PF_Cmd_GLOBAL_SETUP if the render would never result in changes\nto the source image (or audio?). For example, an expression control would set this.\n\nPF_OutFlag_CUSTOM_UI\n\nThis flag must be set if your effect has a custom UI in the Effect Controls\nWindow, Layer Window or Comp Window.\n\nPF_OutFlag2_CUSTOM_UI_ASYNC_MANAGER\t(new in 13.5)\n\nThis flags enables use of AEGP_CheckoutOrRender_*_AsyncManager() calls\nwhich avoid the need for plugin management of the lifetime of async custom UI renders from the UI thread.\nThe plugin asks for what frames it needs and the manager calls PF_Event_DRAW again when they are available\n(or cancels them as needed automatically).  The plugin responds in PF_Event_DRAW by asking for what it needs\nand drawing what it can from what is available.\n\nDue to separation of Render thread and UI thread in 13.5, frames for custom UI should no longer be\nrendered synchronously (see RenderSuite5 for more details). The manager simplifies this, especially when\nthere are multiple requests needed for DRAW.\n\nWhen enabled, this flag associates a \"PF_AsyncManager\" with the NEW_CONTEXT/CLOSE_CONTEXT and PF_Event_DRAW\nthat will automatically track completion of 1 or more asynch render requests made for drawing custom UI.\nAs requests complete,  PF_Event_DRAW will be called again and the current state of the CUSTOM_UI can be drawn.\nSuch requests may be canceled automatically as the user scrubs the time needle or project changes are made and\nbecome invalid.\n\nThis flag is used in addition to the CUSTOM_UI flag during PF_Cmd_GLOBAL_SETUP\n\nPF_OutFlag_REFRESH_UI\n\nCan be returned from PF_Cmd_EVENT, PF_Cmd_RENDER, and PF_Cmd_DO_DIALOG.\nCauses the effects control window, layer window, and comp window to be re-drawn.\n\nPF_OutFlag_I_USE_SHUTTER_ANGLE\n\nMust be set at PF_Cmd_GLOBAL_SETUP time if the effect uses\nthe shutter_angle or the shutter_phase. Can be over-ridden dynamically during\nPF_Cmd_QUERY_DYNAMIC_FLAGS.\n\nPF_OutFlag_I_USE_AUDIO\n\nMust be set at PF_Cmd_GLOBAL_SETUP time for a visual effect\nthat calls the audio checkout calls.\n\nPF_OutFlag_I_AM_OBSOLETE\n\nSet at PF_Cmd_GLOBAL_SETUP time for effects that don't\nwant to appear in the AE Effects menu (but will still be invoked\nif you load a project that has an old copy of the effect applied).\n\nPF_OutFlag_FORCE_RERENDER\n\nSet at PF_Cmd_EVENT if the effect modified sequence data,\nor did anything else that requires the effect needs to re-render.\nNote that setting PF_ChangeFlag_CHANGED_VALUE automatically\ncauses a re-render, so don't worry about setting PF_OutFlag_FORCE_RERENDER\nin that case. Also, I_MIX_GUID_DEPENDENCIES can be used to trigger a rerender on\ndependant changes if sequence_data has not been changed.\n\nIMPORTANT: FORCE_RERENDER should be used as a last resort. Long term we should be eliminating the need for this\nbecause it causes forced cache invalidation that doesn't work well with undo.\nOnce we have the full set of APIs in place needed to manage render state, we will be able to deprecate this.\nPrefer using ARB data + CHANGED_VALUE or I_MIX_GUID_DEPENDENCIES when possible instead.\n\nIn 13.5 the split between a UI and render threads means that FORCE_RERENDER will now also have the needed\nside effect of copying sequence_data state to the render project.  This can be expensive if the sequence_data is large.\nSupport GET_FLATTENED_SEQUENCE_DATA to prevent deallocation of your sequence_data, which can help.\nGET_FLATTENED_SEQUENCE_DATA support is required for FORCE_RERENDER use in custom mouse/key events.\n\nPF_OutFlag_PiPL_OVERRIDES_OUTDATA_OUTFLAGS\n\nValid only for setting in your PiPL.  When set out_flags will be\nignored at PF_Cmd_GLOBAL_SETUP time (& thus don't need to match).\n\nPF_OutFlag_I_HAVE_EXTERNAL_DEPENDENCIES\n\nSet this flag at PF_Cmd_GLOBAL_SETUP time if the effect has dependencies\nthat the user should know about before transporting their project to a\ndifferent machine.  For example, dependencies on an installed font,\nor on an external file.  If set, the effect will receive a\nPF_Cmd_GET_EXTERNAL_DEPENDENCIES request, where the extra\nparam will be a PF_ExtDependenciesExtra, and the effect should\nreport its information based on the given sequence_data.\n\nPF_OutFlag_SEND_UPDATE_PARAMS_UI\n\nSet this flag at PF_Cmd_GLOBAL_SETUP time if you want to receive\nPF_Cmd_UPDATE_PARAMS_UI messages.\n\nPF_OutFlag_AUDIO_FLOAT_ONLY\n\nSet this flag if you only want to receive PF_SIGNED_FLOAT data\nwhen processing audio data.  Requires PF_OutFlag_AUDIO_EFFECT_TOO\nor PF_OutFlag_AUDIO_EFFECT_ONLY.\n\nPF_OutFlag_AUDIO_IIR\n\nSet this flag at PF_Cmd_GLOBAL_SETUP time if you are an\nInfinite-Impulse-Response audio filter (i.e. your output at a given\ntime depends on your output from previous times).\n\nPF_OutFlag_I_SYNTHESIZE_AUDIO\n\nSet this flag at PF_Cmd_GLOBAL_SETUP time if you generate\naudio even when handed silence.  Requires PF_OutFlag_AUDIO_EFFECT_TOO\nor PF_OutFlag_AUDIO_EFFECT_ONLY.\n\nPF_OutFlag_AUDIO_EFFECT_TOO\n\nMust be set at PF_Cmd_GLOBAL_SETUP time for an effect that\nwants to filter the audio too (as opposed to just reading the audio).\n\nPF_OutFlag_AUDIO_EFFECT_ONLY\n\nMust be set at PF_Cmd_GLOBAL_SETUP time for an effect\nthat only filters audio (no video).\n\nPF_OutFlag2_SUPPORTS_QUERY_DYNAMIC_FLAGS\n\nSet this during PF_Cmd_GLOBAL_SETUP if the effect handles PF_Cmd_QUERY_DYNAMIC_FLAGS.\nSupporting this command can dramatically improve performance for certain\neffects, because it provides dynamic information to the host about what\ncan be cached (as opposed to PIPL bits which cannot be changed at run-time)\n\nPF_OutFlag2_I_USE_3D_CAMERA\n\nThis bit must be set if the effect ever uses the AEGP PF_Interface suite to\naccess camera layers. Can be over-ridden dynamically during PF_Cmd_QUERY_DYNAMIC_FLAGS.\n\nPF_OutFlag2_I_USE_3D_LIGHTS\n\nThis bit must be set if the effect ever uses the AEGP PF_Interface suite to\naccess camera layers. Can be over-ridden dynamically during PF_Cmd_QUERY_DYNAMIC_FLAGS.\n\nPF_OutFlag2_PARAM_GROUP_START_COLLAPSED_FLAG\n\nIf you want a parameter group to honor the PF_ParamFlag_COLLAPSE_TWIRLY or\nPF_ParamFlag_START_COLLAPSED flag, set this bit.  Otherwise, all parameter\ngroups will be collapsed by default.\n\nPF_OutFlag2_DOESNT_NEED_EMPTY_PIXELS\n\nAdded for render optimizations; shrinks the input buffer passed to the effect to\nexclude any empty pixels (where empty means \"zero alpha\" unless\nPF_OutFlag2_REVEALS_ZERO_ALPHA is set, in which case RGB must be zero as well.)\nThe origin of the trimmed buffer can be found in in_data->pre_effect_source_origin.\nEffects with both this flag and PF_OutFlag_I_EXPAND_BUFFER set may get called with\na null input buffer if their input is completely empty, and must be able to handle\nthis case without crashing. This flag can be cleared dynamically during\nPF_Cmd_QUERY_DYNAMIC_FLAGS.\n\nPF_OutFlag2_REVEALS_ZERO_ALPHA\n\nThe effect can take pixels with zero alpha and reveal the RGB data in them (like\nour Set Channels effect). This tells After Effects not to trim such pixels when\ndetermining the input for the effect. This flag can be cleared dynamically during\nPF_Cmd_QUERY_DYNAMIC_FLAGS.\n\nPF_OutFlag2_I_AM_DEPRECATED\nthis effect is still available, and shows up under user-visible \"Obsolete\" category\nin the UI. Setting this flag means \"there's a better way to do this, but this effect\nmay still be useful in some situations\".  distinct from PF_OutFlag_I_AM_OBSOLETE in\nthat these will still show up in the GUI and the user can still apply them to new\nprojects.  The category that is set by the effect is pretty much ignored, as it will\ninstead always go into the \"Obsolete\" category\n\nPF_OutFlag2_I_USE_TIMECODE\nNew in AE 9.0.  The effect depends on the Composition's timecode or a layer's\nsource footage timecode.  If the underlying timecode changes the effects will\nbe asked to rerender.\n\nPF_OutFlag2_AUTOMATIC_WIDE_TIME_INPUT\nNew in AE 10. Requires setting of PF_OutFlag_WIDE_TIME_INPUT (which allows you\nto support old hosts), but effectively overrides that flag. When set, all\nparameter checkouts are tracked so over-time dependencies are known by AE. Note\nthat if you use this new flag, and you cache any time-dependent data in your\nsequence data (or anywhere else), you must validate that cache using the\nnew PF_HaveInputsChangedOverTimeSpan() before using it.\n\nThis only works for smart effects (those that set PF_OutFlag2_SUPPORTS_SMART_RENDER). If you haven't\nset that, After Effects will silently treat this as PF_OutFlag_WIDE_TIME_INPUT instead.\n\nTo test that it's working, apply your effect with one parameter keyframed on every frame.\nRAM Preview to fill the cache, then change one of the keyframes. The related frame and\nall dependent frames (e.g. later frames, in the case of a simulation) should lose their\ncache marks and require re-rendering. Simlarly, upstream changes to sources of layer\nparameters should cause time-selective invalidation of the cache.\n\nPF_OutFlag2_DEPENDS_ON_UNREFERENCED_MASKS\nSet this if you are going to look at paths that aren't directly referenced by a path\nparam, e.g. if you are going to draw a stroke on all masks.\n\nPF_OutFlag2_OUTPUT_IS_WATERMARKED\nSet this if your output is going to be watermarked in some way that makes it unsuitable for\nfinal use, probably because the user is using an unlicensed demo version. It is ok to change\nthis state during the course of app session, if e.g. a floating license status changes.\nPlugin authors that actually do have this state changing asynchronously must be careful to\nhave the next render match the last state returned from QUERY_DYNAMIC_FLAGS otherwise race conditions\ncould cause incorrect frames to be cached. (This is a non-issue if you only change this in response\nto DO_DIALOG.)\n\nPF_OutFlag2_I_MIX_GUID_DEPENDENCIES\t(new in 13.5)\nSmart effects only. With this option, FORCE_RERENDER becomes a cache-savvy more efficient MAYBE rerender.\nIf custom UI or DO_DIALOG change sequence data, returning FORCE_RERENDER requests AE to check whether\nrerender needs to occur.  During PreRender, the effect uses the GuidMixInPtr callback to mix\nany additional state that affects the render into our internal GUID for the cached frame.\nAE can then tell whether the frame already exists and if so, no longer needs to render.\nThis also means that DO_DIALOG no longer always blows the cache and that undo works across DO_DIALOG.\nCancelation of DO_DIALOG no longer blows the cache either.\nThis also means that I_USE_* flags are now basically redundant since any dependency could be mixed in.\nJust be sure to mix in everything that can uniquely affect resulting rendered pixels (that is not already\nan AE stream parameter).  But don't mixin things that are disabled and have no render effect  (this\nresults in less cache efficiency).\n\nPF_OutFlag2_SUPPORTS_THREADED_RENDERING\nIndicates the effect supports rendering on multiple threads at the same time. Single or multiple\napplications of this effect on a layer can be called to render at the same time on multiple threads.\n\nUI selectors are still sent on the main thread, however Sequence Setup, Sequence Resetup, Sequence SetDown,\nPreRender, and Render may be sent on multiple threads at the same time as the UI selectors are being handled\nso all of these selectors must be thread safe.\n\nGlobal Setup and Global Setdown selectors are unaffected by this flag.  Regardless whether this flag is set\nor not, they will only be sent on the main thread, and will not be sent at the same time as any other selectors.\n\nIf the effect sets PF_OutFlag_SEQUENCE_DATA_NEEDS_FLATTENING indicating the sequence data needs flattening\nthen it must also set PF_OutFlag2_SUPPORTS_GET_FLATTENED_SEQUENCE_DATA.\n\nsequence_data is read-only at render time and must be accessed with PF_EffectSequenceDataSuite.\nin_data->sequence_data will be NULL during render. AEGP_ComputeCacheSuite is suggested if writing to\nsequence_data at render time is needed for caching. This suite unifies cache entries so multiple threads do\nnot recompute the same cache value. If neither of these solutions work, see the next flag,\nPF_OutFlag2_MUTABLE_RENDER_SEQUENCE_DATA_SLOWER.\n\nPF_OutFlag2_MUTABLE_RENDER_SEQUENCE_DATA_SLOWER\nIndicates the effect needs sequence_data replicated for each render thread, thus allowing each render to have\nsequence_data which can be written to. Note that changes to sequence_data will be discarded regularly, currently\nafter each span of frames is rendered such as single RAM Preview or Render Queue export."]
836pub type _bindgen_ty_17 = ::std::os::raw::c_uint;
837pub type PF_OutFlags = A_long;
838pub const PF_OutFlag2_NONE: _bindgen_ty_18 = 0;
839pub const PF_OutFlag2_SUPPORTS_QUERY_DYNAMIC_FLAGS: _bindgen_ty_18 = 1;
840pub const PF_OutFlag2_I_USE_3D_CAMERA: _bindgen_ty_18 = 2;
841pub const PF_OutFlag2_I_USE_3D_LIGHTS: _bindgen_ty_18 = 4;
842pub const PF_OutFlag2_PARAM_GROUP_START_COLLAPSED_FLAG: _bindgen_ty_18 = 8;
843pub const PF_OutFlag2_I_AM_THREADSAFE: _bindgen_ty_18 = 16;
844pub const PF_OutFlag2_CAN_COMBINE_WITH_DESTINATION: _bindgen_ty_18 = 32;
845pub const PF_OutFlag2_DOESNT_NEED_EMPTY_PIXELS: _bindgen_ty_18 = 64;
846pub const PF_OutFlag2_REVEALS_ZERO_ALPHA: _bindgen_ty_18 = 128;
847pub const PF_OutFlag2_PRESERVES_FULLY_OPAQUE_PIXELS: _bindgen_ty_18 = 256;
848pub const PF_OutFlag2_SUPPORTS_SMART_RENDER: _bindgen_ty_18 = 1024;
849pub const PF_OutFlag2_RESERVED9: _bindgen_ty_18 = 2048;
850pub const PF_OutFlag2_FLOAT_COLOR_AWARE: _bindgen_ty_18 = 4096;
851pub const PF_OutFlag2_I_USE_COLORSPACE_ENUMERATION: _bindgen_ty_18 = 8192;
852pub const PF_OutFlag2_I_AM_DEPRECATED: _bindgen_ty_18 = 16384;
853pub const PF_OutFlag2_PPRO_DO_NOT_CLONE_SEQUENCE_DATA_FOR_RENDER: _bindgen_ty_18 = 32768;
854pub const PF_OutFlag2_RESERVED10: _bindgen_ty_18 = 65536;
855pub const PF_OutFlag2_AUTOMATIC_WIDE_TIME_INPUT: _bindgen_ty_18 = 131072;
856pub const PF_OutFlag2_I_USE_TIMECODE: _bindgen_ty_18 = 262144;
857pub const PF_OutFlag2_DEPENDS_ON_UNREFERENCED_MASKS: _bindgen_ty_18 = 524288;
858pub const PF_OutFlag2_OUTPUT_IS_WATERMARKED: _bindgen_ty_18 = 1048576;
859pub const PF_OutFlag2_I_MIX_GUID_DEPENDENCIES: _bindgen_ty_18 = 2097152;
860pub const PF_OutFlag2_AE13_5_THREADSAFE: _bindgen_ty_18 = 4194304;
861pub const PF_OutFlag2_SUPPORTS_GET_FLATTENED_SEQUENCE_DATA: _bindgen_ty_18 = 8388608;
862pub const PF_OutFlag2_CUSTOM_UI_ASYNC_MANAGER: _bindgen_ty_18 = 16777216;
863pub const PF_OutFlag2_SUPPORTS_GPU_RENDER_F32: _bindgen_ty_18 = 33554432;
864pub const PF_OutFlag2_RESERVED12: _bindgen_ty_18 = 67108864;
865pub const PF_OutFlag2_SUPPORTS_THREADED_RENDERING: _bindgen_ty_18 = 134217728;
866pub const PF_OutFlag2_MUTABLE_RENDER_SEQUENCE_DATA_SLOWER: _bindgen_ty_18 = 268435456;
867pub const PF_OutFlag2_SUPPORTS_DIRECTX_RENDERING: _bindgen_ty_18 = 536870912;
868pub type _bindgen_ty_18 = ::std::os::raw::c_uint;
869pub type PF_OutFlags2 = A_long;
870pub const PF_InFlag_NONE: _bindgen_ty_19 = 0;
871pub const PF_InFlag_PROJECT_IS_RENDER_ONLY: _bindgen_ty_19 = 1;
872#[doc = " -------------------- Input Flags --------------------\n\nThe in_flags field of the InData can be set to an OR-ed\ncombination of these flags to communicate various things from AE to an effect plugin\nThe flags are described here:\n\nPF_InFlag_NONE\nThis is the \"empty\" setting -- no inflags.\n\nPF_InFlag_PROJECT_IS_RENDER_ONLY  (since 13.5)\n\nFor efficiency, if a plugin sets up UI that is not used in render, this flag\ncan be tested to skip that step when an effect is being RESETUP for render only.\nEffect instances with this flag on in RESETUP are in read-only AE projects and will not receive UI related selectors.\n\nThis is an optimization hint.  If you don't make such optimizations in render your plugin should still work.\n\nThis flag should generally not be used to suppress errors in render.  Errors should still be reported as usual via AE standard mechanisms,\nand AE will then handle the differences in context reporting.\n\nIf this is off, UI should be set up normally (and the effect could also be running in an earlier version of\nAE that assumed render and UI on the same effect instance.)"]
873pub type _bindgen_ty_19 = ::std::os::raw::c_uint;
874pub type PF_InFlags = A_long;
875pub const PF_Cmd_ABOUT: _bindgen_ty_20 = 0;
876pub const PF_Cmd_GLOBAL_SETUP: _bindgen_ty_20 = 1;
877pub const PF_Cmd_UNUSED_0: _bindgen_ty_20 = 2;
878pub const PF_Cmd_GLOBAL_SETDOWN: _bindgen_ty_20 = 3;
879pub const PF_Cmd_PARAMS_SETUP: _bindgen_ty_20 = 4;
880pub const PF_Cmd_SEQUENCE_SETUP: _bindgen_ty_20 = 5;
881pub const PF_Cmd_SEQUENCE_RESETUP: _bindgen_ty_20 = 6;
882pub const PF_Cmd_SEQUENCE_FLATTEN: _bindgen_ty_20 = 7;
883pub const PF_Cmd_SEQUENCE_SETDOWN: _bindgen_ty_20 = 8;
884pub const PF_Cmd_DO_DIALOG: _bindgen_ty_20 = 9;
885pub const PF_Cmd_FRAME_SETUP: _bindgen_ty_20 = 10;
886pub const PF_Cmd_RENDER: _bindgen_ty_20 = 11;
887pub const PF_Cmd_FRAME_SETDOWN: _bindgen_ty_20 = 12;
888pub const PF_Cmd_USER_CHANGED_PARAM: _bindgen_ty_20 = 13;
889pub const PF_Cmd_UPDATE_PARAMS_UI: _bindgen_ty_20 = 14;
890pub const PF_Cmd_EVENT: _bindgen_ty_20 = 15;
891pub const PF_Cmd_GET_EXTERNAL_DEPENDENCIES: _bindgen_ty_20 = 16;
892pub const PF_Cmd_COMPLETELY_GENERAL: _bindgen_ty_20 = 17;
893pub const PF_Cmd_QUERY_DYNAMIC_FLAGS: _bindgen_ty_20 = 18;
894pub const PF_Cmd_AUDIO_RENDER: _bindgen_ty_20 = 19;
895pub const PF_Cmd_AUDIO_SETUP: _bindgen_ty_20 = 20;
896pub const PF_Cmd_AUDIO_SETDOWN: _bindgen_ty_20 = 21;
897pub const PF_Cmd_ARBITRARY_CALLBACK: _bindgen_ty_20 = 22;
898pub const PF_Cmd_SMART_PRE_RENDER: _bindgen_ty_20 = 23;
899pub const PF_Cmd_SMART_RENDER: _bindgen_ty_20 = 24;
900pub const PF_Cmd_RESERVED1: _bindgen_ty_20 = 25;
901pub const PF_Cmd_RESERVED2: _bindgen_ty_20 = 26;
902pub const PF_Cmd_RESERVED3: _bindgen_ty_20 = 27;
903pub const PF_Cmd_GET_FLATTENED_SEQUENCE_DATA: _bindgen_ty_20 = 28;
904pub const PF_Cmd_TRANSLATE_PARAMS_TO_PREFS: _bindgen_ty_20 = 29;
905pub const PF_Cmd_RESERVED4: _bindgen_ty_20 = 30;
906pub const PF_Cmd_SMART_RENDER_GPU: _bindgen_ty_20 = 31;
907pub const PF_Cmd_GPU_DEVICE_SETUP: _bindgen_ty_20 = 32;
908pub const PF_Cmd_GPU_DEVICE_SETDOWN: _bindgen_ty_20 = 33;
909pub const PF_Cmd_NUM_CMDS: _bindgen_ty_20 = 34;
910#[doc = " -------------------- Command Selectors --------------------\n\nThe first parameter to the effect routine is one of t\these command\nselectors.  The commands are described here.\n\nPF_Cmd_ABOUT\nThis command should display an information dialog box about the\neffect module.  The easiest thing to do is PF_SPRINTF the info\ninto the out_data->return_msg field.  After Effects will bring\nup a simple undecorated modal dialog with your text proudly displayed.\nThis command can be sent at _any_ time, so don't count on having\nany global data or anything else set.  (Except, as always, the\ncurrent resource file will be set to your effects module.)\n\nPF_Cmd_GLOBAL_SETUP\nWhen you get this command, you should check the version of the\neffect protocol with which you are being invoked, and set any of\nthe necessary out flags (described above) or out data fields\n(described below).  If your global data was flattened, the flat\ndata will be passed here and you should unflatten it, free the\nflat global data, and set the OutData global_data to the new un-flat\ndata.  Alternatively, the global data may come in NULL and you can\nallocate new global data at this time.\n\nPF_Cmd_GLOBAL_SETDOWN\nYou should free any global data you have allocated when you get\nthis command.\n\nPF_Cmd_PARAMS_SETUP\nHere you should add any params your effect wants using the\nPF_ADD_PARAM callback described below.  This is called after global\nsetup -- see the add_param callback described below.\n\nPF_Cmd_SEQUENCE_SETUP\nThis is called when the effect is first applied to a layer.\nA sequence is a series of images that will usually be all be of the same\nsize and in the same context.  You can allocate sequence data\nat this time -- many more input fields are defined at this time.\nSee the PF_InData description below.\n\nAs of 13.5 this only happens on the UI thread.\nExcept for legacy (no GET_FLATTENED_SEQUENCE_DATA) effects that do I_DO_DIALOG which can still hit this in render.\n\nPF_Cmd_SEQUENCE_RESETUP\nThis call is made to unflatten flattened sequence data.\nThere are at least three cases when this can happen:\n1) after the sequence data is written to disk, 2) after the\nsequence data is read in from disk, 3) after a duplicate\nis made (called on both original and the new sequence).\n\nThis can happen in UI or Render thread (13.5),  the effect must handle\ninitialization of a NULL sequence_data input if needed.  See also PF_InFlag_PROJECT_IS_RENDER_ONLY.\n\nPF_Cmd_SEQUENCE_FLATTEN\nThis call is made to flatten unflat sequence data so it can be\ncached to disk.  After the data is flattened, free the un-flat data\nand set the out_data->sequence_data to the new flat data.\nIf you don't want your sequence handle written to disk, you\ncan set it to NULL (after disposing it) at this time.  Presumably\nyou would then reallocate it at another time.\n\nThis command will be sent when saving and when duplicating\nthe sequence.\n\nPF_Cmd_GET_FLATTENED_SEQUENCE_DATA\t(new in 13.5)\nReturns an independent allocation of the sequence data which can be written\nto disk or used to initialise or update other instances of the effect plug-in.\n\nThe host calls this command to serialize the sequence data without\nhaving to flatten and resetup the UI plug-in as was legacy practice. (However, at present effects\nstill may need flattening in render if the sequence_data is about to be assigned.)\n\nAn effect that implements GET_FLATTENED_SEQUENCE_DATA will only receive SEQUENCE_SETUP on the UI thread.\nSEQUENCE_RESETUP can happen on either thread. Make sure you handle a NULL sequence_data in RESETUP.\n(Without GET_FLATTENED, a legacy effect may still get SEQUENCE_SETUP in render but DO_DIALOG will not be called.)\n\nAlso when enabled, this means that the effect is guaranteed to get a\nSEQUENCE_SETDOWN cmd to dispose the effect's sequence_data  (previously\nit was possible for AE to bypass this if the sequence_data was flat,\nbut that lead to SEQUENCE_SETUP/SETDOWN imbalances for some plugins.\nThe imbalance should not happen when using this flag, but the plugin must\nhandle being called on SETDOWN with possibly flat data. For example,\ntry copy and pasting an effect onto itself.\n\nSupport for this command is indicated by setting\nPF_OutFlag2_SUPPORTS_GET_FLATTENED_SEQUENCE_DATA\n\nThe ownership of the returned handle is transferred to the host.\n\nPF_Cmd_SEQUENCE_SETDOWN\nYou should free any sequence data you have allocated when you\nget this command.\n\nPF_Cmd_DO_DIALOG\nThis command indicated that the Options button or command has\nbeen selected and the effect should bring up its options dialog.\nThis command will only be sent it the effect has indicated that\nit has an options dialog with PF_OutFlag_I_DO_DIALOG.  This\ncommand will automatically be sent once upon applying the filter\nif PF_OutFlag_SEND_DO_DIALOG is set in SEQUENCE_SETUP.\n\nPF_Cmd_FRAME_SETUP\nThis is called immediately before each frame is invoked.  You\ncan allocate frame data at this time, if you wish, or you can\njust wait for the RENDER which will immediately follow.\n\nPF_Cmd_RENDER\nThis is the call to render the frame.  All fields in the in_data\nwill be valid at this time and you can inquire parameters or\nwhat-have-you.  This should set the output frame with the new\nimage data.  This is the main action command.\n\nPF_Cmd_FRAME_SETDOWN\nIf you allocated data in PF_Cmd_FRAME_SETUP, this is the time\nto free it and clean up after rendering the frame.\n\nPF_Cmd_USER_CHANGED_PARAM\nThis command will be sent if you set the PF_ParamFlag_SUPERVISE\nflag for a param.  This allows you to modify the params array contents to\ncontrol values or make one control affect others, including arbitrary\ndata.  This command will be sent whenever the user interacts with a\nstandard param controller that has PF_ParamFlag_SUPERVISE\nset.\n\nThe \"extra\" field will be a pointer to a PF_UserChangedParamExtra structure\nwhich contains the param_index of the changed parameter.\n\nYou can return PF_ChangeFlag_CHANGED_VALUE and/or call PF_UpdateParamUI()\nfor any param.\n\nPF_Cmd_UPDATE_PARAMS_UI\nThis command will be sent when the Effect Controls Window (ECW)\nneeds to updated (e.g. after opening the ECW or moving the comp to\na new time) if you have set PF_OutFlag_SEND_UPDATE_PARAMS_UI at\nglobal setup time.\n\nThis gives you a chance to call PF_UpdateParamUI() to modify certain\nui fields for the params.  See the doc for PF_UpdateParamUI()\nto see which fields can be modified.\n\nWARNING: When handling PF_Cmd_UPDATE_PARAMS_UI, you can call\nPF_UpdateParamUI() for any param(s), but not PF_ChangeFlag_CHANGED_VALUE --\nonly cosmetic changes can be made in response to this command.\n\nPF_Cmd_QUERY_DYNAMIC_FLAGS\nThis command will be sent at arbitrary times if PF_OutFlag2_SUPPORTS_QUERY_DYNAMIC_FLAGS\nis set during global setup. During this call the effect may examine the values\nof its parameters at the current time (except layer parameters) by checking them out,\nand decide whether any of the flags that support PF_Cmd_QUERY_DYNAMIC_FLAGS should be set.\n\nThe appropriate flags must be set in out_data->out_flags and out_data->out_flags2 before\nreturning. The effect must decide what information is necessary to render a frame at\nthe current time, given only the values of parameters at that time. Clearing the\nappropriate bits when possible can result in great performance improvements, but\nincorrectly clearing bits will result in caching bugs, and you won't like that. Nope.\n\n Important Reminder***\nBefore you add a new PF_Cmd, evaluate whether it should allow\nnew Sequence Data allocations! If so, remember to add it to\nCmdCanChangeSequenceData() in FLT_Host.cpp!"]
911pub type _bindgen_ty_20 = ::std::os::raw::c_uint;
912pub type PF_Cmd = A_long;
913#[repr(C)]
914#[derive(Debug, Copy, Clone)]
915pub struct _PF_LayerAudio {
916    _unused: [u8; 0],
917}
918#[doc = " -------------------- Simple Types --------------------"]
919pub type PF_LayerAudio = *mut _PF_LayerAudio;
920pub type PF_SndSamplePtr = *mut ::std::os::raw::c_void;
921#[repr(C)]
922#[derive(Debug, Copy, Clone)]
923pub struct PF_ProgressInfo {
924    _unused: [u8; 0],
925}
926pub type PF_ProgPtr = *mut PF_ProgressInfo;
927pub type PF_ParamValue = A_long;
928#[repr(C)]
929#[derive(Debug, Copy, Clone)]
930pub struct PF_SpecVersion {
931    pub major: A_short,
932    pub minor: A_short,
933}
934pub type PF_ParamIndex = A_long;
935pub type PF_UFixed = A_u_long;
936pub type PF_Fixed = Fixed;
937pub type PF_Boolean = Boolean;
938pub type PF_Handle = Handle;
939#[repr(C)]
940#[derive(Copy, Clone)]
941pub struct PF_Point {
942    pub h: A_long,
943    pub v: A_long,
944}
945#[repr(C)]
946#[derive(Copy, Clone)]
947pub union PF_Point__bindgen_ty_1 {
948    pub x: A_long,
949    pub h: A_long,
950}
951#[repr(C)]
952#[derive(Copy, Clone)]
953pub union PF_Point__bindgen_ty_2 {
954    pub y: A_long,
955    pub v: A_long,
956}
957#[repr(C)]
958#[derive(Debug, Copy, Clone)]
959pub struct PF_LRect {
960    pub left: A_long,
961    pub top: A_long,
962    pub right: A_long,
963    pub bottom: A_long,
964}
965pub type PF_Rect = PF_LRect;
966pub type PF_UnionableRect = PF_Rect;
967#[repr(C)]
968#[derive(Debug, Copy, Clone)]
969pub struct PF_RationalScale {
970    pub num: A_long,
971    pub den: A_u_long,
972}
973#[repr(C)]
974#[derive(Debug, Copy, Clone)]
975pub struct PF_FixedPoint {
976    pub x: PF_Fixed,
977    pub y: PF_Fixed,
978}
979#[repr(C)]
980#[derive(Debug, Copy, Clone)]
981pub struct PF_FixedRect {
982    pub left: PF_Fixed,
983    pub top: PF_Fixed,
984    pub right: PF_Fixed,
985    pub bottom: PF_Fixed,
986}
987#[repr(C)]
988#[derive(Debug, Copy, Clone)]
989pub struct PF_Matrix {
990    pub mat: [[PF_Fixed; 3usize]; 3usize],
991}
992pub type PF_TransferMode = A_long;
993pub type PF_XferMode = PF_TransferMode;
994#[repr(C)]
995#[derive(Debug, Copy, Clone)]
996pub struct PF_Pixel {
997    pub alpha: A_u_char,
998    pub red: A_u_char,
999    pub green: A_u_char,
1000    pub blue: A_u_char,
1001}
1002pub type PF_Pixel8 = PF_Pixel;
1003pub type PF_UnionablePixel = PF_Pixel;
1004#[repr(C)]
1005#[derive(Debug, Copy, Clone)]
1006pub struct PF_Pixel16 {
1007    pub alpha: A_u_short,
1008    pub red: A_u_short,
1009    pub green: A_u_short,
1010    pub blue: A_u_short,
1011}
1012pub type PF_FpShort = A_FpShort;
1013pub type PF_FpLong = A_FpLong;
1014#[repr(C)]
1015#[derive(Debug, Copy, Clone)]
1016pub struct PF_PixelFloat {
1017    pub alpha: PF_FpShort,
1018    pub red: PF_FpShort,
1019    pub green: PF_FpShort,
1020    pub blue: PF_FpShort,
1021}
1022pub type PF_Pixel32 = PF_PixelFloat;
1023#[repr(C)]
1024#[derive(Debug, Copy, Clone)]
1025pub struct PF_FloatMatrix {
1026    pub mat: [[PF_FpLong; 3usize]; 3usize],
1027}
1028#[repr(C)]
1029#[derive(Debug, Copy, Clone)]
1030pub struct PF_CompositeMode {
1031    pub xfer: PF_TransferMode,
1032    pub rand_seed: A_long,
1033    pub opacity: A_u_char,
1034    pub rgb_only: PF_Boolean,
1035    pub opacitySu: A_u_short,
1036}
1037pub type PF_PixLong = A_u_long;
1038#[repr(C)]
1039#[derive(Debug, Copy, Clone)]
1040pub struct _PF_PixelOpaque {
1041    _unused: [u8; 0],
1042}
1043pub type PF_PixelOpaquePtr = *mut _PF_PixelOpaque;
1044pub type PF_PixelPtr = *mut PF_Pixel;
1045pub type PF_RGB_Pixel = [PF_Fixed; 3usize];
1046pub type PF_YIQ_Pixel = [PF_Fixed; 3usize];
1047pub type PF_HLS_Pixel = [PF_Fixed; 3usize];
1048pub type PF_ChannelType = A_long;
1049pub type PF_DataType = A_long;
1050#[doc = " for enumerating over all the channels"]
1051pub type PF_ChannelIndex = A_long;
1052#[repr(C)]
1053#[derive(Debug, Copy, Clone)]
1054pub struct PF_ChannelDesc {
1055    pub channel_type: PF_ChannelType,
1056    pub name: [A_char; 64usize],
1057    pub data_type: PF_DataType,
1058    pub dimension: A_long,
1059}
1060#[doc = " the opaque type representing the channel data"]
1061#[repr(C)]
1062#[derive(Debug, Copy, Clone)]
1063pub struct PF_ChannelRef {
1064    pub opaque: [A_intptr_t; 8usize],
1065}
1066#[doc = " the opaque type representing the channel data"]
1067pub type PF_ChannelRefPtr = *mut PF_ChannelRef;
1068#[doc = " the channel data parallels the image data in size and shape.\n the width is the number of pixels, the height is the number of scanlines\n the height is image_height\n the dimension is the number of planes in a pixel\n the row_bytes is the length of a scanline in bytes\n the data type is the type of data in a plane\n\tNote : a pixel consists of dimensionL * sizeof(data_type) bytes\n dataH is a handle to the data.\n dataPV is a pointer to the dereferenced locked handle\n effects should always have dataPV non null."]
1069#[repr(C)]
1070#[derive(Debug, Copy, Clone)]
1071pub struct PF_ChannelChunk {
1072    pub channel_ref: PF_ChannelRef,
1073    pub widthL: A_long,
1074    pub heightL: A_long,
1075    pub dimensionL: A_long,
1076    pub row_bytesL: A_long,
1077    pub data_type: PF_DataType,
1078    pub dataH: PF_Handle,
1079    pub dataPV: *mut ::std::os::raw::c_void,
1080}
1081pub const PF_LayerDefault_MYSELF: _bindgen_ty_21 = -1;
1082pub const PF_LayerDefault_NONE: _bindgen_ty_21 = 0;
1083#[doc = " -------------------- Effect Parameter Description Structures --------------------\n\nIn general each structure is divided into two parts:\na) description of the parameter\nb) setting of parameter at the current invocation time\n\nA number of these structures end in A_char*, A_char[] unions.  These\nstructures are \"flattened\" between the add_param callback (in which\nthe A_char * should be used) and the read-only values accessible when\nthe effect is later invoked (at which time the A_char [] is used and\nthe string data is concatenated right at the end of the struct)."]
1084pub type _bindgen_ty_21 = ::std::os::raw::c_int;
1085#[repr(C)]
1086#[derive(Debug, Copy, Clone)]
1087pub struct PF_LayerDef {
1088    pub reserved0: *mut ::std::os::raw::c_void,
1089    pub reserved1: *mut ::std::os::raw::c_void,
1090    pub world_flags: PF_WorldFlags,
1091    pub data: PF_PixelPtr,
1092    pub rowbytes: A_long,
1093    pub width: A_long,
1094    pub height: A_long,
1095    pub extent_hint: PF_UnionableRect,
1096    pub platform_ref: *mut ::std::os::raw::c_void,
1097    pub reserved_long1: A_long,
1098    pub reserved_long4: *mut ::std::os::raw::c_void,
1099    pub pix_aspect_ratio: PF_RationalScale,
1100    pub reserved_long2: *mut ::std::os::raw::c_void,
1101    pub origin_x: A_long,
1102    pub origin_y: A_long,
1103    pub reserved_long3: A_long,
1104    pub dephault: A_long,
1105}
1106pub type PF_EffectWorld = PF_LayerDef;
1107pub const PF_UNSIGNED_PCM: _bindgen_ty_22 = 0;
1108pub const PF_SIGNED_PCM: _bindgen_ty_22 = 1;
1109pub const PF_SIGNED_FLOAT: _bindgen_ty_22 = 2;
1110pub type _bindgen_ty_22 = ::std::os::raw::c_uint;
1111pub type PF_SoundFormat = A_short;
1112pub const PF_SSS_1: _bindgen_ty_23 = 1;
1113pub const PF_SSS_2: _bindgen_ty_23 = 2;
1114pub const PF_SSS_4: _bindgen_ty_23 = 4;
1115pub type _bindgen_ty_23 = ::std::os::raw::c_uint;
1116pub type PF_SoundSampleSize = A_short;
1117pub const PF_Channels_MONO: _bindgen_ty_24 = 1;
1118pub const PF_Channels_STEREO: _bindgen_ty_24 = 2;
1119pub type _bindgen_ty_24 = ::std::os::raw::c_uint;
1120pub type PF_SoundChannels = A_short;
1121#[repr(C)]
1122#[derive(Debug, Copy, Clone)]
1123pub struct PF_SoundFormatInfo {
1124    pub rateF: PF_FpLong,
1125    pub num_channels: PF_SoundChannels,
1126    pub format: PF_SoundFormat,
1127    pub sample_size: PF_SoundSampleSize,
1128}
1129#[repr(C)]
1130#[derive(Debug, Copy, Clone)]
1131pub struct PF_SoundWorld {
1132    pub fi: PF_SoundFormatInfo,
1133    pub num_samples: A_long,
1134    pub dataP: *mut ::std::os::raw::c_void,
1135}
1136pub const PF_ValueDisplayFlag_NONE: _bindgen_ty_25 = 0;
1137pub const PF_ValueDisplayFlag_PERCENT: _bindgen_ty_25 = 1;
1138pub const PF_ValueDisplayFlag_PIXEL: _bindgen_ty_25 = 2;
1139pub const PF_ValueDisplayFlag_RESERVED1: _bindgen_ty_25 = 4;
1140pub const PF_ValueDisplayFlag_REVERSE: _bindgen_ty_25 = 8;
1141pub type _bindgen_ty_25 = ::std::os::raw::c_uint;
1142pub type PF_ValueDisplayFlags = A_short;
1143#[doc = " Slider -- PF_Param_SLIDER"]
1144#[repr(C)]
1145#[derive(Debug, Copy, Clone)]
1146pub struct PF_SliderDef {
1147    pub value: PF_ParamValue,
1148    pub value_str: [A_char; 32usize],
1149    pub value_desc: [A_char; 32usize],
1150    pub valid_min: PF_ParamValue,
1151    pub valid_max: PF_ParamValue,
1152    pub slider_min: PF_ParamValue,
1153    pub slider_max: PF_ParamValue,
1154    pub dephault: PF_ParamValue,
1155}
1156#[doc = " Fixed Point Slider -- PF_Param_FIX_SLIDER"]
1157#[repr(C)]
1158#[derive(Debug, Copy, Clone)]
1159pub struct PF_FixedSliderDef {
1160    pub value: PF_Fixed,
1161    pub value_str: [A_char; 32usize],
1162    pub value_desc: [A_char; 32usize],
1163    pub valid_min: PF_Fixed,
1164    pub valid_max: PF_Fixed,
1165    pub slider_min: PF_Fixed,
1166    pub slider_max: PF_Fixed,
1167    pub dephault: PF_Fixed,
1168    pub precision: PF_Precision,
1169    pub display_flags: PF_ValueDisplayFlags,
1170}
1171pub const PF_FSliderFlag_NONE: _bindgen_ty_26 = 0;
1172pub const PF_FSliderFlag_WANT_PHASE: _bindgen_ty_26 = 1;
1173pub type _bindgen_ty_26 = ::std::os::raw::c_uint;
1174pub type PF_FSliderFlags = A_u_long;
1175#[doc = " Floating Point Slider -- PF_Param_FLOAT_SLIDER"]
1176#[repr(C)]
1177#[derive(Debug, Copy, Clone)]
1178pub struct PF_FloatSliderDef {
1179    pub value: PF_FpLong,
1180    pub phase: PF_FpLong,
1181    pub value_desc: [A_char; 32usize],
1182    pub valid_min: PF_FpShort,
1183    pub valid_max: PF_FpShort,
1184    pub slider_min: PF_FpShort,
1185    pub slider_max: PF_FpShort,
1186    pub dephault: PF_FpShort,
1187    pub precision: PF_Precision,
1188    pub display_flags: PF_ValueDisplayFlags,
1189    pub fs_flags: PF_FSliderFlags,
1190    pub curve_tolerance: PF_FpShort,
1191    pub useExponent: PF_Boolean,
1192    pub exponent: PF_FpShort,
1193}
1194#[doc = " Angle -- PF_Param_ANGLE"]
1195#[repr(C)]
1196#[derive(Debug, Copy, Clone)]
1197pub struct PF_AngleDef {
1198    pub value: PF_Fixed,
1199    pub dephault: PF_Fixed,
1200    pub valid_min: PF_Fixed,
1201    pub valid_max: PF_Fixed,
1202}
1203#[doc = " CheckBox -- PF_Param_CHECKBOX"]
1204#[repr(C)]
1205#[derive(Copy, Clone)]
1206pub struct PF_CheckBoxDef {
1207    pub value: PF_ParamValue,
1208    pub dephault: PF_Boolean,
1209    pub reserved: A_char,
1210    pub reserved1: A_short,
1211    pub u: PF_CheckBoxDef__bindgen_ty_1,
1212}
1213#[repr(C)]
1214#[derive(Copy, Clone)]
1215pub union PF_CheckBoxDef__bindgen_ty_1 {
1216    pub nameptr: *const A_char,
1217}
1218#[doc = " Color -- PF_Param_COLOR"]
1219#[repr(C)]
1220#[derive(Debug, Copy, Clone)]
1221pub struct PF_ColorDef {
1222    pub value: PF_UnionablePixel,
1223    pub dephault: PF_UnionablePixel,
1224}
1225#[doc = " Point -- PF_Param_POINT\n\nThe values for the point use the source's coordinate system, with the\norigin at the top left. The values are expressed in fixed point, with\n16 bits of fractional precision (out of a total of 32 bits).\n\nThe dephaults (sorry) are expressed as percentages (with 16 bits of\nfraction) with the origin at the top left. The percent can be negative,\nbut should not be smaller than -600%. It should not be greater than 600%.\n\nIf restrict_bounds is TRUE, the user will not be allowed to specify\npoints outside the bounds of the layer to which they are applying the\neffect. If this is TRUE, the dephaults should be between 0.0 and 100.0."]
1226#[repr(C)]
1227#[derive(Debug, Copy, Clone)]
1228pub struct PF_PointDef {
1229    pub x_value: PF_Fixed,
1230    pub y_value: PF_Fixed,
1231    pub reserved: [A_char; 3usize],
1232    pub restrict_bounds: PF_Boolean,
1233    pub x_dephault: PF_Fixed,
1234    pub y_dephault: PF_Fixed,
1235}
1236#[doc = " 3D Point -- PF_Param_POINT_3D\n\nJust like POINT, with an extra dimension. Supported in AE starting with version 10.5 (CS 5.5)."]
1237#[repr(C)]
1238#[derive(Debug, Copy, Clone)]
1239pub struct PF_Point3DDef {
1240    pub x_value: PF_FpLong,
1241    pub y_value: PF_FpLong,
1242    pub z_value: PF_FpLong,
1243    pub x_dephault: PF_FpLong,
1244    pub y_dephault: PF_FpLong,
1245    pub z_dephault: PF_FpLong,
1246    pub reserved: [::std::os::raw::c_char; 16usize],
1247}
1248#[doc = " Popup Menu -- PF_Param_POPUP\n\n can also be used as a radio-button group in some hosts\n when PF_PUI_RADIO_BUTTON is set\n"]
1249#[repr(C)]
1250#[derive(Copy, Clone)]
1251pub struct PF_PopupDef {
1252    pub value: PF_ParamValue,
1253    pub num_choices: A_short,
1254    pub dephault: A_short,
1255    pub u: PF_PopupDef__bindgen_ty_1,
1256}
1257#[repr(C)]
1258#[derive(Copy, Clone)]
1259pub union PF_PopupDef__bindgen_ty_1 {
1260    pub namesptr: *const A_char,
1261}
1262#[doc = " Momentary Buttons -- PF_Param_BUTTON\n\n supported by AE starting with CS 5.5 (AE 10.5); may be supported in other hosts\n"]
1263#[repr(C)]
1264#[derive(Copy, Clone)]
1265pub struct PF_ButtonDef {
1266    pub value: PF_ParamValue,
1267    pub u: PF_ButtonDef__bindgen_ty_1,
1268}
1269#[repr(C)]
1270#[derive(Copy, Clone)]
1271pub union PF_ButtonDef__bindgen_ty_1 {
1272    pub namesptr: *const A_char,
1273}
1274pub const PF_PathID_NONE: _bindgen_ty_27 = 0;
1275pub type _bindgen_ty_27 = ::std::os::raw::c_uint;
1276pub type PF_PathID = A_u_long;
1277pub const PF_MaskMode_NONE: _bindgen_ty_28 = 0;
1278pub const PF_MaskMode_ADD: _bindgen_ty_28 = 1;
1279pub const PF_MaskMode_SUBTRACT: _bindgen_ty_28 = 2;
1280pub const PF_MaskMode_INTERSECT: _bindgen_ty_28 = 3;
1281pub const PF_MaskMode_LIGHTEN: _bindgen_ty_28 = 4;
1282pub const PF_MaskMode_DARKEN: _bindgen_ty_28 = 5;
1283pub const PF_MaskMode_DIFFERENCE: _bindgen_ty_28 = 6;
1284pub const PF_MaskMode_ACCUM: _bindgen_ty_28 = 7;
1285pub const PF_NUM_MASKMODES: _bindgen_ty_28 = 8;
1286pub type _bindgen_ty_28 = ::std::os::raw::c_uint;
1287pub type PF_MaskMode = A_long;
1288#[doc = " Path -- PF_Param_PATH\n\nPath parameters give access to the mask/path/shapes of the layer on which\nthe effect is applied.  For more information\non how to use these paths, see the PF_PathQuerySuite, and the PF_PathDataSuite\nin AE_EffectSuites.h"]
1289#[repr(C)]
1290#[derive(Debug, Copy, Clone)]
1291pub struct PF_PathDef {
1292    pub path_id: PF_PathID,
1293    pub reserved0: A_long,
1294    pub dephault: A_long,
1295}
1296pub type PF_ArbitraryH = PF_Handle;
1297#[repr(C)]
1298#[derive(Debug, Copy, Clone)]
1299pub struct PF_ArbitraryDef {
1300    pub id: A_short,
1301    pub pad: A_short,
1302    pub dephault: PF_ArbitraryH,
1303    pub value: PF_ArbitraryH,
1304    pub refconPV: *mut ::std::os::raw::c_void,
1305}
1306pub const PF_Arbitrary_NEW_FUNC: _bindgen_ty_29 = 0;
1307pub const PF_Arbitrary_DISPOSE_FUNC: _bindgen_ty_29 = 1;
1308pub const PF_Arbitrary_COPY_FUNC: _bindgen_ty_29 = 2;
1309pub const PF_Arbitrary_FLAT_SIZE_FUNC: _bindgen_ty_29 = 3;
1310pub const PF_Arbitrary_FLATTEN_FUNC: _bindgen_ty_29 = 4;
1311pub const PF_Arbitrary_UNFLATTEN_FUNC: _bindgen_ty_29 = 5;
1312pub const PF_Arbitrary_INTERP_FUNC: _bindgen_ty_29 = 6;
1313pub const PF_Arbitrary_COMPARE_FUNC: _bindgen_ty_29 = 7;
1314pub const PF_Arbitrary_PRINT_SIZE_FUNC: _bindgen_ty_29 = 8;
1315pub const PF_Arbitrary_PRINT_FUNC: _bindgen_ty_29 = 9;
1316pub const PF_Arbitrary_SCAN_FUNC: _bindgen_ty_29 = 10;
1317pub type _bindgen_ty_29 = ::std::os::raw::c_uint;
1318pub type PF_FunctionSelector = A_long;
1319pub const PF_ArbCompare_EQUAL: _bindgen_ty_30 = 0;
1320pub const PF_ArbCompare_LESS: _bindgen_ty_30 = 1;
1321pub const PF_ArbCompare_MORE: _bindgen_ty_30 = 2;
1322pub const PF_ArbCompare_NOT_EQUAL: _bindgen_ty_30 = 3;
1323pub type _bindgen_ty_30 = ::std::os::raw::c_uint;
1324pub type PF_ArbCompareResult = A_long;
1325pub const PF_ArbPrint_NONE: _bindgen_ty_31 = 0;
1326pub const PF_ArbPrint_ABBREVIATED: _bindgen_ty_31 = 1;
1327pub type _bindgen_ty_31 = ::std::os::raw::c_uint;
1328pub type PF_ArbPrintFlags = A_long;
1329#[repr(C)]
1330#[derive(Copy, Clone)]
1331pub struct PF_ArbParamsExtra {
1332    pub which_function: PF_FunctionSelector,
1333    pub id: A_short,
1334    pub padding: A_short,
1335    pub u: PF_ArbParamsExtra__bindgen_ty_1,
1336}
1337#[repr(C)]
1338#[derive(Copy, Clone)]
1339pub union PF_ArbParamsExtra__bindgen_ty_1 {
1340    pub new_func_params: PF_ArbParamsExtra__bindgen_ty_1__bindgen_ty_1,
1341    pub dispose_func_params: PF_ArbParamsExtra__bindgen_ty_1__bindgen_ty_2,
1342    pub copy_func_params: PF_ArbParamsExtra__bindgen_ty_1__bindgen_ty_3,
1343    pub flat_size_func_params: PF_ArbParamsExtra__bindgen_ty_1__bindgen_ty_4,
1344    pub flatten_func_params: PF_ArbParamsExtra__bindgen_ty_1__bindgen_ty_5,
1345    pub unflatten_func_params: PF_ArbParamsExtra__bindgen_ty_1__bindgen_ty_6,
1346    pub interp_func_params: PF_ArbParamsExtra__bindgen_ty_1__bindgen_ty_7,
1347    pub compare_func_params: PF_ArbParamsExtra__bindgen_ty_1__bindgen_ty_8,
1348    pub print_size_func_params: PF_ArbParamsExtra__bindgen_ty_1__bindgen_ty_9,
1349    pub print_func_params: PF_ArbParamsExtra__bindgen_ty_1__bindgen_ty_10,
1350    pub scan_func_params: PF_ArbParamsExtra__bindgen_ty_1__bindgen_ty_11,
1351}
1352#[repr(C)]
1353#[derive(Debug, Copy, Clone)]
1354pub struct PF_ArbParamsExtra__bindgen_ty_1__bindgen_ty_1 {
1355    pub refconPV: *mut ::std::os::raw::c_void,
1356    pub arbPH: *mut PF_ArbitraryH,
1357}
1358#[repr(C)]
1359#[derive(Debug, Copy, Clone)]
1360pub struct PF_ArbParamsExtra__bindgen_ty_1__bindgen_ty_2 {
1361    pub refconPV: *mut ::std::os::raw::c_void,
1362    pub arbH: PF_ArbitraryH,
1363}
1364#[repr(C)]
1365#[derive(Debug, Copy, Clone)]
1366pub struct PF_ArbParamsExtra__bindgen_ty_1__bindgen_ty_3 {
1367    pub refconPV: *mut ::std::os::raw::c_void,
1368    pub src_arbH: PF_ArbitraryH,
1369    pub dst_arbPH: *mut PF_ArbitraryH,
1370}
1371#[repr(C)]
1372#[derive(Debug, Copy, Clone)]
1373pub struct PF_ArbParamsExtra__bindgen_ty_1__bindgen_ty_4 {
1374    pub refconPV: *mut ::std::os::raw::c_void,
1375    pub arbH: PF_ArbitraryH,
1376    pub flat_data_sizePLu: *mut A_u_long,
1377}
1378#[repr(C)]
1379#[derive(Debug, Copy, Clone)]
1380pub struct PF_ArbParamsExtra__bindgen_ty_1__bindgen_ty_5 {
1381    pub refconPV: *mut ::std::os::raw::c_void,
1382    pub arbH: PF_ArbitraryH,
1383    pub buf_sizeLu: A_u_long,
1384    pub flat_dataPV: *mut ::std::os::raw::c_void,
1385}
1386#[repr(C)]
1387#[derive(Debug, Copy, Clone)]
1388pub struct PF_ArbParamsExtra__bindgen_ty_1__bindgen_ty_6 {
1389    pub refconPV: *mut ::std::os::raw::c_void,
1390    pub buf_sizeLu: A_u_long,
1391    pub flat_dataPV: *const ::std::os::raw::c_void,
1392    pub arbPH: *mut PF_ArbitraryH,
1393}
1394#[repr(C)]
1395#[derive(Debug, Copy, Clone)]
1396pub struct PF_ArbParamsExtra__bindgen_ty_1__bindgen_ty_7 {
1397    pub refconPV: *mut ::std::os::raw::c_void,
1398    pub left_arbH: PF_ArbitraryH,
1399    pub right_arbH: PF_ArbitraryH,
1400    pub tF: PF_FpLong,
1401    pub interpPH: *mut PF_ArbitraryH,
1402}
1403#[repr(C)]
1404#[derive(Debug, Copy, Clone)]
1405pub struct PF_ArbParamsExtra__bindgen_ty_1__bindgen_ty_8 {
1406    pub refconPV: *mut ::std::os::raw::c_void,
1407    pub a_arbH: PF_ArbitraryH,
1408    pub b_arbH: PF_ArbitraryH,
1409    pub compareP: *mut PF_ArbCompareResult,
1410}
1411#[repr(C)]
1412#[derive(Debug, Copy, Clone)]
1413pub struct PF_ArbParamsExtra__bindgen_ty_1__bindgen_ty_9 {
1414    pub refconPV: *mut ::std::os::raw::c_void,
1415    pub arbH: PF_ArbitraryH,
1416    pub print_sizePLu: *mut A_u_long,
1417}
1418#[repr(C)]
1419#[derive(Debug, Copy, Clone)]
1420pub struct PF_ArbParamsExtra__bindgen_ty_1__bindgen_ty_10 {
1421    pub refconPV: *mut ::std::os::raw::c_void,
1422    pub print_flags: PF_ArbPrintFlags,
1423    pub arbH: PF_ArbitraryH,
1424    pub print_sizeLu: A_u_long,
1425    pub print_bufferPC: *mut A_char,
1426}
1427#[repr(C)]
1428#[derive(Debug, Copy, Clone)]
1429pub struct PF_ArbParamsExtra__bindgen_ty_1__bindgen_ty_11 {
1430    pub refconPV: *mut ::std::os::raw::c_void,
1431    pub bufPC: *const A_char,
1432    pub bytes_to_scanLu: A_u_long,
1433    pub arbPH: *mut PF_ArbitraryH,
1434}
1435#[repr(C)]
1436#[derive(Debug, Copy, Clone)]
1437pub struct PF_UserChangedParamExtra {
1438    pub param_index: PF_ParamIndex,
1439}
1440#[repr(C)]
1441#[derive(Debug, Copy, Clone)]
1442pub struct PF_ImporterPrefsData {
1443    _unused: [u8; 0],
1444}
1445pub type PF_ImporterPrefsDataPtr = *mut PF_ImporterPrefsData;
1446#[repr(C)]
1447#[derive(Debug, Copy, Clone)]
1448pub struct PF_TranslateParamsToPrefsExtra {
1449    pub prefsPC: PF_ImporterPrefsDataPtr,
1450    pub prefs_sizeLu: A_u_long,
1451}
1452pub const PF_DepCheckType_NONE: _bindgen_ty_32 = 0;
1453pub const PF_DepCheckType_ALL_DEPENDENCIES: _bindgen_ty_32 = 1;
1454pub const PF_DepCheckType_MISSING_DEPENDENCIES: _bindgen_ty_32 = 2;
1455pub type _bindgen_ty_32 = ::std::os::raw::c_uint;
1456pub type PF_DepCheckType = A_long;
1457#[repr(C)]
1458#[derive(Debug, Copy, Clone)]
1459pub struct PF_ExtDependenciesExtra {
1460    pub check_type: PF_DepCheckType,
1461    pub dependencies_strH: PF_Handle,
1462}
1463#[repr(C)]
1464#[derive(Copy, Clone)]
1465pub union PF_ParamDefUnion {
1466    pub ld: PF_LayerDef,
1467    pub sd: PF_SliderDef,
1468    pub fd: PF_FixedSliderDef,
1469    pub ad: PF_AngleDef,
1470    pub bd: PF_CheckBoxDef,
1471    pub cd: PF_ColorDef,
1472    pub td: PF_PointDef,
1473    pub pd: PF_PopupDef,
1474    pub fs_d: PF_FloatSliderDef,
1475    pub arb_d: PF_ArbitraryDef,
1476    pub path_d: PF_PathDef,
1477    pub button_d: PF_ButtonDef,
1478    pub point3d_d: PF_Point3DDef,
1479}
1480pub const PF_PUI_NONE: _bindgen_ty_33 = 0;
1481pub const PF_PUI_TOPIC: _bindgen_ty_33 = 1;
1482pub const PF_PUI_CONTROL: _bindgen_ty_33 = 2;
1483pub const PF_PUI_STD_CONTROL_ONLY: _bindgen_ty_33 = 4;
1484pub const PF_PUI_NO_ECW_UI: _bindgen_ty_33 = 8;
1485pub const PF_PUI_ECW_SEPARATOR: _bindgen_ty_33 = 16;
1486pub const PF_PUI_DISABLED: _bindgen_ty_33 = 32;
1487pub const PF_PUI_DONT_ERASE_TOPIC: _bindgen_ty_33 = 64;
1488pub const PF_PUI_DONT_ERASE_CONTROL: _bindgen_ty_33 = 128;
1489pub const PF_PUI_RADIO_BUTTON: _bindgen_ty_33 = 256;
1490pub const PF_PUI_INVISIBLE: _bindgen_ty_33 = 512;
1491pub const PF_PUI_RESERVED: _bindgen_ty_33 = 1024;
1492#[doc = " Param UI Flags\n\nPF_PUI_TOPIC\n\nSet this flag if you handle PF_Cmd_EVENTs for the \"topic\" of\nthe parameter.  The \"topic\" is the portion of the param UI\nin the Effect Controls Window (ECW) that is still visible\nwhen the twirly-arrow is twirled up for that param.\n\nIf you set this flag, you must also set PF_OutFlag_CUSTOM_UI\nat PF_Cmd_GLOBAL_SETUP time.\n\nPF_PUI_CONTROL\n\nSet this flag if you handle PF_Cmd_EVENTs for the control\narea in the ECW.  This is the area that becomes invisible\nwhen you twirl up a parameter's twirly arrow (and is the\nusual place to have your custom UI).\n\nIf you set this flag, you must also set PF_OutFlag_CUSTOM_UI\nat PF_Cmd_GLOBAL_SETUP time.\n\nPF_PUI_STD_CONTROL_ONLY\n\nSet this flag if you want the standard control only -- no\ndata stream will be associated with this parameter, and\nthus no keyframes (nothing appears in the Time Layout window\nfor this type of param).\n\nYou might want to do this to control something in your\nsequence data with a standard control.  Or in your arb\ndata, or custom UI in the comp window, or to group-set multiple\nother controls.\n\n\nThis flag can be used with these param types:\nPF_Param_SLIDER, PF_Param_FIX_SLIDER, PF_Param_ANGLE,\nPF_Param_CHECKBOX, PF_Param_COLOR, PF_Param_POINT,\nPF_Param_POPUP, PF_Param_FLOAT_SLIDER, PF_Param_POINT_3D\n\nbut NOT:\n\nPF_Param_CUSTOM, PF_Param_NO_DATA,\nPF_Param_LAYER, PF_Param_ARBITRARY_DATA, PF_Param_PATH\n\nIf you set this flag, you must also set PF_ParamFlag_SUPERVISE\n(otherwise you would never find out about value changes, and\nthe setting would never be used for anything).  This flag\ndoes not require the setting of PF_OutFlag_CUSTOM_UI.\n\nIf you want a standard control for PF_Param_ARBITRARY_DATA,\njust add one (or more) using PF_PUI_STD_CONTROL_ONLY with\nthe supported param types, and then when handling\nPF_Cmd_USER_CHANGED_PARAM you can modify your arb data.\n\n\nPF_PUI_NO_ECW_UI\n\nSet this flag if you want no UI to appear in the Effect Controls\nWindow.  Presumably, you are setting the value of the parameter\nthrough some other method (e.g. custom UI in the comp window,\nor while handling PF_Cmd_USER_CHANGED_PARAM for a different param with\nPF_ParamFlag_SUPERVISE set). In AE, this doesn't affect keyframe\nvisibility in the timeline. In PPro it does remove the entire row,\nso you won't see keyframes.\n\nPF_PUI_ECW_SEPARATOR\n\nSet this flag if you'd like a thick line above this parameter\nin the effect control window. This is provided so that parameters\ncan be grouped visually, if needed (without adding groups).\nThis flag can be changed at runtime through the PF_UpdateParamUI()\nmethod. Not used by AE.\n\nPF_PUI_INVISIBLE\n\nSet this flag if you'd like the parameter to be initially invisible. This is useful\nif your effect needs hidden data parameters that affect rendering.\n\nPremiere only: The parameter can later be made visible by clearing the flag\nduring the PF_UpdateParamUI() callback."]
1493pub type _bindgen_ty_33 = ::std::os::raw::c_uint;
1494pub type PF_ParamUIFlags = A_long;
1495pub const PF_ChangeFlag_NONE: _bindgen_ty_34 = 0;
1496pub const PF_ChangeFlag_CHANGED_VALUE: _bindgen_ty_34 = 1;
1497pub const PF_ChangeFlag_RESERVED: _bindgen_ty_34 = 2;
1498pub const PF_ChangeFlag_SET_TO_VARY: _bindgen_ty_34 = 4;
1499pub const PF_ChangeFlag_SET_TO_CONSTANT: _bindgen_ty_34 = 8;
1500#[doc = " PF_ChangeFlags\n\nNew in AE 4.0 (although PF_ChangeFlag_CHANGED_VALUE was implemented\nby setting low bit of old changed field).\n\nPF_ChangeFlag_CHANGED_VALUE\n\nSet this flag for each param whose value you change when handling\na PF_Cmd_USER_CHANGED_PARAM or specific PF_Cmd_EVENT events\n(PF_Event_DO_CLICK, PF_Event_DRAG, & PF_Event_KEYDOWN). If set during\nPF_Cmd_EVENT, but sure to also set PF_EO_HANDLED_EVENT before returning.\nYou can change as many params as you want at once.  These changes are undoable and\nre-doable by the user.  Exception: do not set PF_PUI_STD_CONTROL_ONLY\nparam values with this flag, use PF_UpdateParamUI() instead.\n\nPF_ChangeFlag_SET_TO_VARY\n\nNot yet implemented.  Same restrictions as PF_ChangeFlag_CHANGED_VALUE.\n\nPF_ChangeFlag_SET_TO_CONSTANT\n\nNot yet implemented.  Same restrictions as PF_ChangeFlag_CHANGED_VALUE."]
1501pub type _bindgen_ty_34 = ::std::os::raw::c_uint;
1502pub type PF_ChangeFlags = A_long;
1503#[doc = " ParamDef"]
1504#[repr(C)]
1505#[derive(Copy, Clone)]
1506pub struct PF_ParamDef {
1507    pub uu: PF_ParamDef__bindgen_ty_1,
1508    pub ui_flags: PF_ParamUIFlags,
1509    pub ui_width: A_short,
1510    pub ui_height: A_short,
1511    pub param_type: PF_ParamType,
1512    pub name_do_not_use_directly: [A_char; 32usize],
1513    pub flags: PF_ParamFlags,
1514    pub unused: A_long,
1515    pub u: PF_ParamDefUnion,
1516}
1517#[repr(C)]
1518#[derive(Copy, Clone)]
1519pub union PF_ParamDef__bindgen_ty_1 {
1520    pub id: A_long,
1521    pub change_flags: PF_ChangeFlags,
1522}
1523#[doc = " ParamDef"]
1524pub type PF_ParamDefPtr = *mut PF_ParamDef;
1525#[doc = " ParamDef"]
1526pub type PF_ParamDefH = *mut *mut PF_ParamDef;
1527pub type PF_ParamList = *mut *mut PF_ParamDef;
1528pub const PF_ChannelMask_ALPHA: _bindgen_ty_35 = 1;
1529pub const PF_ChannelMask_RED: _bindgen_ty_35 = 2;
1530pub const PF_ChannelMask_GREEN: _bindgen_ty_35 = 4;
1531pub const PF_ChannelMask_BLUE: _bindgen_ty_35 = 8;
1532pub const PF_ChannelMask_ARGB: _bindgen_ty_35 = 15;
1533#[doc = " -------------------- Smart Render Interface Constants and Structures --------------------\n\nPF_Cmd_SMART_PRE_RENDER gets a PF_PreRenderExtra struct in the extra pointer, and must\nfill out the \"output\" field before returning.\n\nPF_Cmd_SMART_RENDER gets a PF_SmartRenderExtra struct in the extra pointer, if pre-render was invoked.\n"]
1534pub type _bindgen_ty_35 = ::std::os::raw::c_uint;
1535pub type PF_ChannelMask = A_long;
1536pub const PF_GPU_Framework_NONE: _bindgen_ty_36 = 0;
1537pub const PF_GPU_Framework_OPENCL: _bindgen_ty_36 = 1;
1538pub const PF_GPU_Framework_METAL: _bindgen_ty_36 = 2;
1539pub const PF_GPU_Framework_CUDA: _bindgen_ty_36 = 3;
1540pub const PF_GPU_Framework_DIRECTX: _bindgen_ty_36 = 4;
1541pub type _bindgen_ty_36 = ::std::os::raw::c_uint;
1542pub type PF_GPU_Framework = A_long;
1543#[repr(C)]
1544#[derive(Debug, Copy, Clone)]
1545pub struct PF_RenderRequest {
1546    pub rect: PF_LRect,
1547    pub field: PF_Field,
1548    pub channel_mask: PF_ChannelMask,
1549    pub preserve_rgb_of_zero_alpha: PF_Boolean,
1550    pub unused: [::std::os::raw::c_char; 3usize],
1551    pub reserved: [A_long; 4usize],
1552}
1553#[repr(C)]
1554#[derive(Debug, Copy, Clone)]
1555pub struct PF_PreRenderInput {
1556    pub output_request: PF_RenderRequest,
1557    pub bitdepth: ::std::os::raw::c_short,
1558    pub gpu_data: *const ::std::os::raw::c_void,
1559    pub what_gpu: PF_GPU_Framework,
1560    pub device_index: A_u_long,
1561}
1562pub type PF_DeletePreRenderDataFunc =
1563    ::std::option::Option<unsafe extern "C" fn(pre_render_data: *mut ::std::os::raw::c_void)>;
1564pub const PF_RenderOutputFlag_RETURNS_EXTRA_PIXELS: _bindgen_ty_37 = 1;
1565pub const PF_RenderOutputFlag_GPU_RENDER_POSSIBLE: _bindgen_ty_37 = 2;
1566pub const PF_RenderOutputFlag_RESERVED1: _bindgen_ty_37 = 4;
1567pub type _bindgen_ty_37 = ::std::os::raw::c_uint;
1568pub type PF_RenderOutputFlags = ::std::os::raw::c_short;
1569#[repr(C)]
1570#[derive(Debug, Copy, Clone)]
1571pub struct PF_PreRenderOutput {
1572    pub result_rect: PF_LRect,
1573    pub max_result_rect: PF_LRect,
1574    pub solid: PF_Boolean,
1575    pub reserved: PF_Boolean,
1576    pub flags: PF_RenderOutputFlags,
1577    pub pre_render_data: *mut ::std::os::raw::c_void,
1578    pub delete_pre_render_data_func: PF_DeletePreRenderDataFunc,
1579}
1580#[repr(C)]
1581#[derive(Debug, Copy, Clone)]
1582pub struct PF_CheckoutResult {
1583    pub result_rect: PF_LRect,
1584    pub max_result_rect: PF_LRect,
1585    pub par: PF_RationalScale,
1586    pub solid: PF_Boolean,
1587    pub reservedB: [PF_Boolean; 3usize],
1588    pub ref_width: A_long,
1589    pub ref_height: A_long,
1590    pub reserved: [A_long; 6usize],
1591}
1592#[repr(C)]
1593#[derive(Debug, Copy, Clone)]
1594pub struct PF_PreRenderCallbacks {
1595    pub checkout_layer: ::std::option::Option<
1596        unsafe extern "C" fn(
1597            effect_ref: PF_ProgPtr,
1598            index: PF_ParamIndex,
1599            checkout_idL: A_long,
1600            req: *const PF_RenderRequest,
1601            what_time: A_long,
1602            time_step: A_long,
1603            time_scale: A_u_long,
1604            checkout_result: *mut PF_CheckoutResult,
1605        ) -> PF_Err,
1606    >,
1607    pub GuidMixInPtr: ::std::option::Option<
1608        unsafe extern "C" fn(
1609            effect_ref: PF_ProgPtr,
1610            buf_sizeLu: A_u_long,
1611            buf: *const ::std::os::raw::c_void,
1612        ) -> PF_Err,
1613    >,
1614}
1615#[repr(C)]
1616#[derive(Debug, Copy, Clone)]
1617pub struct PF_PreRenderExtra {
1618    pub input: *mut PF_PreRenderInput,
1619    pub output: *mut PF_PreRenderOutput,
1620    pub cb: *mut PF_PreRenderCallbacks,
1621}
1622#[repr(C)]
1623#[derive(Debug, Copy, Clone)]
1624pub struct PF_SmartRenderInput {
1625    pub output_request: PF_RenderRequest,
1626    pub bitdepth: ::std::os::raw::c_short,
1627    pub pre_render_data: *mut ::std::os::raw::c_void,
1628    pub gpu_data: *const ::std::os::raw::c_void,
1629    pub what_gpu: PF_GPU_Framework,
1630    pub device_index: A_u_long,
1631}
1632#[repr(C)]
1633#[derive(Debug, Copy, Clone)]
1634pub struct PF_SmartRenderCallbacks {
1635    pub checkout_layer_pixels: ::std::option::Option<
1636        unsafe extern "C" fn(
1637            effect_ref: PF_ProgPtr,
1638            checkout_idL: A_long,
1639            pixels: *mut *mut PF_EffectWorld,
1640        ) -> PF_Err,
1641    >,
1642    pub checkin_layer_pixels: ::std::option::Option<
1643        unsafe extern "C" fn(effect_ref: PF_ProgPtr, checkout_idL: A_long) -> PF_Err,
1644    >,
1645    pub checkout_output: ::std::option::Option<
1646        unsafe extern "C" fn(effect_ref: PF_ProgPtr, output: *mut *mut PF_EffectWorld) -> PF_Err,
1647    >,
1648}
1649#[repr(C)]
1650#[derive(Debug, Copy, Clone)]
1651pub struct PF_SmartRenderExtra {
1652    pub input: *mut PF_SmartRenderInput,
1653    pub cb: *mut PF_SmartRenderCallbacks,
1654}
1655#[doc = " -------------------- GPU Setup/Setdown Constants and Structures --------------------\n\nPF_Cmd_GPU_DEVICE_SETUP gets a PF_GPUDeviceSetupExtra struct in the extra pointer.\n\nPF_Cmd_GPU_DEVICE_SETDOWN gets a PF_GPUDeviceSetdownExtra struct in the extra pointer.\n"]
1656#[repr(C)]
1657#[derive(Debug, Copy, Clone)]
1658pub struct PF_GPUDeviceSetupInput {
1659    pub what_gpu: PF_GPU_Framework,
1660    pub device_index: A_u_long,
1661}
1662#[repr(C)]
1663#[derive(Debug, Copy, Clone)]
1664pub struct PF_GPUDeviceSetupOutput {
1665    pub gpu_data: *mut ::std::os::raw::c_void,
1666}
1667#[repr(C)]
1668#[derive(Debug, Copy, Clone)]
1669pub struct PF_GPUDeviceSetupExtra {
1670    pub input: *mut PF_GPUDeviceSetupInput,
1671    pub output: *mut PF_GPUDeviceSetupOutput,
1672}
1673#[repr(C)]
1674#[derive(Debug, Copy, Clone)]
1675pub struct PF_GPUDeviceSetdownInput {
1676    pub gpu_data: *mut ::std::os::raw::c_void,
1677    pub what_gpu: PF_GPU_Framework,
1678    pub device_index: A_u_long,
1679}
1680#[repr(C)]
1681#[derive(Debug, Copy, Clone)]
1682pub struct PF_GPUDeviceSetdownExtra {
1683    pub input: *mut PF_GPUDeviceSetdownInput,
1684}
1685#[doc = " -------------------- Interaction Callbacks --------------------\n\nEffects modules use callbacks to define their parameters.  When invoked,\nthey will be given the parameters values at the particular invocation\nmoment, but some effects may need to ask for the parameter values at\nother times (notably of layer parameters for, say, a visual echo).\n\nWhile running, effects modules are responsible for checking for user\ninterrupts.  This checking can be done with either the abort callback,\nwhich will return a value indicating if the user has taken any action,\nor with the progress callback, which performs user interrupt checking\njust like the abort callback, and also displays a progress display.\n\nAt the bottom of this section are macros for accessing these callback\nroutines.  The first parameter to each macro is a pointer to a PF_InData\nstructure, defined below.  This pointer will be passed to your effect.\n\ncheckout_param\nThe checkout_param callback allows you to inquire param values at times\nother than the current one, and allows you to access layer params other\nthan the default input layer and the output layer.  See the notes on the\n\"params\" structure at the end of this file.  The PF_ParamDef you must\nspecify cannot point into the \"params\" array; the memory must exist else-\nwhere, such as on the stack.\n\nIf you checkout a layer parameter and the layer popup is currently set\nto <none>, the return value will be filled with zeros.  You can check\nthe \"data\" pointer.  If it is NULL, then the layer param is set to <none>\nand you should do something like faking an all alpha zero layer or some\nsuch nonsense.  IMPORTANT: Due to 13.5 threading changes, checking out\na layer param that is not <none> inside of UPDATE_PARAMS_UI will return\na frame with black pixels to avoid render requests and possible deadlock.\nIn other selectors the actual render will be triggered as it did before.\n\ncheckin_param\nWhen you have called checkout_param, you must call checkin_param when you\nare done, so After Effects can clean up after itself and you.  This is\nvery important for smooth functioning and also to save memory where possible.\nOnce checked in, the fields in the PF_ParamDef will no longer be valid.\n\nadd_param\nWhen given the PARAMS_SETUP message, the effect will generally make a\nseries of calls to the add_param routine to define the interface that\nthe After Effects user will see.  See the PF_ParamDefs defined above.\nCurrently you can only add params at the end, and only at PARAMS_SETUP\ntime.\n\nabort\nPeriodically, you should check if the user wants to interrupt the\ncurrent processing.  The abort proc here will return non-zero if\nthe effects module should suspend its current processing.  If you\ncall this routine and it returns a value other than zero, you should\nreturn that value when your effect returns.  That will let us know\nif the effect completed rendering or not.\n\nprogress\nAlternatively, you may wish to display a progress bar while you are\nprocessing the image.  This routine combines the abort proc user\ninterrupt checking with code that will display a progress bar for\nyou.  The current and total params represent a fraction (current/total)\nthat describes how far you are along in your processing.  Current\nshould equal total when done.  Additionally, this routine will return\nnon-zero if you should suspend/abort your current processing.  You\nshould probably try not to call this too frequently (e.g. at every pixel).\nIt is better to call it, say, once per scanline, unless your filter is\nreally really slow."]
1686pub type PF_CustomUIInfo = _PF_CustomUIInfo;
1687#[repr(C)]
1688#[derive(Debug, Copy, Clone)]
1689pub struct PF_InteractCallbacks {
1690    pub checkout_param: ::std::option::Option<
1691        unsafe extern "C" fn(
1692            effect_ref: PF_ProgPtr,
1693            index: PF_ParamIndex,
1694            what_time: A_long,
1695            time_step: A_long,
1696            time_scale: A_u_long,
1697            param: *mut PF_ParamDef,
1698        ) -> PF_Err,
1699    >,
1700    pub checkin_param: ::std::option::Option<
1701        unsafe extern "C" fn(effect_ref: PF_ProgPtr, param: *mut PF_ParamDef) -> PF_Err,
1702    >,
1703    pub add_param: ::std::option::Option<
1704        unsafe extern "C" fn(
1705            effect_ref: PF_ProgPtr,
1706            index: PF_ParamIndex,
1707            def: PF_ParamDefPtr,
1708        ) -> PF_Err,
1709    >,
1710    pub abort: ::std::option::Option<unsafe extern "C" fn(effect_ref: PF_ProgPtr) -> PF_Err>,
1711    pub progress: ::std::option::Option<
1712        unsafe extern "C" fn(effect_ref: PF_ProgPtr, current: A_long, total: A_long) -> PF_Err,
1713    >,
1714    pub register_ui: ::std::option::Option<
1715        unsafe extern "C" fn(effect_ref: PF_ProgPtr, cust_info: *mut PF_CustomUIInfo) -> PF_Err,
1716    >,
1717    pub checkout_layer_audio: ::std::option::Option<
1718        unsafe extern "C" fn(
1719            effect_ref: PF_ProgPtr,
1720            index: PF_ParamIndex,
1721            start_time: A_long,
1722            duration: A_long,
1723            time_scale: A_u_long,
1724            rate: PF_UFixed,
1725            bytes_per_sample: A_long,
1726            num_channels: A_long,
1727            fmt_signed: A_long,
1728            audio: *mut PF_LayerAudio,
1729        ) -> PF_Err,
1730    >,
1731    pub checkin_layer_audio: ::std::option::Option<
1732        unsafe extern "C" fn(effect_ref: PF_ProgPtr, audio: PF_LayerAudio) -> PF_Err,
1733    >,
1734    pub get_audio_data: ::std::option::Option<
1735        unsafe extern "C" fn(
1736            effect_ref: PF_ProgPtr,
1737            audio: PF_LayerAudio,
1738            data0: *mut PF_SndSamplePtr,
1739            num_samples0: *mut A_long,
1740            rate0: *mut PF_UFixed,
1741            bytes_per_sample0: *mut A_long,
1742            num_channels0: *mut A_long,
1743            fmt_signed0: *mut A_long,
1744        ) -> PF_Err,
1745    >,
1746    pub reserved_str: [*mut ::std::os::raw::c_void; 3usize],
1747    pub reserved: [*mut ::std::os::raw::c_void; 10usize],
1748}
1749#[doc = " -------------------- Effect Parameter Blocks --------------------\n\nThe effects module itself is invoked with input and output blocks\nof parameters for various messages that it needs to handle.  The\noutput block (values returned from the effect to the program) and\nthe input block (values provided by the program for the edification\nof the effect) are defined here.  Discussion follows.\n\nThe Output Block\n\nMost fields of the output block are only examined for changes after\ncertain commands have been sent to the effect module.  Each field\nbelow describes when it will be checked.\n\nmy_version\nThis is the version number of your plug-in effect, not to be confused\nwith the version of the plug-in specification. Please set this\nat PF_Cmd_GLOBAL_SETUP.\n\nname\nThis lets you override the name of the effect in the Time Layout and\nin the Effect Controls windows when the effect is applied. The name from\nthe PiPL resource is always used in the Effect menu. This field is\nchecked after PF_Cmd_SEQUENCE_SETUP. You will almost always leave\nthis field empty.\n\nglobal_data\nThis is a Handle that you can allocate at PF_Cmd_GLOBAL_SETUP\ntime.  It will be passed back to you verbatim in the input\nparameter block for use later on.  In PF_Cmd_GLOBAL_SETUP,\nthe global_data field in the Input Block may be set to a\nflattened version of your global data, in which case you should\nunflatten it, free the flat version, and set this field to the\nunflattened new global data.\n\nIt will be locked & unlocked for you automatically like sequence_data.\n\nnum_params\nThe calling application will sanity check the num_params field\nvs the times add_param is called.  The implicit main\nlayer parameter MUST be included in the parameter count.  Use the\nnum_params value in the in_data as a starting value (it will\ninclude the implicit layer parameter).\nSet this field when you get PF_Cmd_PARAMS_SETUP.\n\nsequence_data\nThis is a Handle that you can allocate (using PF_NEW_HANDLE)\nat PF_Cmd_SEQUENCE_SETUP time.\nIt will be passed back to you in the input parameter block\nfor later use.\n\nWARNING: this handle is always locked for you before your plugin\nis called, and the lock-state is restored on the way out.  If you\nhave arbitrary data, your plugin can be called re-entrantly, so\nif you have a lock/unlock inside your plugin, the handle will\nbecome unlocked prematurely -- instead simply depend on the host\nto lock & unlock your sequence data for you.  Of course during\nPF_Cmd_SEQUENCE_SETUP the handle you allocate will not be\nlocked unless you explicitly lock it at that time.\n\nThe contents of this handle will be written out to\ndisk.  If other handles\thang off this block, you must specify the\nPF_OutFlag_SEQUENCE_DATA_NEEDS_FLATTENING out flag when you get\nthe PF_Cmd_GLOBAL_SETUP command.  You will then receive the\nPF_Cmd_SEQUENCE_FLATTEN before your handle is written out.  At that\ntime, you should create a flat version of the handle contents,\nfree the old unflat handle, and set this field to the flattened\nversion of the handle.  Or after disposing, simply set to NULL\nand nothing will be written to disk.\n\nYou will receive a PF_Cmd_SEQUENCE_RESETUP\ncall to unflatten this handle (as well as to adjust the sequence\ndata to altered frame rates, etc).  If your\nsequence data can be flat or unflat, you should store its current\nstate along with the other data, and check that value in Resetup.\nIf the handle is flat, Resetup should unflatten it, free the flat\nhandle, and set this field to the new unflat usable handle.\n\nflat_sdata_size\nOBSOLETE.  Turns out, it was never used.  Since the handle\nset in sequence_data must be allocated using PF_NEW_HANDLE,\nthe host can find out the size of the handle without asking.\n\nframe_data\nThis is a Handle that you can allocated at PF_Cmd_FRAME_SETUP\ntime.  It will be passed to you in the input parameters, as\nwith the global_data and the sequence_data.  This will not\nbe written out to disk.  There is no particular use for this.\nSet this field in PF_Cmd_FRAME_SETUP, if you must.\n\nIt will be locked & unlocked for you like sequence_data.\n\nwidth\nheight\norigin\nYou set these fields at PF_Cmd_FRAME_SETUP time to indicate\nthat the output image will be larger than the input image.\nYou\tshould set width and height to the size that you want the\noutput buffer to be.  Set origin to the place that the\npoint (0,0) in the input should map to in the new larger\noutput.  Thus, if you created a 5 pixel drop shadow up and left,\nyou would set origin to (5, 5).\n\nout_flags\nout_flags2\nThis field can be set to an OR-ed combination of the PF_OutFlag\nand PF_OutFlag2 constants (don't mix them up!) to communicate\nthings to After Effects.  This will be checked after every\ncommand, but only certain flags are relevant at given times.\nCheck the PF_OutFlag constants above.\n\nreturn_msg\nThis is a message string (in C string format) that will be\ninterpreted as either an error message or a useful display\nmessage (for instance, for handling PF_Cmd_ABOUT).  Fill\nthis string with a message you want After Effects to report\nto the user for you.  It will come up in a simple dialog\nwith an OK button.  Set the first byte of this string to '\\0'\nto indicate no string -- it is set that way upon entry.  This\nfield is examined after every PF_Cmd.\n\nThe Input Block\n\nMany parts of the input block are actually structures defined elsewhere\nin this file, or in the companion file AE_EffectCB.h.  See the documentation\nwhere those structures are defined to understand their contents.\nWith any given PF_Cmd, only certain fields in the Input Block will\nhave valid values.  Each field described below tells when it is valid.\n\nin_flags\nin_flags2\nThese are various flags indicating some boolean value to\nthe effect module.  This is a combination of PF_InFlag values\nOR-ed together.  This is set for all commands, though most\nflags make sense only at certain times.  Usually this is\njust a copy of the PiPL global flags.  See PF_OutFlags and\nPF_OutFlags2 above.\n\ninter\nThis is a structure defined above containing callbacks\nrelated to user interaction.  This has callbacks to add parameters,\nto check if the user has interrupted the effect, to display\na progress bar, and to inquire parameter values outside of the\ncurrent moment.  See the doc above.  When each callback can\nvalidly be executed is defined above.\n\nutils\nThis is a pointer to a block of useful graphical and mathematical\ncallbacks provided for the effects module.  The documentation\nfor this block is in the AE_EffectCB.h file.  This is a void *,\nwhich can be confusing.  See AE_EffectCB.h for macros to use these\nfunctions.  This pointer will be defined at all times.\n\neffect_ref\nThis is a opaque piece of data that needs to be passed to\nmost of the various callback routines.  Don't worry about it.\n\nquality\nThis is set to one of the PF_Quality constants above to\ndescribe the Quality currently chosen by the user.  Ideally,\nyour effect should do a faster version with LO quality, and\na better, \"broadcast\"-able version with HI quality.  Also,\nsome of the utility callbacks perform differently between\nLO and HI quality.  This is defined for all PF_Cmds related\nto SEQUENCE and FRAME (obviously, including RENDER).\n\nversion\nThis is the version of the effects spec with which you are\nbeing invoked.  This will not be defined until after GLOBAL_SETUP.\n\nserial_num\nThis is the serial number of the invoking application.\n\nappl_id\nThis is the identifier of the invoking application.  It will\nbe the creator A_long of the app.\n\nfreq\nThis is an estimate of the frequency with which you should\ncall the abort check callback.  You can ignore this.\n\nnum_params\nThis is set to the number of input parameters you are receiving.\n\nwhat_cpu\nThis is set to the return value from Gestalt asking what sort\nof CPU your machine has.  If your effect requires a certain\ntype of CPU it should check this value and return an error\nindicating that it cannot run.  After Effects only runs on\n68020s and higher, so don't sweat it if you require that.\n\nwhat_fpu\nThis is set to the return value from Gestalt asking what sort\nof FPU your machine has.  If you require a floating point unit,\nyou should return the OutFlag indicating that in GLOBAL_SETUP,\nand then do not execute your floating point code if this value\nis set to 0 -- just do a PF_COPY of the input to the output when\nyou get the PF_Cmd_RENDER.  See OutFlag description above.\n\ncurrent_time\nThis is the time of the current frame.  It will be set in RENDER.\nThe number of the current frame is current_time / time_step.\nAll effects sequences start at time 0.\n\ntime_step\nThis is the time difference to the next or last frame.  This value\nand current_time and total_time are in units given by time_scale.\nThe time between frames is time_step, not 1.  This value will be 0\nat SEQUENCE_SETUP if it is not constant for all frames.  It will\nbe set correctly in the FRAME calls, even if it's not constant.\n\ntotal_time\nThis is the amount of time from the start to the end of the\nimage sequence on which this effect is being invoked.  The total\nnumber of frames is total_time / time_step.\n\ntime_scale\nThese are the units that current_time, time_step, and total_time\nare in.  See QuickTime for an explanation of how these time values work.\n\nwidth\nheight\nThese are the size of the input image. As Stoney Ballard points out,\nthese are certainly NOT the same as the\twidth and height fields in param[0],\nbut rather reflect the full-resolution dimensions of the input layer.\n\nfield\nWill be set to PF_Field_UPPER or PF_Field_LOWER during field-rendering\nif certain conditions are met -- for example: effect must have\nPF_OutFlag_PIX_INDEPENDENT set, and the layer to which the effect is\napplied must not be rotated, scaled nor positioned on a subpixel.\nYou can safely ignore the setting of this field, but might be able to\noptimize things by only processing the specified field.\n\nextent_hint\nThis is a rectangle that indicates the intersection of the visible\nportions of the input and output layers.  For an effect that does\nnot do a geometric distortion of the image, copying just this rectangle\nfrom the source image to the destination image is sufficient to copy\nall the image data that the user will see.  This can speed up effects\nvery much.  Just iterate over only this rectangle of pixels.\n\noutput_origin_x\noutput_origin_y\nThese fields correspond to the origin returned in the out_data at\nPF_Cmd_FRAME_SETUP time. They indicate the position of the top left\ncorner of the input buffer in the output buffer.\n\ndownsample_x\ndownsample_y\nFor speed, the user may have asked for only every Nth vertical or\nhorizontal pixel to be actually rendered by After Effects.  The width\nand height of all effect parameters (including layers) will be\nautomatically adjusted to compensate, but the effect needs to know\nthe downsampling factors to correctly interpret scalar parameters\n(ie. sliders) that represent pixel distances in the image.\nDownsample factors will be in the range 1 to 999+.  This is set in\nSEQUENCE_SETUP or RESETUP as the case may be. As of PF_PLUG_IN_VERSION 2,\nthis factor is a rational quantity.\n\nglobal_data\nsequence_data\nframe_data\nThese fields are copied from the out data on previous invocations\nand set here for you to access as you need them.  They will only\nbe set if they have been allocated during previous commands.\n\npre_effect_source_origin_x\npre_effect_source_origin_y\nThese fields are the origin of the source image in the input buffer. They are set\nonly during frame calls (PF_Cmd_FRAME_SETUP, PF_Cmd_RENDER, PF_Cmd_FRAME_SETDOWN).\nThey will be non-zero only if one or more effects that preceded this effect\non the same layer resized the output buffer (i.e. specified that the output\nimage will be larger or smaller than the input image)."]
1750#[repr(C)]
1751#[derive(Copy, Clone)]
1752pub struct PF_OutData {
1753    pub my_version: A_u_long,
1754    pub name: [A_char; 32usize],
1755    pub global_data: PF_Handle,
1756    pub num_params: A_long,
1757    pub sequence_data: PF_Handle,
1758    pub flat_sdata_size: A_long,
1759    pub frame_data: PF_Handle,
1760    pub width: A_long,
1761    pub height: A_long,
1762    pub origin: PF_Point,
1763    pub out_flags: PF_OutFlags,
1764    pub return_msg: [A_char; 256usize],
1765    pub start_sampL: A_long,
1766    pub dur_sampL: A_long,
1767    pub dest_snd: PF_SoundWorld,
1768    pub out_flags2: PF_OutFlags2,
1769}
1770pub type A_AppID = A_long;
1771#[repr(C)]
1772#[derive(Debug, Copy, Clone)]
1773pub struct PF_InData {
1774    pub inter: PF_InteractCallbacks,
1775    pub utils: *mut _PF_UtilCallbacks,
1776    pub effect_ref: PF_ProgPtr,
1777    pub quality: PF_Quality,
1778    pub version: PF_SpecVersion,
1779    pub serial_num: A_long,
1780    pub appl_id: A_AppID,
1781    pub num_params: A_long,
1782    pub reserved: A_long,
1783    pub what_cpu: A_long,
1784    pub what_fpu: A_long,
1785    pub current_time: A_long,
1786    pub time_step: A_long,
1787    pub total_time: A_long,
1788    pub local_time_step: A_long,
1789    pub time_scale: A_u_long,
1790    pub field: PF_Field,
1791    pub shutter_angle: PF_Fixed,
1792    pub width: A_long,
1793    pub height: A_long,
1794    pub extent_hint: PF_Rect,
1795    pub output_origin_x: A_long,
1796    pub output_origin_y: A_long,
1797    pub downsample_x: PF_RationalScale,
1798    pub downsample_y: PF_RationalScale,
1799    pub pixel_aspect_ratio: PF_RationalScale,
1800    pub in_flags: PF_InFlags,
1801    pub global_data: PF_Handle,
1802    pub sequence_data: PF_Handle,
1803    pub frame_data: PF_Handle,
1804    pub start_sampL: A_long,
1805    pub dur_sampL: A_long,
1806    pub total_sampL: A_long,
1807    pub src_snd: PF_SoundWorld,
1808    pub pica_basicP: *mut SPBasicSuite,
1809    pub pre_effect_source_origin_x: A_long,
1810    pub pre_effect_source_origin_y: A_long,
1811    pub shutter_phase: PF_Fixed,
1812}
1813#[doc = " -------------------- Effect Prototype --------------------\n\nThe effects module provides a single entry point corresponding to the\nbelow prototype through which all messages are dispatched to the\nappropriate code.\n\nThe cmd parameter is one of the PF_Cmd enumeration defined above.\nAll commands are discussed at that enumeration.  There are a lot.\n\nThe in_data and out_data parameters are respectively, PF_InData and\nPF_OutData blocks defined and described above.  The in_data contains\nread only information that the effect can use.  The out_data contains\nwrite only information through which the effect communicates back to\nthe calling program.  The descriptions above give a lot more detail.\n\nThe params list is an array of pointers to variably sized PF_ParamDef\nstructs.  This is in typical Unix-like argv format, where the last item\npoints to NULL.  The entries in this array describe the current settings\nof the parameters to the effect.  Params[0] is the layer to which the\neffect has been applied and is a PF_LayerDef param.  Other parameters\nare defined by the effect.\n\nThe output param is also a PF_LayerDef param, like params[0], and is\nan output buffer into which your effect should write the new contents\nof the layer.\n\nA brief explanation about parameter passing to effects:\n\nWhen you are invoked to Render, all \"params\" array entries will be filled\nwith their value at the current time, except for layer params other than\nthe default input layer parameter (ie. param[0]).  To get other layer param\nvalues, you must call the checkout_param callback.  (See callbacks above.)\n\nIn other words, on PF_Cmd_RENDER, params[0] will be a valid ready-to-use\nPF_EffectWorld and output will be a valid ready-to-use PF_EffectWorld.  Other params that\nare not layer params (i.e. sliders, popups, etc.) will be ready-to-use, filled\nwith their value at the current time; you do not need to call checkout_param for\nthem.  However, other params (besides [0]) that are layer params will NOT be\nfilled in correctly -- you must make a checkout_param callback to get them.\n\nANY param which you call checkout_param on, you must also call checkin_param\nbefore you exit.  If not, After Effects will automatically erase your effect\nmodule code resource from the users hard disk, along with any files that contain\nyour name or any nicknames you have.  Sorry.  Calling checkin_param is important!"]
1814pub type PF_FilterProc = ::std::option::Option<
1815    unsafe extern "C" fn(
1816        cmd: PF_Cmd,
1817        in_data: *mut PF_InData,
1818        out_data: *mut PF_OutData,
1819        params: PF_ParamList,
1820        output: *mut PF_LayerDef,
1821        extra: *mut ::std::os::raw::c_void,
1822    ) -> PF_Err,
1823>;
1824#[repr(C)]
1825#[derive(Debug, Copy, Clone)]
1826pub struct _DRAWBOT_DrawRef {
1827    _unused: [u8; 0],
1828}
1829pub type DRAWBOT_DrawRef = *mut _DRAWBOT_DrawRef;
1830#[repr(C)]
1831#[derive(Debug, Copy, Clone)]
1832pub struct _DRAWBOT_SupplierRef {
1833    _unused: [u8; 0],
1834}
1835pub type DRAWBOT_SupplierRef = *mut _DRAWBOT_SupplierRef;
1836#[repr(C)]
1837#[derive(Debug, Copy, Clone)]
1838pub struct _DRAWBOT_SurfaceRef {
1839    _unused: [u8; 0],
1840}
1841pub type DRAWBOT_SurfaceRef = *mut _DRAWBOT_SurfaceRef;
1842#[repr(C)]
1843#[derive(Debug, Copy, Clone)]
1844pub struct _DRAWBOT_PenRef {
1845    _unused: [u8; 0],
1846}
1847pub type DRAWBOT_PenRef = *mut _DRAWBOT_PenRef;
1848#[repr(C)]
1849#[derive(Debug, Copy, Clone)]
1850pub struct _DRAWBOT_PathRef {
1851    _unused: [u8; 0],
1852}
1853pub type DRAWBOT_PathRef = *mut _DRAWBOT_PathRef;
1854#[repr(C)]
1855#[derive(Debug, Copy, Clone)]
1856pub struct _DRAWBOT_BrushRef {
1857    _unused: [u8; 0],
1858}
1859pub type DRAWBOT_BrushRef = *mut _DRAWBOT_BrushRef;
1860#[repr(C)]
1861#[derive(Debug, Copy, Clone)]
1862pub struct _DRAWBOT_ImageRef {
1863    _unused: [u8; 0],
1864}
1865pub type DRAWBOT_ImageRef = *mut _DRAWBOT_ImageRef;
1866#[repr(C)]
1867#[derive(Debug, Copy, Clone)]
1868pub struct _DRAWBOT_FontRef {
1869    _unused: [u8; 0],
1870}
1871pub type DRAWBOT_FontRef = *mut _DRAWBOT_FontRef;
1872#[repr(C)]
1873#[derive(Debug, Copy, Clone)]
1874pub struct _DRAWBOT_ObjectRef {
1875    _unused: [u8; 0],
1876}
1877pub type DRAWBOT_ObjectRef = *mut _DRAWBOT_ObjectRef;
1878#[repr(C)]
1879#[derive(Debug, Copy, Clone)]
1880pub struct DRAWBOT_ColorRGBA {
1881    pub red: f32,
1882    pub green: f32,
1883    pub blue: f32,
1884    pub alpha: f32,
1885}
1886#[repr(C)]
1887#[derive(Debug, Copy, Clone)]
1888pub struct DRAWBOT_PointF32 {
1889    pub x: f32,
1890    pub y: f32,
1891}
1892#[repr(C)]
1893#[derive(Debug, Copy, Clone)]
1894pub struct DRAWBOT_RectF32 {
1895    pub left: f32,
1896    pub top: f32,
1897    pub width: f32,
1898    pub height: f32,
1899}
1900#[repr(C)]
1901#[derive(Debug, Copy, Clone)]
1902pub struct DRAWBOT_Rect32 {
1903    pub left: ::std::os::raw::c_int,
1904    pub top: ::std::os::raw::c_int,
1905    pub width: ::std::os::raw::c_int,
1906    pub height: ::std::os::raw::c_int,
1907}
1908#[repr(C)]
1909#[derive(Debug, Copy, Clone)]
1910pub struct DRAWBOT_MatrixF32 {
1911    pub mat: [[f32; 3usize]; 3usize],
1912}
1913pub const kDRAWBOT_FillType_EvenOdd: _bindgen_ty_39 = 0;
1914pub const kDRAWBOT_FillType_Winding: _bindgen_ty_39 = 1;
1915pub const kDRAWBOT_FillType_Default: _bindgen_ty_39 = 1;
1916pub type _bindgen_ty_39 = ::std::os::raw::c_uint;
1917pub type DRAWBOT_FillType = ::std::os::raw::c_int;
1918pub const kDRAWBOT_PixelLayout_24RGB: _bindgen_ty_40 = 0;
1919pub const kDRAWBOT_PixelLayout_24BGR: _bindgen_ty_40 = 1;
1920pub const kDRAWBOT_PixelLayout_32RGB: _bindgen_ty_40 = 2;
1921pub const kDRAWBOT_PixelLayout_32BGR: _bindgen_ty_40 = 3;
1922pub const kDRAWBOT_PixelLayout_32ARGB_Straight: _bindgen_ty_40 = 4;
1923pub const kDRAWBOT_PixelLayout_32ARGB_Premul: _bindgen_ty_40 = 5;
1924pub const kDRAWBOT_PixelLayout_32BGRA_Straight: _bindgen_ty_40 = 6;
1925pub const kDRAWBOT_PixelLayout_32BGRA_Premul: _bindgen_ty_40 = 7;
1926pub type _bindgen_ty_40 = ::std::os::raw::c_uint;
1927pub type DRAWBOT_PixelLayout = ::std::os::raw::c_int;
1928pub const kDRAWBOT_TextAlignment_Left: _bindgen_ty_41 = 0;
1929pub const kDRAWBOT_TextAlignment_Center: _bindgen_ty_41 = 1;
1930pub const kDRAWBOT_TextAlignment_Right: _bindgen_ty_41 = 2;
1931pub const kDRAWBOT_TextAlignment_Default: _bindgen_ty_41 = 0;
1932pub type _bindgen_ty_41 = ::std::os::raw::c_uint;
1933pub type DRAWBOT_TextAlignment = ::std::os::raw::c_int;
1934pub const kDRAWBOT_TextTruncation_None: _bindgen_ty_42 = 0;
1935pub const kDRAWBOT_TextTruncation_End: _bindgen_ty_42 = 1;
1936pub const kDRAWBOT_TextTruncation_EndEllipsis: _bindgen_ty_42 = 2;
1937pub const kDRAWBOT_TextTruncation_PathEllipsis: _bindgen_ty_42 = 3;
1938pub type _bindgen_ty_42 = ::std::os::raw::c_uint;
1939pub type DRAWBOT_TextTruncation = ::std::os::raw::c_int;
1940pub const kDRAWBOT_InterpolationPolicy_None: _bindgen_ty_43 = 0;
1941pub const kDRAWBOT_InterpolationPolicy_Med: _bindgen_ty_43 = 1;
1942pub const kDRAWBOT_InterpolationPolicy_High: _bindgen_ty_43 = 2;
1943pub const kDRAWBOT_InterpolationPolicy_Default: _bindgen_ty_43 = 0;
1944pub type _bindgen_ty_43 = ::std::os::raw::c_uint;
1945pub type DRAWBOT_InterpolationPolicy = ::std::os::raw::c_int;
1946pub const kDRAWBOT_AntiAliasPolicy_None: _bindgen_ty_44 = 0;
1947pub const kDRAWBOT_AntiAliasPolicy_Med: _bindgen_ty_44 = 1;
1948pub const kDRAWBOT_AntiAliasPolicy_High: _bindgen_ty_44 = 2;
1949pub const kDRAWBOT_AntiAliasPolicy_Default: _bindgen_ty_44 = 0;
1950pub type _bindgen_ty_44 = ::std::os::raw::c_uint;
1951pub type DRAWBOT_AntiAliasPolicy = ::std::os::raw::c_int;
1952pub const PF_CustomEFlag_NONE: _bindgen_ty_45 = 0;
1953pub const PF_CustomEFlag_COMP: _bindgen_ty_45 = 1;
1954pub const PF_CustomEFlag_LAYER: _bindgen_ty_45 = 2;
1955pub const PF_CustomEFlag_EFFECT: _bindgen_ty_45 = 4;
1956pub const PF_CustomEFlag_PREVIEW: _bindgen_ty_45 = 8;
1957#[doc = " PF_CustomFlags\n\n kinds of events and actions the custom parameter type might require\n"]
1958pub type _bindgen_ty_45 = ::std::os::raw::c_uint;
1959pub type PF_CustomEventFlags = A_long;
1960pub const PF_Window_NONE: _bindgen_ty_46 = -1;
1961pub const PF_Window_COMP: _bindgen_ty_46 = 0;
1962pub const PF_Window_LAYER: _bindgen_ty_46 = 1;
1963pub const PF_Window_EFFECT: _bindgen_ty_46 = 2;
1964pub const PF_Window_PREVIEW: _bindgen_ty_46 = 3;
1965pub type _bindgen_ty_46 = ::std::os::raw::c_int;
1966pub type PF_WindowType = A_long;
1967pub const PF_Event_NONE: _bindgen_ty_47 = -1;
1968pub const PF_Event_NEW_CONTEXT: _bindgen_ty_47 = 0;
1969pub const PF_Event_ACTIVATE: _bindgen_ty_47 = 1;
1970pub const PF_Event_DO_CLICK: _bindgen_ty_47 = 2;
1971pub const PF_Event_DRAG: _bindgen_ty_47 = 3;
1972pub const PF_Event_DRAW: _bindgen_ty_47 = 4;
1973pub const PF_Event_DEACTIVATE: _bindgen_ty_47 = 5;
1974pub const PF_Event_CLOSE_CONTEXT: _bindgen_ty_47 = 6;
1975pub const PF_Event_IDLE: _bindgen_ty_47 = 7;
1976pub const PF_Event_KEYDOWN_OBSOLETE: _bindgen_ty_47 = 8;
1977pub const PF_Event_ADJUST_CURSOR: _bindgen_ty_47 = 9;
1978pub const PF_Event_KEYDOWN: _bindgen_ty_47 = 10;
1979pub const PF_Event_MOUSE_EXITED: _bindgen_ty_47 = 11;
1980pub const PF_Event_NUM_EVENTS: _bindgen_ty_47 = 12;
1981pub type _bindgen_ty_47 = ::std::os::raw::c_int;
1982pub type PF_EventType = A_long;
1983pub const PF_Cursor_NONE: _bindgen_ty_48 = 0;
1984pub const PF_Cursor_CUSTOM: _bindgen_ty_48 = 1;
1985pub const PF_Cursor_ARROW: _bindgen_ty_48 = 2;
1986pub const PF_Cursor_HOLLOW_ARROW: _bindgen_ty_48 = 3;
1987pub const PF_Cursor_WATCH_N_WAIT: _bindgen_ty_48 = 4;
1988pub const PF_Cursor_MAGNIFY: _bindgen_ty_48 = 5;
1989pub const PF_Cursor_MAGNIFY_PLUS: _bindgen_ty_48 = 6;
1990pub const PF_Cursor_MAGNIFY_MINUS: _bindgen_ty_48 = 7;
1991pub const PF_Cursor_CROSSHAIRS: _bindgen_ty_48 = 8;
1992pub const PF_Cursor_CROSS_RECT: _bindgen_ty_48 = 9;
1993pub const PF_Cursor_CROSS_OVAL: _bindgen_ty_48 = 10;
1994pub const PF_Cursor_CROSS_ROTATE: _bindgen_ty_48 = 11;
1995pub const PF_Cursor_PAN: _bindgen_ty_48 = 12;
1996pub const PF_Cursor_EYEDROPPER: _bindgen_ty_48 = 13;
1997pub const PF_Cursor_HAND: _bindgen_ty_48 = 14;
1998pub const PF_Cursor_PEN: _bindgen_ty_48 = 15;
1999pub const PF_Cursor_PEN_ADD: _bindgen_ty_48 = 16;
2000pub const PF_Cursor_PEN_DELETE: _bindgen_ty_48 = 17;
2001pub const PF_Cursor_PEN_CLOSE: _bindgen_ty_48 = 18;
2002pub const PF_Cursor_PEN_DRAG: _bindgen_ty_48 = 19;
2003pub const PF_Cursor_PEN_CORNER: _bindgen_ty_48 = 20;
2004pub const PF_Cursor_RESIZE_VERTICAL: _bindgen_ty_48 = 21;
2005pub const PF_Cursor_RESIZE_HORIZONTAL: _bindgen_ty_48 = 22;
2006pub const PF_Cursor_FINGER_POINTER: _bindgen_ty_48 = 23;
2007pub const PF_Cursor_SCALE_HORIZ: _bindgen_ty_48 = 24;
2008pub const PF_Cursor_SCALE_DIAG_LR: _bindgen_ty_48 = 25;
2009pub const PF_Cursor_SCALE_VERT: _bindgen_ty_48 = 26;
2010pub const PF_Cursor_SCALE_DIAG_UR: _bindgen_ty_48 = 27;
2011pub const PF_Cursor_ROT_TOP: _bindgen_ty_48 = 28;
2012pub const PF_Cursor_ROT_TOP_RIGHT: _bindgen_ty_48 = 29;
2013pub const PF_Cursor_ROT_RIGHT: _bindgen_ty_48 = 30;
2014pub const PF_Cursor_ROT_BOT_RIGHT: _bindgen_ty_48 = 31;
2015pub const PF_Cursor_ROT_BOTTOM: _bindgen_ty_48 = 32;
2016pub const PF_Cursor_ROT_BOT_LEFT: _bindgen_ty_48 = 33;
2017pub const PF_Cursor_ROT_LEFT: _bindgen_ty_48 = 34;
2018pub const PF_Cursor_ROT_TOP_LEFT: _bindgen_ty_48 = 35;
2019pub const PF_Cursor_DRAG_CENTER: _bindgen_ty_48 = 36;
2020pub const PF_Cursor_COPY: _bindgen_ty_48 = 37;
2021pub const PF_Cursor_ALIAS: _bindgen_ty_48 = 38;
2022pub const PF_Cursor_CONTEXT: _bindgen_ty_48 = 39;
2023pub const PF_Cursor_SLIP_EDIT: _bindgen_ty_48 = 40;
2024pub const PF_Cursor_CAMERA_ORBIT_CAMERA: _bindgen_ty_48 = 41;
2025pub const PF_Cursor_CAMERA_PAN_CAMERA: _bindgen_ty_48 = 42;
2026pub const PF_Cursor_CAMERA_DOLLY_CAMERA: _bindgen_ty_48 = 43;
2027pub const PF_Cursor_ROTATE_X: _bindgen_ty_48 = 44;
2028pub const PF_Cursor_ROTATE_Y: _bindgen_ty_48 = 45;
2029pub const PF_Cursor_ROTATE_Z: _bindgen_ty_48 = 46;
2030pub const PF_Cursor_ARROW_X: _bindgen_ty_48 = 47;
2031pub const PF_Cursor_ARROW_Y: _bindgen_ty_48 = 48;
2032pub const PF_Cursor_ARROW_Z: _bindgen_ty_48 = 49;
2033pub const PF_Cursor_SCISSORS: _bindgen_ty_48 = 50;
2034pub const PF_Cursor_FAT_EYEDROPPER: _bindgen_ty_48 = 51;
2035pub const PF_Cursor_FINGER_POINTER_SCRUB: _bindgen_ty_48 = 52;
2036pub const PF_Cursor_HORZ_I_BEAM: _bindgen_ty_48 = 53;
2037pub const PF_Cursor_VERT_I_BEAM: _bindgen_ty_48 = 54;
2038pub const PF_Cursor_HORZ_BOX_I_BEAM: _bindgen_ty_48 = 55;
2039pub const PF_Cursor_VERT_BOX_I_BEAM: _bindgen_ty_48 = 56;
2040pub const PF_Cursor_I_BEAM_0: _bindgen_ty_48 = 57;
2041pub const PF_Cursor_I_BEAM_11_25: _bindgen_ty_48 = 58;
2042pub const PF_Cursor_I_BEAM_22_5: _bindgen_ty_48 = 59;
2043pub const PF_Cursor_I_BEAM_33_75: _bindgen_ty_48 = 60;
2044pub const PF_Cursor_I_BEAM_45: _bindgen_ty_48 = 61;
2045pub const PF_Cursor_I_BEAM_56_25: _bindgen_ty_48 = 62;
2046pub const PF_Cursor_I_BEAM_67_5: _bindgen_ty_48 = 63;
2047pub const PF_Cursor_I_BEAM_78_75: _bindgen_ty_48 = 64;
2048pub const PF_Cursor_I_BEAM_90: _bindgen_ty_48 = 65;
2049pub const PF_Cursor_I_BEAM_101_25: _bindgen_ty_48 = 66;
2050pub const PF_Cursor_I_BEAM_112_5: _bindgen_ty_48 = 67;
2051pub const PF_Cursor_I_BEAM_123_75: _bindgen_ty_48 = 68;
2052pub const PF_Cursor_I_BEAM_135: _bindgen_ty_48 = 69;
2053pub const PF_Cursor_I_BEAM_146_25: _bindgen_ty_48 = 70;
2054pub const PF_Cursor_I_BEAM_157_5: _bindgen_ty_48 = 71;
2055pub const PF_Cursor_I_BEAM_168_75: _bindgen_ty_48 = 72;
2056pub const PF_Cursor_CROSSHAIRS_PICKUP: _bindgen_ty_48 = 73;
2057pub const PF_Cursor_ARROW_SELECTOR: _bindgen_ty_48 = 74;
2058pub const PF_Cursor_LAYER_MOVE: _bindgen_ty_48 = 75;
2059pub const PF_Cursor_MOVE_START_MARGIN: _bindgen_ty_48 = 76;
2060pub const PF_Cursor_MOVE_END_MARGIN: _bindgen_ty_48 = 77;
2061pub const PF_Cursor_SOLID_ARROW: _bindgen_ty_48 = 78;
2062pub const PF_Cursor_HOLLOW_ARROW_PLUS: _bindgen_ty_48 = 79;
2063pub const PF_Cursor_BRUSH_CENTER: _bindgen_ty_48 = 80;
2064pub const PF_Cursor_CLONE_SOURCE: _bindgen_ty_48 = 81;
2065pub const PF_Cursor_CLONE_SOURCE_OFFSET: _bindgen_ty_48 = 82;
2066pub const PF_Cursor_HOLLOW_LAYER_MOVE: _bindgen_ty_48 = 83;
2067pub const PF_Cursor_MOVE_TRACK_SEARCH_REGION: _bindgen_ty_48 = 84;
2068pub const PF_Cursor_MOVE_TRACK_ATTACH_POINT: _bindgen_ty_48 = 85;
2069pub const PF_Cursor_COLOR_CUBE_CROSS_SECTION: _bindgen_ty_48 = 86;
2070pub const PF_Cursor_PEN_CORNER_ROTOBEZ_TENSION: _bindgen_ty_48 = 87;
2071pub const PF_Cursor_PIN: _bindgen_ty_48 = 88;
2072pub const PF_Cursor_PIN_ADD: _bindgen_ty_48 = 89;
2073pub const PF_Cursor_MESH_ADD: _bindgen_ty_48 = 90;
2074pub const PF_Cursor_MARQUEE: _bindgen_ty_48 = 91;
2075pub const PF_Cursor_CROSS_ROUNDED_RECT: _bindgen_ty_48 = 92;
2076pub const PF_Cursor_CROSS_POLYGON: _bindgen_ty_48 = 93;
2077pub const PF_Cursor_CROSS_STAR: _bindgen_ty_48 = 94;
2078pub const PF_Cursor_PIN_STARCH: _bindgen_ty_48 = 95;
2079pub const PF_Cursor_PIN_OVERLAP: _bindgen_ty_48 = 96;
2080pub const PF_Cursor_STOPWATCH: _bindgen_ty_48 = 97;
2081pub const PF_Cursor_DRAG_DOT: _bindgen_ty_48 = 98;
2082pub const PF_Cursor_DRAG_CIRCLE: _bindgen_ty_48 = 99;
2083pub const PF_Cursor_DIRECT_SELECT: _bindgen_ty_48 = 100;
2084pub const PF_Cursor_DRAG_COPY_MOVE: _bindgen_ty_48 = 101;
2085pub const PF_Cursor_DRAG_COPY_ROTATE: _bindgen_ty_48 = 102;
2086pub const PF_Cursor_CAMERA_MAYA: _bindgen_ty_48 = 103;
2087pub const PF_Cursor_RESIZE_HORIZONTAL_LEFT: _bindgen_ty_48 = 104;
2088pub const PF_Cursor_RESIZE_HORIZONTAL_RIGHT: _bindgen_ty_48 = 105;
2089pub const PF_Cursor_FEATHER: _bindgen_ty_48 = 106;
2090pub const PF_Cursor_FEATHER_ADD: _bindgen_ty_48 = 107;
2091pub const PF_Cursor_FEATHER_DELETE: _bindgen_ty_48 = 108;
2092pub const PF_Cursor_FEATHER_MOVE: _bindgen_ty_48 = 109;
2093pub const PF_Cursor_FEATHER_TENSION: _bindgen_ty_48 = 110;
2094pub const PF_Cursor_FEATHER_MARQUEE: _bindgen_ty_48 = 111;
2095pub const PF_Cursor_LASSO_ARROW: _bindgen_ty_48 = 112;
2096pub const PF_Cursor_DRAG_NO_DROP: _bindgen_ty_48 = 113;
2097pub const PF_Cursor_DRAG_COPY: _bindgen_ty_48 = 114;
2098pub const PF_Cursor_DRAG_LINK: _bindgen_ty_48 = 115;
2099pub const PF_Cursor_PIN_BEND: _bindgen_ty_48 = 116;
2100pub const PF_Cursor_PIN_ADVANCED: _bindgen_ty_48 = 117;
2101pub const PF_Cursor_CAMERA_ORBIT_CURSOR: _bindgen_ty_48 = 118;
2102pub const PF_Cursor_CAMERA_ORBIT_SCENE: _bindgen_ty_48 = 119;
2103pub const PF_Cursor_CAMERA_PAN_CURSOR: _bindgen_ty_48 = 120;
2104pub const PF_Cursor_CAMERA_DOLLY_TOWARDS_CURSOR: _bindgen_ty_48 = 121;
2105pub const PF_Cursor_CAMERA_DOLLY_TO_CURSOR: _bindgen_ty_48 = 122;
2106pub const PF_MAX_CURSOR_PLUS_ONE: _bindgen_ty_48 = 123;
2107pub type _bindgen_ty_48 = ::std::os::raw::c_uint;
2108pub type PF_CursorType = A_long;
2109pub const PF_Mod_NONE: _bindgen_ty_49 = 0;
2110pub const PF_Mod_CMD_CTRL_KEY: _bindgen_ty_49 = 256;
2111pub const PF_Mod_SHIFT_KEY: _bindgen_ty_49 = 512;
2112pub const PF_Mod_CAPS_LOCK_KEY: _bindgen_ty_49 = 1024;
2113pub const PF_Mod_OPT_ALT_KEY: _bindgen_ty_49 = 2048;
2114pub const PF_Mod_MAC_CONTROL_KEY: _bindgen_ty_49 = 4096;
2115pub type _bindgen_ty_49 = ::std::os::raw::c_uint;
2116pub type PF_Modifiers = A_long;
2117#[repr(C)]
2118#[derive(Copy, Clone)]
2119pub struct PF_AdjustCursorEventInfo {
2120    pub screen_point: PF_Point,
2121    pub modifiers: PF_Modifiers,
2122    pub set_cursor: PF_CursorType,
2123}
2124#[repr(C)]
2125#[derive(Copy, Clone)]
2126pub struct PF_DoClickEventInfo {
2127    pub when: A_u_long,
2128    pub screen_point: PF_Point,
2129    pub num_clicks: A_long,
2130    pub modifiers: PF_Modifiers,
2131    pub continue_refcon: [A_intptr_t; 4usize],
2132    pub send_drag: PF_Boolean,
2133    pub last_time: PF_Boolean,
2134}
2135#[repr(C)]
2136#[derive(Debug, Copy, Clone)]
2137pub struct PF_DrawEventInfo {
2138    pub update_rect: PF_UnionableRect,
2139    pub depth: A_long,
2140}
2141#[repr(C)]
2142#[derive(Copy, Clone)]
2143pub struct PF_KeyDownEventObsolete {
2144    pub when: A_u_long,
2145    pub screen_point: PF_Point,
2146    pub char_code: A_long,
2147    pub key_code: A_long,
2148    pub modifiers: PF_Modifiers,
2149}
2150pub type PF_KeyCode = A_u_long;
2151pub type PF_ControlCode = A_u_short;
2152#[repr(C)]
2153#[derive(Copy, Clone)]
2154pub struct PF_KeyDownEvent {
2155    pub when: A_u_long,
2156    pub screen_point: PF_Point,
2157    pub keycode: PF_KeyCode,
2158    pub modifiers: PF_Modifiers,
2159}
2160pub const PF_KEYCODE_FLAG_Printable: _bindgen_ty_50 = -2147483648;
2161pub const PF_KEYCODE_FLAG_Extended: _bindgen_ty_50 = 1073741824;
2162pub type _bindgen_ty_50 = ::std::os::raw::c_int;
2163pub const PF_ControlCode_Unknown: _bindgen_ty_51 = 65535;
2164pub const PF_ControlCode_Space: _bindgen_ty_51 = 1;
2165pub const PF_ControlCode_Backspace: _bindgen_ty_51 = 2;
2166pub const PF_ControlCode_Tab: _bindgen_ty_51 = 3;
2167pub const PF_ControlCode_Return: _bindgen_ty_51 = 4;
2168pub const PF_ControlCode_Enter: _bindgen_ty_51 = 5;
2169pub const PF_ControlCode_Escape: _bindgen_ty_51 = 6;
2170pub const PF_ControlCode_F1: _bindgen_ty_51 = 7;
2171pub const PF_ControlCode_F2: _bindgen_ty_51 = 8;
2172pub const PF_ControlCode_F3: _bindgen_ty_51 = 9;
2173pub const PF_ControlCode_F4: _bindgen_ty_51 = 10;
2174pub const PF_ControlCode_F5: _bindgen_ty_51 = 11;
2175pub const PF_ControlCode_F6: _bindgen_ty_51 = 12;
2176pub const PF_ControlCode_F7: _bindgen_ty_51 = 13;
2177pub const PF_ControlCode_F8: _bindgen_ty_51 = 14;
2178pub const PF_ControlCode_F9: _bindgen_ty_51 = 15;
2179pub const PF_ControlCode_F10: _bindgen_ty_51 = 16;
2180pub const PF_ControlCode_F11: _bindgen_ty_51 = 17;
2181pub const PF_ControlCode_F12: _bindgen_ty_51 = 18;
2182pub const PF_ControlCode_F13: _bindgen_ty_51 = 19;
2183pub const PF_ControlCode_F14: _bindgen_ty_51 = 20;
2184pub const PF_ControlCode_F15: _bindgen_ty_51 = 21;
2185pub const PF_ControlCode_F16: _bindgen_ty_51 = 22;
2186pub const PF_ControlCode_F17: _bindgen_ty_51 = 23;
2187pub const PF_ControlCode_F18: _bindgen_ty_51 = 24;
2188pub const PF_ControlCode_F19: _bindgen_ty_51 = 25;
2189pub const PF_ControlCode_F20: _bindgen_ty_51 = 26;
2190pub const PF_ControlCode_F21: _bindgen_ty_51 = 27;
2191pub const PF_ControlCode_F22: _bindgen_ty_51 = 28;
2192pub const PF_ControlCode_F23: _bindgen_ty_51 = 29;
2193pub const PF_ControlCode_F24: _bindgen_ty_51 = 30;
2194pub const PF_ControlCode_PrintScreen: _bindgen_ty_51 = 31;
2195pub const PF_ControlCode_ScrollLock: _bindgen_ty_51 = 32;
2196pub const PF_ControlCode_Pause: _bindgen_ty_51 = 33;
2197pub const PF_ControlCode_Insert: _bindgen_ty_51 = 34;
2198pub const PF_ControlCode_Delete: _bindgen_ty_51 = 35;
2199pub const PF_ControlCode_Home: _bindgen_ty_51 = 36;
2200pub const PF_ControlCode_End: _bindgen_ty_51 = 37;
2201pub const PF_ControlCode_PageUp: _bindgen_ty_51 = 38;
2202pub const PF_ControlCode_PageDown: _bindgen_ty_51 = 39;
2203pub const PF_ControlCode_Help: _bindgen_ty_51 = 40;
2204pub const PF_ControlCode_Clear: _bindgen_ty_51 = 41;
2205pub const PF_ControlCode_Left: _bindgen_ty_51 = 42;
2206pub const PF_ControlCode_Right: _bindgen_ty_51 = 43;
2207pub const PF_ControlCode_Up: _bindgen_ty_51 = 44;
2208pub const PF_ControlCode_Down: _bindgen_ty_51 = 45;
2209pub const PF_ControlCode_NumLock: _bindgen_ty_51 = 46;
2210pub const PF_ControlCode_Command: _bindgen_ty_51 = 47;
2211pub const PF_ControlCode_Option: _bindgen_ty_51 = 48;
2212pub const PF_ControlCode_Alt: _bindgen_ty_51 = 48;
2213pub const PF_ControlCode_Control: _bindgen_ty_51 = 49;
2214pub const PF_ControlCode_Shift: _bindgen_ty_51 = 50;
2215pub const PF_ControlCode_CapsLock: _bindgen_ty_51 = 51;
2216pub const PF_ControlCode_ContextMenu: _bindgen_ty_51 = 52;
2217pub type _bindgen_ty_51 = ::std::os::raw::c_uint;
2218#[repr(C)]
2219#[derive(Copy, Clone)]
2220pub union PF_EventUnion {
2221    pub do_click: PF_DoClickEventInfo,
2222    pub draw: PF_DrawEventInfo,
2223    pub key_down: PF_KeyDownEvent,
2224    pub adjust_cursor: PF_AdjustCursorEventInfo,
2225}
2226#[repr(C)]
2227#[derive(Debug, Copy, Clone)]
2228pub struct _PF_ContextRefcon {
2229    _unused: [u8; 0],
2230}
2231pub type PF_ContextRefcon = *mut _PF_ContextRefcon;
2232#[repr(C)]
2233#[derive(Debug, Copy, Clone)]
2234pub struct PF_Context {
2235    pub magic: A_u_long,
2236    pub w_type: PF_WindowType,
2237    pub reserved_flt: PF_ContextRefcon,
2238    pub plugin_state: [A_intptr_t; 4usize],
2239    pub reserved_drawref: DRAWBOT_DrawRef,
2240    pub reserved_paneP: *mut ::std::os::raw::c_void,
2241    pub reserved_job_manageP: *mut ::std::os::raw::c_void,
2242}
2243pub type PF_ContextPtr = *mut PF_Context;
2244pub type PF_ContextH = *mut *mut PF_Context;
2245pub const PF_StylusTool_PenTip: PF_StylusTool = 0;
2246pub const PF_StylusTool_PenEraser: PF_StylusTool = 1;
2247pub type PF_StylusTool = ::std::os::raw::c_uint;
2248#[repr(C)]
2249#[derive(Debug, Copy, Clone)]
2250pub struct PF_StylusEventInfo {
2251    pub stylus_tiltxF: A_FpShort,
2252    pub stylus_tiltyF: A_FpShort,
2253    pub stylus_pressureF: A_FpShort,
2254    pub stylus_wheelF: A_FpShort,
2255}
2256#[repr(C)]
2257#[derive(Copy, Clone)]
2258pub struct PF_PointerEventInfo {
2259    pub when_secondsF: A_FpLong,
2260    pub screen_point: PF_Point,
2261    pub num_clicksS: A_short,
2262    pub mod_keysL: A_long,
2263    pub stylus_tool: PF_StylusTool,
2264    pub stylus_extra_dataB: PF_Boolean,
2265    pub stylus_extra_data: PF_StylusEventInfo,
2266}
2267#[repr(C)]
2268#[derive(Debug, Copy, Clone)]
2269pub struct PF_EventCallbacks {
2270    pub refcon: *mut ::std::os::raw::c_void,
2271    pub layer_to_comp: ::std::option::Option<
2272        unsafe extern "C" fn(
2273            refcon: *mut ::std::os::raw::c_void,
2274            context: PF_ContextH,
2275            curr_time: A_long,
2276            time_scale: A_long,
2277            pt: *mut PF_FixedPoint,
2278        ) -> PF_Err,
2279    >,
2280    pub comp_to_layer: ::std::option::Option<
2281        unsafe extern "C" fn(
2282            refcon: *mut ::std::os::raw::c_void,
2283            context: PF_ContextH,
2284            curr_time: A_long,
2285            time_scale: A_long,
2286            pt: *mut PF_FixedPoint,
2287        ) -> PF_Err,
2288    >,
2289    pub get_comp2layer_xform: ::std::option::Option<
2290        unsafe extern "C" fn(
2291            refcon: *mut ::std::os::raw::c_void,
2292            context: PF_ContextH,
2293            curr_time: A_long,
2294            time_scale: A_long,
2295            exists: *mut A_long,
2296            c2l: *mut PF_FloatMatrix,
2297        ) -> PF_Err,
2298    >,
2299    pub get_layer2comp_xform: ::std::option::Option<
2300        unsafe extern "C" fn(
2301            refcon: *mut ::std::os::raw::c_void,
2302            context: PF_ContextH,
2303            curr_time: A_long,
2304            time_scale: A_long,
2305            l2c: *mut PF_FloatMatrix,
2306        ) -> PF_Err,
2307    >,
2308    pub source_to_frame: ::std::option::Option<
2309        unsafe extern "C" fn(
2310            refcon: *mut ::std::os::raw::c_void,
2311            context: PF_ContextH,
2312            pt: *mut PF_FixedPoint,
2313        ) -> PF_Err,
2314    >,
2315    pub frame_to_source: ::std::option::Option<
2316        unsafe extern "C" fn(
2317            refcon: *mut ::std::os::raw::c_void,
2318            context: PF_ContextH,
2319            pt: *mut PF_FixedPoint,
2320        ) -> PF_Err,
2321    >,
2322    pub info_draw_color: ::std::option::Option<
2323        unsafe extern "C" fn(refcon: *mut ::std::os::raw::c_void, color: PF_Pixel) -> PF_Err,
2324    >,
2325    pub info_draw_text: ::std::option::Option<
2326        unsafe extern "C" fn(
2327            refcon: *mut ::std::os::raw::c_void,
2328            text1Z0: *const A_char,
2329            text2Z0: *const A_char,
2330        ) -> PF_Err,
2331    >,
2332}
2333pub type PF_EventCallbacksPtr = *mut PF_EventCallbacks;
2334pub const PF_EA_NONE: _bindgen_ty_52 = 0;
2335pub const PF_EA_PARAM_TITLE: _bindgen_ty_52 = 1;
2336pub const PF_EA_CONTROL: _bindgen_ty_52 = 2;
2337pub type _bindgen_ty_52 = ::std::os::raw::c_uint;
2338pub type PF_EffectArea = A_long;
2339#[repr(C)]
2340#[derive(Debug, Copy, Clone)]
2341pub struct PF_EffectWindowInfo {
2342    pub index: PF_ParamIndex,
2343    pub area: PF_EffectArea,
2344    pub current_frame: PF_UnionableRect,
2345    pub param_title_frame: PF_UnionableRect,
2346    pub horiz_offset: A_long,
2347}
2348pub const PF_EO_NONE: _bindgen_ty_53 = 0;
2349pub const PF_EO_HANDLED_EVENT: _bindgen_ty_53 = 1;
2350pub const PF_EO_ALWAYS_UPDATE: _bindgen_ty_53 = 2;
2351pub const PF_EO_NEVER_UPDATE: _bindgen_ty_53 = 4;
2352pub const PF_EO_UPDATE_NOW: _bindgen_ty_53 = 8;
2353pub type _bindgen_ty_53 = ::std::os::raw::c_uint;
2354pub type PF_EventOutFlags = A_long;
2355pub const PF_EI_NONE: _bindgen_ty_54 = 0;
2356pub const PF_EI_DONT_DRAW: _bindgen_ty_54 = 1;
2357pub type _bindgen_ty_54 = ::std::os::raw::c_uint;
2358pub type PF_EventInFlags = A_long;
2359#[repr(C)]
2360#[derive(Debug, Copy, Clone)]
2361pub struct PF_ItemWindowInfo {
2362    pub port_rect: PF_UnionableRect,
2363}
2364#[repr(C)]
2365#[derive(Copy, Clone)]
2366pub union PF_WindowUnion {
2367    pub effect_win: PF_EffectWindowInfo,
2368    pub item_win: PF_ItemWindowInfo,
2369}
2370#[repr(C)]
2371#[derive(Copy, Clone)]
2372pub struct PF_EventExtra {
2373    pub contextH: PF_ContextH,
2374    pub e_type: PF_EventType,
2375    pub u: PF_EventUnion,
2376    pub effect_win: PF_EffectWindowInfo,
2377    pub cbs: PF_EventCallbacks,
2378    pub evt_in_flags: PF_EventInFlags,
2379    pub evt_out_flags: PF_EventOutFlags,
2380}
2381pub const PF_UIAlignment_NONE: _bindgen_ty_55 = 0;
2382pub const PF_UIAlignment_TOP: _bindgen_ty_55 = 1;
2383pub const PF_UIAlignment_LEFT: _bindgen_ty_55 = 2;
2384pub const PF_UIAlignment_BOTTOM: _bindgen_ty_55 = 4;
2385pub const PF_UIAlignment_RIGHT: _bindgen_ty_55 = 8;
2386pub type _bindgen_ty_55 = ::std::os::raw::c_uint;
2387pub type PF_UIAlignment = A_long;
2388#[repr(C)]
2389#[derive(Debug, Copy, Clone)]
2390pub struct _PF_CustomUIInfo {
2391    pub reserved: A_long,
2392    pub events: PF_CustomEventFlags,
2393    pub comp_ui_width: A_long,
2394    pub comp_ui_height: A_long,
2395    pub comp_ui_alignment: PF_UIAlignment,
2396    pub layer_ui_width: A_long,
2397    pub layer_ui_height: A_long,
2398    pub layer_ui_alignment: PF_UIAlignment,
2399    pub preview_ui_width: A_long,
2400    pub preview_ui_height: A_long,
2401    pub preview_ui_alignment: PF_UIAlignment,
2402}
2403pub type int32 = i32;
2404pub type uint8 = u8;
2405pub type SPBoolean = uint8;
2406pub type SPErr = int32;
2407#[doc = " @ingroup Suites\nThis suite provides basic memory management for PICA (the Adobe plug-in manager)\nand defines the basic functions for acquiring and releasing other suites.\n\nA suite consists of a list of function pointers. The application, or a\nplug-in that loads a suite, provides valid pointers when the suite is\nacquired. When a suite is not available, the pointers are set to the\naddress of the \\c #Undefined() function.\n\nDo not attempt to acquire a suite (other than the \\c #SPBlocksSuite)\nin response to a PICA access (\\c #kSPAccessCaller) or property\n(\\c #kSPPropertiesCaller) message. Most suites are unavailable\nduring these load and unload operations.\n\nYou can acquire all the suites you will need when your plug-in is first\nloaded, as long as you release them before your plug-in is unloaded.\nAt shutdown, however, it is most efficient to acquire only those\nsuites explicitly needed to shut down; for example, to free memory\nand save preferences.\n\nThe \\c SPBasicSuite itself is a part of the message data passed\nto your plug-in with any call. To access it from the message data structure:\n@code\nSPBasicSuite sBasic = message->d.basic;\nsBasic->function( )\n@endcode"]
2408#[repr(C)]
2409#[derive(Debug, Copy, Clone)]
2410pub struct SPBasicSuite {
2411    #[doc = " Acquires a function suite. Loads the suite if necessary,\nand increments its reference count. For example:\n@code\nSPErr error;\nSPBasicSuite *sBasic = message->d.basic;\nAIRandomSuite *sRandom;\nsBasic->AcquireSuite( kAIRandomSuite, kAIRandomVersion, &sRandom );\n@endcode\n@param name The suite name.\n@param version The suite version number.\n@param suite [out] A buffer in which to return the suite pointer.\n@see \\c #SPSuitesSuite::AcquireSuite()"]
2412    pub AcquireSuite: ::std::option::Option<
2413        unsafe extern "C" fn(
2414            name: *const ::std::os::raw::c_char,
2415            version: int32,
2416            suite: *mut *const ::std::os::raw::c_void,
2417        ) -> SPErr,
2418    >,
2419    #[doc = " Decrements the reference count of a suite and unloads it when the\nreference count reaches 0.\n@param name The suite name.\n@param version The suite version number."]
2420    pub ReleaseSuite: ::std::option::Option<
2421        unsafe extern "C" fn(name: *const ::std::os::raw::c_char, version: int32) -> SPErr,
2422    >,
2423    #[doc = " Compares two strings for equality.\n@param token1 The first null-terminated string.\n@param token2 The second null-terminated string.\n@return True if the strings are the same, false otherwise."]
2424    pub IsEqual: ::std::option::Option<
2425        unsafe extern "C" fn(
2426            token1: *const ::std::os::raw::c_char,
2427            token2: *const ::std::os::raw::c_char,
2428        ) -> SPBoolean,
2429    >,
2430    #[doc = " Allocates a block of memory.\n@param size The number of bytes.\n@param block [out] A buffer in which to return the block pointer.\n@see \\c #SPBlocksSuite::AllocateBlock()"]
2431    pub AllocateBlock: ::std::option::Option<
2432        unsafe extern "C" fn(size: usize, block: *mut *mut ::std::os::raw::c_void) -> SPErr,
2433    >,
2434    #[doc = " Frees a block of memory allocated with \\c #AllocateBlock().\n@param block The block pointer.\n@see \\c #SPBlocksSuite::FreeBlock()"]
2435    pub FreeBlock:
2436        ::std::option::Option<unsafe extern "C" fn(block: *mut ::std::os::raw::c_void) -> SPErr>,
2437    #[doc = " Reallocates a block previously allocated with \\c #AllocateBlock().\nIncreases the size without changing the location, if possible.\n@param block The block pointer.\n@param newSize The new number of bytes.\n@param newblock [out] A buffer in which to return the new block pointer.\n@see \\c #SPBlocksSuite::ReallocateBlock()"]
2438    pub ReallocateBlock: ::std::option::Option<
2439        unsafe extern "C" fn(
2440            block: *mut ::std::os::raw::c_void,
2441            newSize: usize,
2442            newblock: *mut *mut ::std::os::raw::c_void,
2443        ) -> SPErr,
2444    >,
2445    #[doc = " A function pointer for unloaded suites. This is a protective measure\nagainst other plug-ins that may mistakenly use the suite after they have\nreleased it.\n\nA plug-in that exports a suite should unload the suite's procedure pointers\nwhen it is unloaded, and restore them when the plug-in is reloaded.\n\\li On unload, replace the suite's procedure pointers\nwith the address of this function.\n\\li On reload, restore the suite's procedure\npointers with the updated addresses of their functions.\n\nFor example:\n@code\nSPErr UnloadSuite( MySuite *mySuite, SPAccessMessage *message ) {\nmySuite->functionA = (void *) message->d.basic->Undefined;\nmySuite->functionB = (void *) message->d.basic->Undefined;\n}\n\nSPErr ReloadSuite( MySuite *mySuite, SPAccessMessage *message ) {\nmySuite->functionA = functionA;\nmySuite->functionB = functionB;\n}\n@endcode"]
2446    pub Undefined: ::std::option::Option<unsafe extern "C" fn() -> SPErr>,
2447}
2448#[repr(C)]
2449#[derive(Debug, Copy, Clone)]
2450pub struct PF_AdvAppSuite1 {
2451    pub PF_SetProjectDirty: ::std::option::Option<unsafe extern "C" fn() -> PF_Err>,
2452    pub PF_SaveProject: ::std::option::Option<unsafe extern "C" fn() -> PF_Err>,
2453    pub PF_SaveBackgroundState: ::std::option::Option<unsafe extern "C" fn() -> PF_Err>,
2454    pub PF_ForceForeground: ::std::option::Option<unsafe extern "C" fn() -> PF_Err>,
2455    pub PF_RestoreBackgroundState: ::std::option::Option<unsafe extern "C" fn() -> PF_Err>,
2456    pub PF_RefreshAllWindows: ::std::option::Option<unsafe extern "C" fn() -> PF_Err>,
2457    pub PF_InfoDrawText: ::std::option::Option<
2458        unsafe extern "C" fn(line1Z0: *const A_char, line2Z0: *const A_char) -> PF_Err,
2459    >,
2460    pub PF_InfoDrawColor: ::std::option::Option<unsafe extern "C" fn(color: PF_Pixel) -> PF_Err>,
2461    pub PF_InfoDrawText3: ::std::option::Option<
2462        unsafe extern "C" fn(
2463            line1Z0: *const A_char,
2464            line2Z0: *const A_char,
2465            line3Z0: *const A_char,
2466        ) -> PF_Err,
2467    >,
2468    pub PF_InfoDrawText3Plus: ::std::option::Option<
2469        unsafe extern "C" fn(
2470            line1Z0: *const A_char,
2471            line2_jrZ0: *const A_char,
2472            line2_jlZ0: *const A_char,
2473            line3_jrZ0: *const A_char,
2474            line3_jlZ0: *const A_char,
2475        ) -> PF_Err,
2476    >,
2477}
2478#[repr(C)]
2479#[derive(Debug, Copy, Clone)]
2480pub struct PF_AdvAppSuite2 {
2481    pub PF_SetProjectDirty: ::std::option::Option<unsafe extern "C" fn() -> PF_Err>,
2482    pub PF_SaveProject: ::std::option::Option<unsafe extern "C" fn() -> PF_Err>,
2483    pub PF_SaveBackgroundState: ::std::option::Option<unsafe extern "C" fn() -> PF_Err>,
2484    pub PF_ForceForeground: ::std::option::Option<unsafe extern "C" fn() -> PF_Err>,
2485    pub PF_RestoreBackgroundState: ::std::option::Option<unsafe extern "C" fn() -> PF_Err>,
2486    pub PF_RefreshAllWindows: ::std::option::Option<unsafe extern "C" fn() -> PF_Err>,
2487    pub PF_InfoDrawText: ::std::option::Option<
2488        unsafe extern "C" fn(line1Z0: *const A_char, line2Z0: *const A_char) -> PF_Err,
2489    >,
2490    pub PF_InfoDrawColor: ::std::option::Option<unsafe extern "C" fn(color: PF_Pixel) -> PF_Err>,
2491    pub PF_InfoDrawText3: ::std::option::Option<
2492        unsafe extern "C" fn(
2493            line1Z0: *const A_char,
2494            line2Z0: *const A_char,
2495            line3Z0: *const A_char,
2496        ) -> PF_Err,
2497    >,
2498    pub PF_InfoDrawText3Plus: ::std::option::Option<
2499        unsafe extern "C" fn(
2500            line1Z0: *const A_char,
2501            line2_jrZ0: *const A_char,
2502            line2_jlZ0: *const A_char,
2503            line3_jrZ0: *const A_char,
2504            line3_jlZ0: *const A_char,
2505        ) -> PF_Err,
2506    >,
2507    pub PF_AppendInfoText:
2508        ::std::option::Option<unsafe extern "C" fn(appendZ0: *const A_char) -> PF_Err>,
2509}
2510pub const PF_Step_FORWARD: _bindgen_ty_56 = 0;
2511pub const PF_Step_BACKWARD: _bindgen_ty_56 = 1;
2512pub type _bindgen_ty_56 = ::std::os::raw::c_uint;
2513pub type PF_Step = A_LegacyEnumType;
2514pub const PF_TimeDisplayFormatTimecode: _bindgen_ty_57 = 0;
2515pub const PF_TimeDisplayFormatFrames: _bindgen_ty_57 = 1;
2516pub const PF_TimeDisplayFormatFeetFrames: _bindgen_ty_57 = 2;
2517pub type _bindgen_ty_57 = ::std::os::raw::c_uint;
2518#[repr(C)]
2519#[derive(Debug, Copy, Clone)]
2520pub struct PF_TimeDisplayPrefVersion3 {
2521    pub display_mode: A_char,
2522    pub framemax: A_long,
2523    pub frames_per_foot: A_long,
2524    pub frames_start: A_char,
2525    pub nondrop30B: A_Boolean,
2526    pub honor_source_timecodeB: A_Boolean,
2527    pub use_feet_framesB: A_Boolean,
2528}
2529#[repr(C)]
2530#[derive(Debug, Copy, Clone)]
2531pub struct PF_AdvTimeSuite4 {
2532    pub PF_FormatTimeActiveItem: ::std::option::Option<
2533        unsafe extern "C" fn(
2534            time_valueUL: A_long,
2535            time_scaleL: A_u_long,
2536            durationB: PF_Boolean,
2537            time_buf: *mut A_char,
2538        ) -> PF_Err,
2539    >,
2540    pub PF_FormatTime: ::std::option::Option<
2541        unsafe extern "C" fn(
2542            in_data: *mut PF_InData,
2543            world: *mut PF_EffectWorld,
2544            time_valueUL: A_long,
2545            time_scaleL: A_u_long,
2546            durationB: PF_Boolean,
2547            time_buf: *mut A_char,
2548        ) -> PF_Err,
2549    >,
2550    pub PF_FormatTimePlus: ::std::option::Option<
2551        unsafe extern "C" fn(
2552            in_data: *mut PF_InData,
2553            world: *mut PF_EffectWorld,
2554            time_valueUL: A_long,
2555            time_scaleL: A_u_long,
2556            comp_timeB: PF_Boolean,
2557            durationB: PF_Boolean,
2558            time_buf: *mut A_char,
2559        ) -> PF_Err,
2560    >,
2561    pub PF_GetTimeDisplayPref: ::std::option::Option<
2562        unsafe extern "C" fn(
2563            tdp: *mut PF_TimeDisplayPrefVersion3,
2564            starting_frame_num: *mut A_long,
2565        ) -> PF_Err,
2566    >,
2567    pub PF_TimeCountFrames: ::std::option::Option<
2568        unsafe extern "C" fn(
2569            start_timeTP: *const A_Time,
2570            time_stepTP: *const A_Time,
2571            include_partial_frameB: A_Boolean,
2572            frame_countL: *mut A_long,
2573        ) -> PF_Err,
2574    >,
2575}
2576#[repr(C)]
2577#[derive(Debug, Copy, Clone)]
2578pub struct PF_AdvTimeSuite3 {
2579    pub PF_FormatTimeActiveItem: ::std::option::Option<
2580        unsafe extern "C" fn(
2581            time_valueUL: A_long,
2582            time_scaleL: A_u_long,
2583            durationB: PF_Boolean,
2584            time_buf: *mut A_char,
2585        ) -> PF_Err,
2586    >,
2587    pub PF_FormatTime: ::std::option::Option<
2588        unsafe extern "C" fn(
2589            in_data: *mut PF_InData,
2590            world: *mut PF_EffectWorld,
2591            time_valueUL: A_long,
2592            time_scaleL: A_u_long,
2593            durationB: PF_Boolean,
2594            time_buf: *mut A_char,
2595        ) -> PF_Err,
2596    >,
2597    pub PF_FormatTimePlus: ::std::option::Option<
2598        unsafe extern "C" fn(
2599            in_data: *mut PF_InData,
2600            world: *mut PF_EffectWorld,
2601            time_valueUL: A_long,
2602            time_scaleL: A_u_long,
2603            comp_timeB: PF_Boolean,
2604            durationB: PF_Boolean,
2605            time_buf: *mut A_char,
2606        ) -> PF_Err,
2607    >,
2608    pub PF_GetTimeDisplayPref: ::std::option::Option<
2609        unsafe extern "C" fn(
2610            tdp: *mut PF_TimeDisplayPrefVersion3,
2611            starting_frame_num: *mut A_long,
2612        ) -> PF_Err,
2613    >,
2614}
2615#[repr(C)]
2616#[derive(Debug, Copy, Clone)]
2617pub struct PF_TimeDisplayPrefVersion2 {
2618    pub display_mode: A_char,
2619    pub framemax: A_char,
2620    pub frames_per_foot: A_char,
2621    pub frames_start: A_char,
2622    pub nondrop30B: A_Boolean,
2623    pub honor_source_timecodeB: A_Boolean,
2624    pub use_feet_framesB: A_Boolean,
2625}
2626#[repr(C)]
2627#[derive(Debug, Copy, Clone)]
2628pub struct PF_AdvTimeSuite2 {
2629    pub PF_FormatTimeActiveItem: ::std::option::Option<
2630        unsafe extern "C" fn(
2631            time_valueUL: A_long,
2632            time_scaleL: A_u_long,
2633            durationB: PF_Boolean,
2634            time_buf: *mut A_char,
2635        ) -> PF_Err,
2636    >,
2637    pub PF_FormatTime: ::std::option::Option<
2638        unsafe extern "C" fn(
2639            in_data: *mut PF_InData,
2640            world: *mut PF_EffectWorld,
2641            time_valueUL: A_long,
2642            time_scaleL: A_u_long,
2643            durationB: PF_Boolean,
2644            time_buf: *mut A_char,
2645        ) -> PF_Err,
2646    >,
2647    pub PF_FormatTimePlus: ::std::option::Option<
2648        unsafe extern "C" fn(
2649            in_data: *mut PF_InData,
2650            world: *mut PF_EffectWorld,
2651            time_valueUL: A_long,
2652            time_scaleL: A_u_long,
2653            comp_timeB: PF_Boolean,
2654            durationB: PF_Boolean,
2655            time_buf: *mut A_char,
2656        ) -> PF_Err,
2657    >,
2658    pub PF_GetTimeDisplayPref: ::std::option::Option<
2659        unsafe extern "C" fn(
2660            tdp: *mut PF_TimeDisplayPrefVersion2,
2661            starting_frame_num: *mut A_long,
2662        ) -> PF_Err,
2663    >,
2664}
2665#[repr(C)]
2666#[derive(Debug, Copy, Clone)]
2667pub struct PF_TimeDisplayPref {
2668    pub time_display_format: A_char,
2669    pub framemax: A_char,
2670    pub nondrop30: A_char,
2671    pub frames_per_foot: A_char,
2672}
2673#[repr(C)]
2674#[derive(Debug, Copy, Clone)]
2675pub struct PF_AdvTimeSuite1 {
2676    pub PF_FormatTimeActiveItem: ::std::option::Option<
2677        unsafe extern "C" fn(
2678            time_valueUL: A_long,
2679            time_scaleL: A_u_long,
2680            durationB: PF_Boolean,
2681            time_buf: *mut A_char,
2682        ) -> PF_Err,
2683    >,
2684    pub PF_FormatTime: ::std::option::Option<
2685        unsafe extern "C" fn(
2686            in_data: *mut PF_InData,
2687            world: *mut PF_EffectWorld,
2688            time_valueUL: A_long,
2689            time_scaleL: A_u_long,
2690            durationB: PF_Boolean,
2691            time_buf: *mut A_char,
2692        ) -> PF_Err,
2693    >,
2694    pub PF_FormatTimePlus: ::std::option::Option<
2695        unsafe extern "C" fn(
2696            in_data: *mut PF_InData,
2697            world: *mut PF_EffectWorld,
2698            time_valueUL: A_long,
2699            time_scaleL: A_u_long,
2700            comp_timeB: PF_Boolean,
2701            durationB: PF_Boolean,
2702            time_buf: *mut A_char,
2703        ) -> PF_Err,
2704    >,
2705    pub PF_GetTimeDisplayPref: ::std::option::Option<
2706        unsafe extern "C" fn(
2707            tdp: *mut PF_TimeDisplayPref,
2708            starting_frame_num: *mut A_long,
2709        ) -> PF_Err,
2710    >,
2711}
2712#[repr(C)]
2713#[derive(Debug, Copy, Clone)]
2714pub struct PF_AdvItemSuite1 {
2715    pub PF_MoveTimeStep: ::std::option::Option<
2716        unsafe extern "C" fn(
2717            in_data: *mut PF_InData,
2718            world: *mut PF_EffectWorld,
2719            time_dir: PF_Step,
2720            num_stepsL: A_long,
2721        ) -> PF_Err,
2722    >,
2723    pub PF_MoveTimeStepActiveItem: ::std::option::Option<
2724        unsafe extern "C" fn(time_dir: PF_Step, num_stepsL: A_long) -> PF_Err,
2725    >,
2726    pub PF_TouchActiveItem: ::std::option::Option<unsafe extern "C" fn() -> PF_Err>,
2727    pub PF_ForceRerender: ::std::option::Option<
2728        unsafe extern "C" fn(in_data: *mut PF_InData, world: *mut PF_EffectWorld) -> PF_Err,
2729    >,
2730    pub PF_EffectIsActiveOrEnabled: ::std::option::Option<
2731        unsafe extern "C" fn(contextH: PF_ContextH, enabledPB: *mut PF_Boolean) -> PF_Err,
2732    >,
2733}
2734#[repr(C)]
2735#[derive(Debug, Copy, Clone)]
2736pub struct PF_CacheOnLoadSuite1 {
2737    pub PF_SetNoCacheOnLoad: ::std::option::Option<
2738        unsafe extern "C" fn(effect_ref: PF_ProgPtr, effectAvailable: A_long) -> PF_Err,
2739    >,
2740}
2741#[doc = " the suite functions"]
2742#[repr(C)]
2743#[derive(Debug, Copy, Clone)]
2744pub struct PF_ChannelSuite1 {
2745    pub PF_GetLayerChannelCount: ::std::option::Option<
2746        unsafe extern "C" fn(
2747            effect_ref: PF_ProgPtr,
2748            param_index: PF_ParamIndex,
2749            num_channelsPL: *mut A_long,
2750        ) -> PF_Err,
2751    >,
2752    pub PF_GetLayerChannelIndexedRefAndDesc: ::std::option::Option<
2753        unsafe extern "C" fn(
2754            effect_ref: PF_ProgPtr,
2755            param_index: PF_ParamIndex,
2756            channel_index: PF_ChannelIndex,
2757            foundPB: *mut PF_Boolean,
2758            channel_refP: *mut PF_ChannelRef,
2759            channel_descP: *mut PF_ChannelDesc,
2760        ) -> PF_Err,
2761    >,
2762    pub PF_GetLayerChannelTypedRefAndDesc: ::std::option::Option<
2763        unsafe extern "C" fn(
2764            effect_ref: PF_ProgPtr,
2765            param_index: PF_ParamIndex,
2766            channel_type: PF_ChannelType,
2767            foundPB: *mut PF_Boolean,
2768            channel_refP: *mut PF_ChannelRef,
2769            channel_descP: *mut PF_ChannelDesc,
2770        ) -> PF_Err,
2771    >,
2772    pub PF_CheckoutLayerChannel: ::std::option::Option<
2773        unsafe extern "C" fn(
2774            effect_ref: PF_ProgPtr,
2775            channel_refP: PF_ChannelRefPtr,
2776            what_time: A_long,
2777            duration: A_long,
2778            time_scale: A_u_long,
2779            data_type: PF_DataType,
2780            channel_chunkP: *mut PF_ChannelChunk,
2781        ) -> PF_Err,
2782    >,
2783    pub PF_CheckinLayerChannel: ::std::option::Option<
2784        unsafe extern "C" fn(
2785            effect_ref: PF_ProgPtr,
2786            channel_refP: PF_ChannelRefPtr,
2787            channel_chunkP: *mut PF_ChannelChunk,
2788        ) -> PF_Err,
2789    >,
2790}
2791pub type PF_KernelFlags = A_u_long;
2792pub const PF_SampleEdgeBehav_ZERO: _bindgen_ty_58 = 0;
2793#[doc = " ---------- PF_SampleEdgeBehav ----------\n\nThe sampling routines always deal with 32 bit images, and thus\nneed to compute properly alpha-weighted samples. An issue arises\nwhen an attempt is made to sample outside of the image content area.\n\nBefore PF_PLUG_IN_VERSION 2, After Effects always treated pixels\noutside of the image content area as having alpha = 0, which is desirable\nin many cases. Distortions and other effects may want different sampling\nbehaviors, however, hence the PF_SampleEdgeBehav.\n"]
2794pub type _bindgen_ty_58 = ::std::os::raw::c_uint;
2795pub type PF_SampleEdgeBehav = A_u_long;
2796pub const PF_Xfer_NONE: _bindgen_ty_59 = -1;
2797pub const PF_Xfer_COPY: _bindgen_ty_59 = 0;
2798pub const PF_Xfer_BEHIND: _bindgen_ty_59 = 1;
2799pub const PF_Xfer_IN_FRONT: _bindgen_ty_59 = 2;
2800pub const PF_Xfer_DISSOLVE: _bindgen_ty_59 = 3;
2801pub const PF_Xfer_ADD: _bindgen_ty_59 = 4;
2802pub const PF_Xfer_MULTIPLY: _bindgen_ty_59 = 5;
2803pub const PF_Xfer_SCREEN: _bindgen_ty_59 = 6;
2804pub const PF_Xfer_OVERLAY: _bindgen_ty_59 = 7;
2805pub const PF_Xfer_SOFT_LIGHT: _bindgen_ty_59 = 8;
2806pub const PF_Xfer_HARD_LIGHT: _bindgen_ty_59 = 9;
2807pub const PF_Xfer_DARKEN: _bindgen_ty_59 = 10;
2808pub const PF_Xfer_LIGHTEN: _bindgen_ty_59 = 11;
2809pub const PF_Xfer_DIFFERENCE: _bindgen_ty_59 = 12;
2810pub const PF_Xfer_HUE: _bindgen_ty_59 = 13;
2811pub const PF_Xfer_SATURATION: _bindgen_ty_59 = 14;
2812pub const PF_Xfer_COLOR: _bindgen_ty_59 = 15;
2813pub const PF_Xfer_LUMINOSITY: _bindgen_ty_59 = 16;
2814pub const PF_Xfer_MULTIPLY_ALPHA: _bindgen_ty_59 = 17;
2815pub const PF_Xfer_MULTIPLY_ALPHA_LUMA: _bindgen_ty_59 = 18;
2816pub const PF_Xfer_MULTIPLY_NOT_ALPHA: _bindgen_ty_59 = 19;
2817pub const PF_Xfer_MULTIPLY_NOT_ALPHA_LUMA: _bindgen_ty_59 = 20;
2818pub const PF_Xfer_ADDITIVE_PREMUL: _bindgen_ty_59 = 21;
2819pub const PF_Xfer_ALPHA_ADD: _bindgen_ty_59 = 22;
2820pub const PF_Xfer_COLOR_DODGE: _bindgen_ty_59 = 23;
2821pub const PF_Xfer_COLOR_BURN: _bindgen_ty_59 = 24;
2822pub const PF_Xfer_EXCLUSION: _bindgen_ty_59 = 25;
2823pub const PF_Xfer_DIFFERENCE2: _bindgen_ty_59 = 26;
2824pub const PF_Xfer_COLOR_DODGE2: _bindgen_ty_59 = 27;
2825pub const PF_Xfer_COLOR_BURN2: _bindgen_ty_59 = 28;
2826pub const PF_Xfer_LINEAR_DODGE: _bindgen_ty_59 = 29;
2827pub const PF_Xfer_LINEAR_BURN: _bindgen_ty_59 = 30;
2828pub const PF_Xfer_LINEAR_LIGHT: _bindgen_ty_59 = 31;
2829pub const PF_Xfer_VIVID_LIGHT: _bindgen_ty_59 = 32;
2830pub const PF_Xfer_PIN_LIGHT: _bindgen_ty_59 = 33;
2831pub const PF_Xfer_HARD_MIX: _bindgen_ty_59 = 34;
2832pub const PF_Xfer_LIGHTER_COLOR: _bindgen_ty_59 = 35;
2833pub const PF_Xfer_DARKER_COLOR: _bindgen_ty_59 = 36;
2834pub const PF_Xfer_SUBTRACT: _bindgen_ty_59 = 37;
2835pub const PF_Xfer_DIVIDE: _bindgen_ty_59 = 38;
2836pub const PF_Xfer_RESERVED0: _bindgen_ty_59 = 39;
2837pub const PF_Xfer_RESERVED1: _bindgen_ty_59 = 40;
2838pub const PF_Xfer_NUM_MODES: _bindgen_ty_59 = 41;
2839pub type _bindgen_ty_59 = ::std::os::raw::c_int;
2840pub const PF_Xfer_TINT: _bindgen_ty_60 = 29;
2841pub const PF_Xfer_SHADE: _bindgen_ty_60 = 30;
2842pub const PF_Xfer_INTENSE_LIGHT: _bindgen_ty_60 = 32;
2843pub type _bindgen_ty_60 = ::std::os::raw::c_uint;
2844pub const PF_MaskFlag_NONE: _bindgen_ty_61 = 0;
2845pub const PF_MaskFlag_INVERTED: _bindgen_ty_61 = 1;
2846pub const PF_MaskFlag_LUMINANCE: _bindgen_ty_61 = 2;
2847pub type _bindgen_ty_61 = ::std::os::raw::c_uint;
2848pub type PF_MaskFlags = A_long;
2849#[repr(C)]
2850#[derive(Copy, Clone)]
2851pub struct PF_MaskWorld {
2852    pub mask: PF_EffectWorld,
2853    pub offset: PF_Point,
2854    pub what_is_mask: PF_MaskFlags,
2855}
2856#[doc = " ---------- PF_SampPB ----------\n\nThere are calls to sample an a non-integral point in an image,\nand to sample an area of an image.  This parameter block describes\nsome information needed for these image resampling routines."]
2857#[repr(C)]
2858#[derive(Debug, Copy, Clone)]
2859pub struct PF_SampPB {
2860    pub x_radius: PF_Fixed,
2861    pub y_radius: PF_Fixed,
2862    pub area: PF_Fixed,
2863    pub src: *mut PF_EffectWorld,
2864    pub samp_behave: PF_SampleEdgeBehav,
2865    pub allow_asynch: A_long,
2866    pub motion_blur: A_long,
2867    pub comp_mode: PF_CompositeMode,
2868    pub mask0: PF_PixelPtr,
2869    pub fcm_table: *mut A_u_char,
2870    pub fcd_table: *mut A_u_char,
2871    pub reserved: [A_long; 8usize],
2872}
2873pub const PF_Callback_NONE: _bindgen_ty_62 = 0;
2874pub const PF_Callback_BEGIN_SAMPLING: _bindgen_ty_62 = 1;
2875pub const PF_Callback_SUBPIXEL_SAMPLE: _bindgen_ty_62 = 2;
2876pub const PF_Callback_AREA_SAMPLE: _bindgen_ty_62 = 3;
2877pub const PF_Callback_OBSOLETE0: _bindgen_ty_62 = 4;
2878pub const PF_Callback_END_SAMPLING: _bindgen_ty_62 = 5;
2879pub const PF_Callback_COMPOSITE_RECT: _bindgen_ty_62 = 6;
2880pub const PF_Callback_BLEND: _bindgen_ty_62 = 7;
2881pub const PF_Callback_CONVOLVE: _bindgen_ty_62 = 8;
2882pub const PF_Callback_COPY: _bindgen_ty_62 = 9;
2883pub const PF_Callback_FILL: _bindgen_ty_62 = 10;
2884pub const PF_Callback_GAUSSIAN: _bindgen_ty_62 = 11;
2885pub const PF_Callback_ITERATE: _bindgen_ty_62 = 12;
2886pub const PF_Callback_PREMUL: _bindgen_ty_62 = 13;
2887pub const PF_Callback_PREMUL_COLOR: _bindgen_ty_62 = 14;
2888pub const PF_Callback_RGB_TO_HLS: _bindgen_ty_62 = 15;
2889pub const PF_Callback_HLS_TO_RGB: _bindgen_ty_62 = 16;
2890pub const PF_Callback_RGB_TO_YIQ: _bindgen_ty_62 = 17;
2891pub const PF_Callback_YIQ_TO_RGB: _bindgen_ty_62 = 18;
2892pub const PF_Callback_LUMINANCE: _bindgen_ty_62 = 19;
2893pub const PF_Callback_HUE: _bindgen_ty_62 = 20;
2894pub const PF_Callback_LIGHTNESS: _bindgen_ty_62 = 21;
2895pub const PF_Callback_SATURATION: _bindgen_ty_62 = 22;
2896pub const PF_Callback_NEW_WORLD: _bindgen_ty_62 = 23;
2897pub const PF_Callback_DISPOSE_WORLD: _bindgen_ty_62 = 24;
2898pub const PF_Callback_ITERATE_ORIGIN: _bindgen_ty_62 = 25;
2899pub const PF_Callback_ITERATE_LUT: _bindgen_ty_62 = 26;
2900pub const PF_Callback_TRANSFER_RECT: _bindgen_ty_62 = 27;
2901pub const PF_Callback_TRANSFORM_WORLD: _bindgen_ty_62 = 28;
2902pub const PF_Callback_ITERATE_ORIGIN_NON_CLIP_SRC: _bindgen_ty_62 = 29;
2903pub const PF_Callback_ITERATE_GENERIC: _bindgen_ty_62 = 30;
2904pub const PF_Callback_SUBPIXEL_SAMPLE16: _bindgen_ty_62 = 31;
2905pub const PF_Callback_AREA_SAMPLE16: _bindgen_ty_62 = 32;
2906pub const PF_Callback_FILL16: _bindgen_ty_62 = 33;
2907pub const PF_Callback_PREMUL_COLOR16: _bindgen_ty_62 = 34;
2908pub const PF_Callback_ITERATE16: _bindgen_ty_62 = 35;
2909pub const PF_Callback_ITERATE_ORIGIN16: _bindgen_ty_62 = 36;
2910pub const PF_Callback_ITERATE_ORIGIN_NON_CLIP_SRC16: _bindgen_ty_62 = 37;
2911pub const PF_Callback_ITERATE_GENERIC_NO_MAX_THREADS: _bindgen_ty_62 = 38;
2912pub const PF_Callback_ITERATE_NO_MAX_THREADS: _bindgen_ty_62 = 39;
2913pub const PF_Callback_ITERATE_ORIGIN_NO_MAX_THREADS: _bindgen_ty_62 = 40;
2914pub const PF_Callback_ITERATE_ORIGIN_NON_CLIP_SRC_NO_MAX_THREADS: _bindgen_ty_62 = 41;
2915pub const PF_Callback_ITERATE16_NO_MAX_THREADS: _bindgen_ty_62 = 42;
2916pub const PF_Callback_ITERATE_ORIGIN16_NO_MAX_THREADS: _bindgen_ty_62 = 43;
2917pub const PF_Callback_ITERATE_ORIGIN_NON_CLIP_SRC16_NO_MAX_THREADS: _bindgen_ty_62 = 44;
2918#[doc = " ---------- Callback Selectors ----------\n\nSome callbacks have different high and low quality versions.\nThe parameter block of function pointers will automatically\nbe filled with the appropriate versions for the current quality\nsetting, but some filters may wish to override this and access\na callback of different quality.  To do this, a get_callback_addr\ncallback is provided which will take a callback selector and a\ndesired quality and return the callback of that quality.  The\nselectors for the various callbacks are listed here.  Also, a\ntypedef for the function pointer that will be returned is given."]
2919pub type _bindgen_ty_62 = ::std::os::raw::c_uint;
2920pub type PF_CallbackID = A_long;
2921#[repr(C)]
2922#[derive(Debug, Copy, Clone)]
2923pub struct PF_YouMustCastThisToActualFunctionType {
2924    _unused: [u8; 0],
2925}
2926#[doc = "Previous versions of PF_CallbackFunc were defined using varargs in attempt to enforce\nthe effect_ref passed as the first argument to all callbacks. The actual host\nimplementations are generally *not* varargs, and on some platforms the calling\nconventions between normal C ABI and C varargs ABI are not compatible. If your\ncode is trying to call through a PF_CallbackFunc it is unsafe; with this definition\nit will now no longer compile. To fix, cast to the proper API signature before\ncalling. Or better, use the extensive Suite implementations which are explicitly typed"]
2927pub type PF_CallbackFunc = *mut PF_YouMustCastThisToActualFunctionType;
2928pub const PF_PlatData_MAIN_WND: _bindgen_ty_63 = 0;
2929pub const PF_PlatData_EXE_FILE_PATH_DEPRECATED: _bindgen_ty_63 = 1;
2930pub const PF_PlatData_RES_FILE_PATH_DEPRECATED: _bindgen_ty_63 = 2;
2931pub const PF_PlatData_RES_REFNUM: _bindgen_ty_63 = 3;
2932pub const PF_PlatData_RES_DLLINSTANCE: _bindgen_ty_63 = 4;
2933pub const PF_PlatData_SP_PLUG_REF: _bindgen_ty_63 = 5;
2934pub const PF_PlatData_BUNDLE_REF: _bindgen_ty_63 = 6;
2935pub const PF_PlatData_EXE_FILE_PATH_W: _bindgen_ty_63 = 7;
2936pub const PF_PlatData_RES_FILE_PATH_W: _bindgen_ty_63 = 8;
2937pub type _bindgen_ty_63 = ::std::os::raw::c_uint;
2938pub type PF_PlatDataID = A_long;
2939pub const PF_Plane_ALPHA: _bindgen_ty_64 = 1;
2940pub const PF_Plane_RED: _bindgen_ty_64 = 2;
2941pub const PF_Plane_GREEN: _bindgen_ty_64 = 4;
2942pub const PF_Plane_BLUE: _bindgen_ty_64 = 8;
2943#[doc = " ---------- Image Plane Selectors ----------\n\nThese constants can be used to specify a subset\nof the planes of the 32-bit image."]
2944pub type _bindgen_ty_64 = ::std::os::raw::c_uint;
2945pub type PF_Plane = A_u_long;
2946#[doc = " ---------- ANSI Routines Block ----------\n\nWithin the callback routines block there is a block of ANSI\nroutines, so that the filter will not need to link with the\nANSI library.  The following structure describes that block\nand is included in the larger Callback Routines block below.\n\nAll angles are expressed in radians; use PF_RAD_PER_DEGREE\nto convert from degrees to radians, if necessary.  Be aware\nthat angle parameter types use degrees (in fixed point).\n\nSprintf and strcpy are provided to facilitate string usage,\nsuch as printing for names and supervised controls.\n\nNone of these callbacks vary based on the Quality setting."]
2947#[repr(C)]
2948#[derive(Debug, Copy, Clone)]
2949pub struct PF_ANSICallbacksBlock {
2950    pub atan: ::std::option::Option<unsafe extern "C" fn(arg1: A_FpLong) -> A_FpLong>,
2951    pub atan2: ::std::option::Option<unsafe extern "C" fn(y: A_FpLong, x: A_FpLong) -> A_FpLong>,
2952    pub ceil: ::std::option::Option<unsafe extern "C" fn(arg1: A_FpLong) -> A_FpLong>,
2953    pub cos: ::std::option::Option<unsafe extern "C" fn(arg1: A_FpLong) -> A_FpLong>,
2954    pub exp: ::std::option::Option<unsafe extern "C" fn(arg1: A_FpLong) -> A_FpLong>,
2955    pub fabs: ::std::option::Option<unsafe extern "C" fn(arg1: A_FpLong) -> A_FpLong>,
2956    pub floor: ::std::option::Option<unsafe extern "C" fn(arg1: A_FpLong) -> A_FpLong>,
2957    pub fmod: ::std::option::Option<unsafe extern "C" fn(x: A_FpLong, y: A_FpLong) -> A_FpLong>,
2958    pub hypot: ::std::option::Option<unsafe extern "C" fn(x: A_FpLong, y: A_FpLong) -> A_FpLong>,
2959    pub log: ::std::option::Option<unsafe extern "C" fn(arg1: A_FpLong) -> A_FpLong>,
2960    pub log10: ::std::option::Option<unsafe extern "C" fn(arg1: A_FpLong) -> A_FpLong>,
2961    pub pow: ::std::option::Option<unsafe extern "C" fn(x: A_FpLong, y: A_FpLong) -> A_FpLong>,
2962    pub sin: ::std::option::Option<unsafe extern "C" fn(arg1: A_FpLong) -> A_FpLong>,
2963    pub sqrt: ::std::option::Option<unsafe extern "C" fn(arg1: A_FpLong) -> A_FpLong>,
2964    pub tan: ::std::option::Option<unsafe extern "C" fn(arg1: A_FpLong) -> A_FpLong>,
2965    pub sprintf: ::std::option::Option<
2966        unsafe extern "C" fn(arg1: *mut A_char, arg2: *const A_char, ...) -> ::std::os::raw::c_int,
2967    >,
2968    pub strcpy: ::std::option::Option<
2969        unsafe extern "C" fn(arg1: *mut A_char, arg2: *const A_char) -> *mut A_char,
2970    >,
2971    pub asin: ::std::option::Option<unsafe extern "C" fn(arg1: A_FpLong) -> A_FpLong>,
2972    pub acos: ::std::option::Option<unsafe extern "C" fn(arg1: A_FpLong) -> A_FpLong>,
2973    pub unused_longA: [A_long; 1usize],
2974}
2975#[doc = " ---------- Colorspace Conversion Callbacks\n"]
2976#[repr(C)]
2977#[derive(Debug, Copy, Clone)]
2978pub struct PF_ColorCallbacks {
2979    pub RGBtoHLS: ::std::option::Option<
2980        unsafe extern "C" fn(
2981            effect_ref: PF_ProgPtr,
2982            rgb: *mut PF_Pixel,
2983            hls: *mut PF_Fixed,
2984        ) -> PF_Err,
2985    >,
2986    pub HLStoRGB: ::std::option::Option<
2987        unsafe extern "C" fn(
2988            effect_ref: PF_ProgPtr,
2989            hls: *mut PF_Fixed,
2990            rgb: *mut PF_Pixel,
2991        ) -> PF_Err,
2992    >,
2993    pub RGBtoYIQ: ::std::option::Option<
2994        unsafe extern "C" fn(
2995            effect_ref: PF_ProgPtr,
2996            rgb: *mut PF_Pixel,
2997            yiq: *mut PF_Fixed,
2998        ) -> PF_Err,
2999    >,
3000    pub YIQtoRGB: ::std::option::Option<
3001        unsafe extern "C" fn(
3002            effect_ref: PF_ProgPtr,
3003            yiq: *mut PF_Fixed,
3004            rgb: *mut PF_Pixel,
3005        ) -> PF_Err,
3006    >,
3007    pub Luminance: ::std::option::Option<
3008        unsafe extern "C" fn(
3009            effect_ref: PF_ProgPtr,
3010            rgb: *mut PF_Pixel,
3011            lum100: *mut A_long,
3012        ) -> PF_Err,
3013    >,
3014    pub Hue: ::std::option::Option<
3015        unsafe extern "C" fn(
3016            effect_ref: PF_ProgPtr,
3017            rgb: *mut PF_Pixel,
3018            hue: *mut A_long,
3019        ) -> PF_Err,
3020    >,
3021    pub Lightness: ::std::option::Option<
3022        unsafe extern "C" fn(
3023            effect_ref: PF_ProgPtr,
3024            rgb: *mut PF_Pixel,
3025            lightness: *mut A_long,
3026        ) -> PF_Err,
3027    >,
3028    pub Saturation: ::std::option::Option<
3029        unsafe extern "C" fn(
3030            effect_ref: PF_ProgPtr,
3031            rgb: *mut PF_Pixel,
3032            saturation: *mut A_long,
3033        ) -> PF_Err,
3034    >,
3035}
3036pub type PF_BatchSampleFunc = *mut ::std::os::raw::c_void;
3037pub type PF_BatchSample16Func = *mut ::std::os::raw::c_void;
3038pub const PF_NewWorldFlag_NONE: _bindgen_ty_65 = 0;
3039pub const PF_NewWorldFlag_CLEAR_PIXELS: _bindgen_ty_65 = 1;
3040pub const PF_NewWorldFlag_DEEP_PIXELS: _bindgen_ty_65 = 2;
3041pub const PF_NewWorldFlag_RESERVED0: _bindgen_ty_65 = 4;
3042pub const PF_NewWorldFlag_RESERVED1: _bindgen_ty_65 = 8;
3043pub type _bindgen_ty_65 = ::std::os::raw::c_uint;
3044pub type PF_NewWorldFlags = A_long;
3045#[doc = "prototypes for PF_ITERATE8 and PF_ITERATE16 pixel functions\n\nthe user of PF_ITERATE provides a refcon; After Effects may distribute iteration\nacross multiple threads, so any data pointed to by refconL should be read-only or\nproperly synchronized\n\ninP is writable only if the world you pass to PF_ITERATE() is PF_WorldFlag_WRITEABLE\n\n"]
3046pub type PF_IteratePixel8Func = ::std::option::Option<
3047    unsafe extern "C" fn(
3048        refconP: *mut ::std::os::raw::c_void,
3049        xL: A_long,
3050        yL: A_long,
3051        inP: *mut PF_Pixel,
3052        outP: *mut PF_Pixel,
3053    ) -> PF_Err,
3054>;
3055pub type PF_IteratePixel16Func = ::std::option::Option<
3056    unsafe extern "C" fn(
3057        refconP: *mut ::std::os::raw::c_void,
3058        xL: A_long,
3059        yL: A_long,
3060        inP: *mut PF_Pixel16,
3061        outP: *mut PF_Pixel16,
3062    ) -> PF_Err,
3063>;
3064pub type PF_IteratePixelFloatFunc = ::std::option::Option<
3065    unsafe extern "C" fn(
3066        refconP: *mut ::std::os::raw::c_void,
3067        xL: A_long,
3068        yL: A_long,
3069        inP: *mut PF_PixelFloat,
3070        outP: *mut PF_PixelFloat,
3071    ) -> PF_Err,
3072>;
3073#[repr(C)]
3074#[derive(Debug, Copy, Clone)]
3075pub struct _PF_UtilCallbacks {
3076    pub begin_sampling: ::std::option::Option<
3077        unsafe extern "C" fn(
3078            effect_ref: PF_ProgPtr,
3079            qual: PF_Quality,
3080            mf: PF_ModeFlags,
3081            params: *mut PF_SampPB,
3082        ) -> PF_Err,
3083    >,
3084    pub subpixel_sample: ::std::option::Option<
3085        unsafe extern "C" fn(
3086            effect_ref: PF_ProgPtr,
3087            x: PF_Fixed,
3088            y: PF_Fixed,
3089            params: *const PF_SampPB,
3090            dst_pixel: *mut PF_Pixel,
3091        ) -> PF_Err,
3092    >,
3093    pub area_sample: ::std::option::Option<
3094        unsafe extern "C" fn(
3095            effect_ref: PF_ProgPtr,
3096            x: PF_Fixed,
3097            y: PF_Fixed,
3098            params: *const PF_SampPB,
3099            dst_pixel: *mut PF_Pixel,
3100        ) -> PF_Err,
3101    >,
3102    pub get_batch_func_is_deprecated: *mut ::std::os::raw::c_void,
3103    pub end_sampling: ::std::option::Option<
3104        unsafe extern "C" fn(
3105            effect_ref: PF_ProgPtr,
3106            qual: PF_Quality,
3107            mf: PF_ModeFlags,
3108            params: *mut PF_SampPB,
3109        ) -> PF_Err,
3110    >,
3111    pub composite_rect: ::std::option::Option<
3112        unsafe extern "C" fn(
3113            effect_ref: PF_ProgPtr,
3114            src_rect: *mut PF_Rect,
3115            src_opacity: A_long,
3116            source_wld: *mut PF_EffectWorld,
3117            dest_x: A_long,
3118            dest_y: A_long,
3119            field_rdr: PF_Field,
3120            xfer_mode: PF_XferMode,
3121            dest_wld: *mut PF_EffectWorld,
3122        ) -> PF_Err,
3123    >,
3124    pub blend: ::std::option::Option<
3125        unsafe extern "C" fn(
3126            effect_ref: PF_ProgPtr,
3127            src1: *const PF_EffectWorld,
3128            src2: *const PF_EffectWorld,
3129            ratio: PF_Fixed,
3130            dst: *mut PF_EffectWorld,
3131        ) -> PF_Err,
3132    >,
3133    pub convolve: ::std::option::Option<
3134        unsafe extern "C" fn(
3135            effect_ref: PF_ProgPtr,
3136            src: *mut PF_EffectWorld,
3137            area: *const PF_Rect,
3138            flags: PF_KernelFlags,
3139            kernel_size: A_long,
3140            a_kernel: *mut ::std::os::raw::c_void,
3141            r_kernel: *mut ::std::os::raw::c_void,
3142            g_kernel: *mut ::std::os::raw::c_void,
3143            b_kernel: *mut ::std::os::raw::c_void,
3144            dst: *mut PF_EffectWorld,
3145        ) -> PF_Err,
3146    >,
3147    pub copy: ::std::option::Option<
3148        unsafe extern "C" fn(
3149            effect_ref: PF_ProgPtr,
3150            src: *mut PF_EffectWorld,
3151            dst: *mut PF_EffectWorld,
3152            src_r: *mut PF_Rect,
3153            dst_r: *mut PF_Rect,
3154        ) -> PF_Err,
3155    >,
3156    pub fill: ::std::option::Option<
3157        unsafe extern "C" fn(
3158            effect_ref: PF_ProgPtr,
3159            color: *const PF_Pixel,
3160            dst_rect: *const PF_Rect,
3161            world: *mut PF_EffectWorld,
3162        ) -> PF_Err,
3163    >,
3164    pub gaussian_kernel: ::std::option::Option<
3165        unsafe extern "C" fn(
3166            effect_ref: PF_ProgPtr,
3167            kRadius: A_FpLong,
3168            flags: PF_KernelFlags,
3169            multiplier: A_FpLong,
3170            diameter: *mut A_long,
3171            kernel: *mut ::std::os::raw::c_void,
3172        ) -> PF_Err,
3173    >,
3174    pub iterate: ::std::option::Option<
3175        unsafe extern "C" fn(
3176            in_data: *mut PF_InData,
3177            progress_base: A_long,
3178            progress_final: A_long,
3179            src: *mut PF_EffectWorld,
3180            area: *const PF_Rect,
3181            refcon: *mut ::std::os::raw::c_void,
3182            pix_fn: PF_IteratePixel8Func,
3183            dst: *mut PF_EffectWorld,
3184        ) -> PF_Err,
3185    >,
3186    pub premultiply: ::std::option::Option<
3187        unsafe extern "C" fn(
3188            effect_ref: PF_ProgPtr,
3189            forward: A_long,
3190            dst: *mut PF_EffectWorld,
3191        ) -> PF_Err,
3192    >,
3193    pub premultiply_color: ::std::option::Option<
3194        unsafe extern "C" fn(
3195            effect_ref: PF_ProgPtr,
3196            src: *mut PF_EffectWorld,
3197            color: *const PF_Pixel,
3198            forward: A_long,
3199            dst: *mut PF_EffectWorld,
3200        ) -> PF_Err,
3201    >,
3202    pub new_world: ::std::option::Option<
3203        unsafe extern "C" fn(
3204            effect_ref: PF_ProgPtr,
3205            width: A_long,
3206            height: A_long,
3207            flags: PF_NewWorldFlags,
3208            world: *mut PF_EffectWorld,
3209        ) -> PF_Err,
3210    >,
3211    pub dispose_world: ::std::option::Option<
3212        unsafe extern "C" fn(effect_ref: PF_ProgPtr, world: *mut PF_EffectWorld) -> PF_Err,
3213    >,
3214    pub iterate_origin: ::std::option::Option<
3215        unsafe extern "C" fn(
3216            in_data: *mut PF_InData,
3217            progress_base: A_long,
3218            progress_final: A_long,
3219            src: *mut PF_EffectWorld,
3220            area: *const PF_Rect,
3221            origin: *const PF_Point,
3222            refcon: *mut ::std::os::raw::c_void,
3223            pix_fn: PF_IteratePixel8Func,
3224            dst: *mut PF_EffectWorld,
3225        ) -> PF_Err,
3226    >,
3227    pub iterate_lut: ::std::option::Option<
3228        unsafe extern "C" fn(
3229            in_data: *mut PF_InData,
3230            progress_base: A_long,
3231            progress_final: A_long,
3232            src: *mut PF_EffectWorld,
3233            area: *const PF_Rect,
3234            a_lut0: *mut A_u_char,
3235            r_lut0: *mut A_u_char,
3236            g_lut0: *mut A_u_char,
3237            b_lut0: *mut A_u_char,
3238            dst: *mut PF_EffectWorld,
3239        ) -> PF_Err,
3240    >,
3241    pub transfer_rect: ::std::option::Option<
3242        unsafe extern "C" fn(
3243            effect_ref: PF_ProgPtr,
3244            quality: PF_Quality,
3245            m_flags: PF_ModeFlags,
3246            field: PF_Field,
3247            src_rec: *const PF_Rect,
3248            src_world: *const PF_EffectWorld,
3249            comp_mode: *const PF_CompositeMode,
3250            mask_world0: *const PF_MaskWorld,
3251            dest_x: A_long,
3252            dest_y: A_long,
3253            dst_world: *mut PF_EffectWorld,
3254        ) -> PF_Err,
3255    >,
3256    pub transform_world: ::std::option::Option<
3257        unsafe extern "C" fn(
3258            effect_ref: PF_ProgPtr,
3259            quality: PF_Quality,
3260            m_flags: PF_ModeFlags,
3261            field: PF_Field,
3262            src_world: *const PF_EffectWorld,
3263            comp_mode: *const PF_CompositeMode,
3264            mask_world0: *const PF_MaskWorld,
3265            matrices: *const PF_FloatMatrix,
3266            num_matrices: A_long,
3267            src2dst_matrix: PF_Boolean,
3268            dest_rect: *const PF_Rect,
3269            dst_world: *mut PF_EffectWorld,
3270        ) -> PF_Err,
3271    >,
3272    pub host_new_handle:
3273        ::std::option::Option<unsafe extern "C" fn(size: A_u_longlong) -> PF_Handle>,
3274    pub host_lock_handle: ::std::option::Option<
3275        unsafe extern "C" fn(pf_handle: PF_Handle) -> *mut ::std::os::raw::c_void,
3276    >,
3277    pub host_unlock_handle: ::std::option::Option<unsafe extern "C" fn(pf_handle: PF_Handle)>,
3278    pub host_dispose_handle: ::std::option::Option<unsafe extern "C" fn(pf_handle: PF_Handle)>,
3279    pub get_callback_addr: ::std::option::Option<
3280        unsafe extern "C" fn(
3281            effect_ref: PF_ProgPtr,
3282            quality: PF_Quality,
3283            mode_flags: PF_ModeFlags,
3284            which_callback: PF_CallbackID,
3285            fn_ptr: *mut PF_CallbackFunc,
3286        ) -> PF_Err,
3287    >,
3288    pub app:
3289        ::std::option::Option<unsafe extern "C" fn(arg1: PF_ProgPtr, arg2: A_long, ...) -> PF_Err>,
3290    pub ansi: PF_ANSICallbacksBlock,
3291    pub colorCB: PF_ColorCallbacks,
3292    pub get_platform_data: ::std::option::Option<
3293        unsafe extern "C" fn(
3294            effect_ref: PF_ProgPtr,
3295            which: PF_PlatDataID,
3296            data: *mut ::std::os::raw::c_void,
3297        ) -> PF_Err,
3298    >,
3299    pub host_get_handle_size:
3300        ::std::option::Option<unsafe extern "C" fn(pf_handle: PF_Handle) -> A_u_longlong>,
3301    pub iterate_origin_non_clip_src: ::std::option::Option<
3302        unsafe extern "C" fn(
3303            in_data: *mut PF_InData,
3304            progress_base: A_long,
3305            progress_final: A_long,
3306            src: *mut PF_EffectWorld,
3307            area: *const PF_Rect,
3308            origin: *const PF_Point,
3309            refcon: *mut ::std::os::raw::c_void,
3310            pix_fn: PF_IteratePixel8Func,
3311            dst: *mut PF_EffectWorld,
3312        ) -> PF_Err,
3313    >,
3314    pub iterate_generic: ::std::option::Option<
3315        unsafe extern "C" fn(
3316            iterationsL: A_long,
3317            refconPV: *mut ::std::os::raw::c_void,
3318            fn_func: ::std::option::Option<
3319                unsafe extern "C" fn(
3320                    refconPV: *mut ::std::os::raw::c_void,
3321                    thread_indexL: A_long,
3322                    i: A_long,
3323                    iterationsL: A_long,
3324                ) -> PF_Err,
3325            >,
3326        ) -> PF_Err,
3327    >,
3328    pub host_resize_handle: ::std::option::Option<
3329        unsafe extern "C" fn(new_sizeL: A_u_longlong, handlePH: *mut PF_Handle) -> PF_Err,
3330    >,
3331    pub subpixel_sample16: ::std::option::Option<
3332        unsafe extern "C" fn(
3333            effect_ref: PF_ProgPtr,
3334            x: PF_Fixed,
3335            y: PF_Fixed,
3336            params: *const PF_SampPB,
3337            dst_pixel: *mut PF_Pixel16,
3338        ) -> PF_Err,
3339    >,
3340    pub area_sample16: ::std::option::Option<
3341        unsafe extern "C" fn(
3342            effect_ref: PF_ProgPtr,
3343            x: PF_Fixed,
3344            y: PF_Fixed,
3345            params: *const PF_SampPB,
3346            dst_pixel: *mut PF_Pixel16,
3347        ) -> PF_Err,
3348    >,
3349    pub fill16: ::std::option::Option<
3350        unsafe extern "C" fn(
3351            effect_ref: PF_ProgPtr,
3352            color: *const PF_Pixel16,
3353            dst_rect: *const PF_Rect,
3354            world: *mut PF_EffectWorld,
3355        ) -> PF_Err,
3356    >,
3357    pub premultiply_color16: ::std::option::Option<
3358        unsafe extern "C" fn(
3359            effect_ref: PF_ProgPtr,
3360            src: *mut PF_EffectWorld,
3361            color: *const PF_Pixel16,
3362            forward: A_long,
3363            dst: *mut PF_EffectWorld,
3364        ) -> PF_Err,
3365    >,
3366    pub iterate16: ::std::option::Option<
3367        unsafe extern "C" fn(
3368            in_data: *mut PF_InData,
3369            progress_base: A_long,
3370            progress_final: A_long,
3371            src: *mut PF_EffectWorld,
3372            area: *const PF_Rect,
3373            refcon: *mut ::std::os::raw::c_void,
3374            pix_fn: PF_IteratePixel16Func,
3375            dst: *mut PF_EffectWorld,
3376        ) -> PF_Err,
3377    >,
3378    pub iterate_origin16: ::std::option::Option<
3379        unsafe extern "C" fn(
3380            in_data: *mut PF_InData,
3381            progress_base: A_long,
3382            progress_final: A_long,
3383            src: *mut PF_EffectWorld,
3384            area: *const PF_Rect,
3385            origin: *const PF_Point,
3386            refcon: *mut ::std::os::raw::c_void,
3387            pix_fn: PF_IteratePixel16Func,
3388            dst: *mut PF_EffectWorld,
3389        ) -> PF_Err,
3390    >,
3391    pub iterate_origin_non_clip_src16: ::std::option::Option<
3392        unsafe extern "C" fn(
3393            in_data: *mut PF_InData,
3394            progress_base: A_long,
3395            progress_final: A_long,
3396            src: *mut PF_EffectWorld,
3397            area: *const PF_Rect,
3398            origin: *const PF_Point,
3399            refcon: *mut ::std::os::raw::c_void,
3400            pix_fn: PF_IteratePixel16Func,
3401            dst: *mut PF_EffectWorld,
3402        ) -> PF_Err,
3403    >,
3404    pub get_pixel_data8: ::std::option::Option<
3405        unsafe extern "C" fn(
3406            worldP: *mut PF_EffectWorld,
3407            pixelsP0: PF_PixelPtr,
3408            pixPP: *mut *mut PF_Pixel8,
3409        ) -> PF_Err,
3410    >,
3411    pub get_pixel_data16: ::std::option::Option<
3412        unsafe extern "C" fn(
3413            worldP: *mut PF_EffectWorld,
3414            pixelsP0: PF_PixelPtr,
3415            pixPP: *mut *mut PF_Pixel16,
3416        ) -> PF_Err,
3417    >,
3418    pub reserved: [A_long; 1usize],
3419}
3420pub type PF_UtilCallbacks = _PF_UtilCallbacks;
3421pub const PF_PixelFormat_ARGB32: _bindgen_ty_66 = 1650946657;
3422pub const PF_PixelFormat_ARGB64: _bindgen_ty_66 = 909206881;
3423pub const PF_PixelFormat_ARGB128: _bindgen_ty_66 = 842229089;
3424pub const PF_PixelFormat_GPU_BGRA128: _bindgen_ty_66 = 1094992704;
3425pub const PF_PixelFormat_RESERVED: _bindgen_ty_66 = 1631863616;
3426pub const PF_PixelFormat_BGRA32: _bindgen_ty_66 = 1634887522;
3427pub const PF_PixelFormat_VUYA32: _bindgen_ty_66 = 1635349878;
3428pub const PF_PixelFormat_NTSCDV25: _bindgen_ty_66 = 846100068;
3429pub const PF_PixelFormat_PALDV25: _bindgen_ty_66 = 846231140;
3430pub const PF_PixelFormat_INVALID: _bindgen_ty_66 = 1717854562;
3431pub const PF_PixelFormat_FORCE_LONG_INT: _bindgen_ty_66 = 4294967295;
3432pub type _bindgen_ty_66 = ::std::os::raw::c_uint;
3433pub type PF_PixelFormat = A_long;
3434#[repr(C)]
3435#[derive(Debug, Copy, Clone)]
3436pub struct PF_HandleSuite1 {
3437    pub host_new_handle:
3438        ::std::option::Option<unsafe extern "C" fn(size: A_HandleSize) -> PF_Handle>,
3439    pub host_lock_handle: ::std::option::Option<
3440        unsafe extern "C" fn(pf_handle: PF_Handle) -> *mut ::std::os::raw::c_void,
3441    >,
3442    pub host_unlock_handle: ::std::option::Option<unsafe extern "C" fn(pf_handle: PF_Handle)>,
3443    pub host_dispose_handle: ::std::option::Option<unsafe extern "C" fn(pf_handle: PF_Handle)>,
3444    pub host_get_handle_size:
3445        ::std::option::Option<unsafe extern "C" fn(pf_handle: PF_Handle) -> A_HandleSize>,
3446    pub host_resize_handle: ::std::option::Option<
3447        unsafe extern "C" fn(new_sizeL: A_HandleSize, handlePH: *mut PF_Handle) -> PF_Err,
3448    >,
3449}
3450#[repr(C)]
3451#[derive(Debug, Copy, Clone)]
3452pub struct PF_ANSICallbacksSuite1 {
3453    pub atan: ::std::option::Option<unsafe extern "C" fn(arg1: A_FpLong) -> A_FpLong>,
3454    pub atan2: ::std::option::Option<unsafe extern "C" fn(y: A_FpLong, x: A_FpLong) -> A_FpLong>,
3455    pub ceil: ::std::option::Option<unsafe extern "C" fn(arg1: A_FpLong) -> A_FpLong>,
3456    pub cos: ::std::option::Option<unsafe extern "C" fn(arg1: A_FpLong) -> A_FpLong>,
3457    pub exp: ::std::option::Option<unsafe extern "C" fn(arg1: A_FpLong) -> A_FpLong>,
3458    pub fabs: ::std::option::Option<unsafe extern "C" fn(arg1: A_FpLong) -> A_FpLong>,
3459    pub floor: ::std::option::Option<unsafe extern "C" fn(arg1: A_FpLong) -> A_FpLong>,
3460    pub fmod: ::std::option::Option<unsafe extern "C" fn(x: A_FpLong, y: A_FpLong) -> A_FpLong>,
3461    pub hypot: ::std::option::Option<unsafe extern "C" fn(x: A_FpLong, y: A_FpLong) -> A_FpLong>,
3462    pub log: ::std::option::Option<unsafe extern "C" fn(arg1: A_FpLong) -> A_FpLong>,
3463    pub log10: ::std::option::Option<unsafe extern "C" fn(arg1: A_FpLong) -> A_FpLong>,
3464    pub pow: ::std::option::Option<unsafe extern "C" fn(x: A_FpLong, y: A_FpLong) -> A_FpLong>,
3465    pub sin: ::std::option::Option<unsafe extern "C" fn(arg1: A_FpLong) -> A_FpLong>,
3466    pub sqrt: ::std::option::Option<unsafe extern "C" fn(arg1: A_FpLong) -> A_FpLong>,
3467    pub tan: ::std::option::Option<unsafe extern "C" fn(arg1: A_FpLong) -> A_FpLong>,
3468    pub sprintf: ::std::option::Option<
3469        unsafe extern "C" fn(arg1: *mut A_char, arg2: *const A_char, ...) -> ::std::os::raw::c_int,
3470    >,
3471    pub strcpy: ::std::option::Option<
3472        unsafe extern "C" fn(arg1: *mut A_char, arg2: *const A_char) -> *mut A_char,
3473    >,
3474    pub asin: ::std::option::Option<unsafe extern "C" fn(arg1: A_FpLong) -> A_FpLong>,
3475    pub acos: ::std::option::Option<unsafe extern "C" fn(arg1: A_FpLong) -> A_FpLong>,
3476}
3477#[repr(C)]
3478#[derive(Debug, Copy, Clone)]
3479pub struct PF_PixelDataSuite1 {
3480    pub get_pixel_data8: ::std::option::Option<
3481        unsafe extern "C" fn(
3482            worldP: *mut PF_EffectWorld,
3483            pixelsP0: PF_PixelPtr,
3484            pixPP: *mut *mut PF_Pixel8,
3485        ) -> PF_Err,
3486    >,
3487    pub get_pixel_data16: ::std::option::Option<
3488        unsafe extern "C" fn(
3489            worldP: *mut PF_EffectWorld,
3490            pixelsP0: PF_PixelPtr,
3491            pixPP: *mut *mut PF_Pixel16,
3492        ) -> PF_Err,
3493    >,
3494    pub get_pixel_data_float: ::std::option::Option<
3495        unsafe extern "C" fn(
3496            worldP: *mut PF_EffectWorld,
3497            pixelsP0: PF_PixelPtr,
3498            pixPP: *mut *mut PF_PixelFloat,
3499        ) -> PF_Err,
3500    >,
3501}
3502#[repr(C)]
3503#[derive(Debug, Copy, Clone)]
3504pub struct PF_PixelDataSuite2 {
3505    pub get_pixel_data8: ::std::option::Option<
3506        unsafe extern "C" fn(
3507            worldP: *mut PF_EffectWorld,
3508            pixelsP0: PF_PixelPtr,
3509            pixPP: *mut *mut PF_Pixel8,
3510        ) -> PF_Err,
3511    >,
3512    pub get_pixel_data16: ::std::option::Option<
3513        unsafe extern "C" fn(
3514            worldP: *mut PF_EffectWorld,
3515            pixelsP0: PF_PixelPtr,
3516            pixPP: *mut *mut PF_Pixel16,
3517        ) -> PF_Err,
3518    >,
3519    pub get_pixel_data_float: ::std::option::Option<
3520        unsafe extern "C" fn(
3521            worldP: *mut PF_EffectWorld,
3522            pixelsP0: PF_PixelPtr,
3523            pixPP: *mut *mut PF_PixelFloat,
3524        ) -> PF_Err,
3525    >,
3526    pub get_pixel_data_float_gpu: ::std::option::Option<
3527        unsafe extern "C" fn(
3528            worldP: *mut PF_EffectWorld,
3529            pixPP: *mut *mut ::std::os::raw::c_void,
3530        ) -> PF_Err,
3531    >,
3532}
3533#[repr(C)]
3534#[derive(Debug, Copy, Clone)]
3535pub struct PF_ColorCallbacksSuite1 {
3536    pub RGBtoHLS: ::std::option::Option<
3537        unsafe extern "C" fn(
3538            effect_ref: PF_ProgPtr,
3539            rgb: *mut PF_Pixel,
3540            hls: *mut PF_Fixed,
3541        ) -> PF_Err,
3542    >,
3543    pub HLStoRGB: ::std::option::Option<
3544        unsafe extern "C" fn(
3545            effect_ref: PF_ProgPtr,
3546            hls: *mut PF_Fixed,
3547            rgb: *mut PF_Pixel,
3548        ) -> PF_Err,
3549    >,
3550    pub RGBtoYIQ: ::std::option::Option<
3551        unsafe extern "C" fn(
3552            effect_ref: PF_ProgPtr,
3553            rgb: *mut PF_Pixel,
3554            yiq: *mut PF_Fixed,
3555        ) -> PF_Err,
3556    >,
3557    pub YIQtoRGB: ::std::option::Option<
3558        unsafe extern "C" fn(
3559            effect_ref: PF_ProgPtr,
3560            yiq: *mut PF_Fixed,
3561            rgb: *mut PF_Pixel,
3562        ) -> PF_Err,
3563    >,
3564    pub Luminance: ::std::option::Option<
3565        unsafe extern "C" fn(
3566            effect_ref: PF_ProgPtr,
3567            rgb: *mut PF_Pixel,
3568            lum100: *mut A_long,
3569        ) -> PF_Err,
3570    >,
3571    pub Hue: ::std::option::Option<
3572        unsafe extern "C" fn(
3573            effect_ref: PF_ProgPtr,
3574            rgb: *mut PF_Pixel,
3575            hue: *mut A_long,
3576        ) -> PF_Err,
3577    >,
3578    pub Lightness: ::std::option::Option<
3579        unsafe extern "C" fn(
3580            effect_ref: PF_ProgPtr,
3581            rgb: *mut PF_Pixel,
3582            lightness: *mut A_long,
3583        ) -> PF_Err,
3584    >,
3585    pub Saturation: ::std::option::Option<
3586        unsafe extern "C" fn(
3587            effect_ref: PF_ProgPtr,
3588            rgb: *mut PF_Pixel,
3589            saturation: *mut A_long,
3590        ) -> PF_Err,
3591    >,
3592}
3593#[repr(C)]
3594#[derive(Debug, Copy, Clone)]
3595pub struct PF_ColorCallbacks16Suite1 {
3596    pub RGBtoHLS: ::std::option::Option<
3597        unsafe extern "C" fn(
3598            effect_ref: PF_ProgPtr,
3599            rgb: *mut PF_Pixel16,
3600            hls: *mut PF_Fixed,
3601        ) -> PF_Err,
3602    >,
3603    pub HLStoRGB: ::std::option::Option<
3604        unsafe extern "C" fn(
3605            effect_ref: PF_ProgPtr,
3606            hls: *mut PF_Fixed,
3607            rgb: *mut PF_Pixel16,
3608        ) -> PF_Err,
3609    >,
3610    pub RGBtoYIQ: ::std::option::Option<
3611        unsafe extern "C" fn(
3612            effect_ref: PF_ProgPtr,
3613            rgb: *mut PF_Pixel16,
3614            yiq: *mut PF_Fixed,
3615        ) -> PF_Err,
3616    >,
3617    pub YIQtoRGB: ::std::option::Option<
3618        unsafe extern "C" fn(
3619            effect_ref: PF_ProgPtr,
3620            yiq: *mut PF_Fixed,
3621            rgb: *mut PF_Pixel16,
3622        ) -> PF_Err,
3623    >,
3624    pub Luminance: ::std::option::Option<
3625        unsafe extern "C" fn(
3626            effect_ref: PF_ProgPtr,
3627            rgb: *mut PF_Pixel16,
3628            lum100: *mut A_long,
3629        ) -> PF_Err,
3630    >,
3631    pub Hue: ::std::option::Option<
3632        unsafe extern "C" fn(
3633            effect_ref: PF_ProgPtr,
3634            rgb: *mut PF_Pixel16,
3635            hue: *mut A_long,
3636        ) -> PF_Err,
3637    >,
3638    pub Lightness: ::std::option::Option<
3639        unsafe extern "C" fn(
3640            effect_ref: PF_ProgPtr,
3641            rgb: *mut PF_Pixel16,
3642            lightness: *mut A_long,
3643        ) -> PF_Err,
3644    >,
3645    pub Saturation: ::std::option::Option<
3646        unsafe extern "C" fn(
3647            effect_ref: PF_ProgPtr,
3648            rgb: *mut PF_Pixel16,
3649            saturation: *mut A_long,
3650        ) -> PF_Err,
3651    >,
3652}
3653#[repr(C)]
3654#[derive(Debug, Copy, Clone)]
3655pub struct PF_ColorCallbacksFloatSuite1 {
3656    pub RGBtoHLS: ::std::option::Option<
3657        unsafe extern "C" fn(
3658            effect_ref: PF_ProgPtr,
3659            rgb: *mut PF_PixelFloat,
3660            hls: *mut PF_Fixed,
3661        ) -> PF_Err,
3662    >,
3663    pub HLStoRGB: ::std::option::Option<
3664        unsafe extern "C" fn(
3665            effect_ref: PF_ProgPtr,
3666            hls: *mut PF_Fixed,
3667            rgb: *mut PF_PixelFloat,
3668        ) -> PF_Err,
3669    >,
3670    pub RGBtoYIQ: ::std::option::Option<
3671        unsafe extern "C" fn(
3672            effect_ref: PF_ProgPtr,
3673            rgb: *mut PF_PixelFloat,
3674            yiq: *mut PF_Fixed,
3675        ) -> PF_Err,
3676    >,
3677    pub YIQtoRGB: ::std::option::Option<
3678        unsafe extern "C" fn(
3679            effect_ref: PF_ProgPtr,
3680            yiq: *mut PF_Fixed,
3681            rgb: *mut PF_PixelFloat,
3682        ) -> PF_Err,
3683    >,
3684    pub Luminance: ::std::option::Option<
3685        unsafe extern "C" fn(
3686            effect_ref: PF_ProgPtr,
3687            rgb: *mut PF_PixelFloat,
3688            lumP: *mut f32,
3689        ) -> PF_Err,
3690    >,
3691    pub Hue: ::std::option::Option<
3692        unsafe extern "C" fn(
3693            effect_ref: PF_ProgPtr,
3694            rgb: *mut PF_PixelFloat,
3695            hue: *mut f32,
3696        ) -> PF_Err,
3697    >,
3698    pub Lightness: ::std::option::Option<
3699        unsafe extern "C" fn(
3700            effect_ref: PF_ProgPtr,
3701            rgb: *mut PF_PixelFloat,
3702            lightness: *mut f32,
3703        ) -> PF_Err,
3704    >,
3705    pub Saturation: ::std::option::Option<
3706        unsafe extern "C" fn(
3707            effect_ref: PF_ProgPtr,
3708            rgb: *mut PF_PixelFloat,
3709            saturation: *mut f32,
3710        ) -> PF_Err,
3711    >,
3712}
3713#[repr(C)]
3714#[derive(Debug, Copy, Clone)]
3715pub struct PF_BatchSamplingSuite1 {
3716    pub begin_sampling: ::std::option::Option<
3717        unsafe extern "C" fn(
3718            effect_ref: PF_ProgPtr,
3719            qual: PF_Quality,
3720            mf: PF_ModeFlags,
3721            params: *mut PF_SampPB,
3722        ) -> PF_Err,
3723    >,
3724    pub end_sampling: ::std::option::Option<
3725        unsafe extern "C" fn(
3726            effect_ref: PF_ProgPtr,
3727            qual: PF_Quality,
3728            mf: PF_ModeFlags,
3729            params: *mut PF_SampPB,
3730        ) -> PF_Err,
3731    >,
3732    pub get_batch_func: ::std::option::Option<
3733        unsafe extern "C" fn(
3734            effect_ref: PF_ProgPtr,
3735            quality: PF_Quality,
3736            mode_flags: PF_ModeFlags,
3737            params: *const PF_SampPB,
3738            batch: *mut PF_BatchSampleFunc,
3739        ) -> PF_Err,
3740    >,
3741    pub get_batch_func16: ::std::option::Option<
3742        unsafe extern "C" fn(
3743            effect_ref: PF_ProgPtr,
3744            quality: PF_Quality,
3745            mode_flags: PF_ModeFlags,
3746            params: *const PF_SampPB,
3747            batch: *mut PF_BatchSample16Func,
3748        ) -> PF_Err,
3749    >,
3750}
3751#[repr(C)]
3752#[derive(Debug, Copy, Clone)]
3753pub struct PF_Sampling8Suite1 {
3754    pub nn_sample: ::std::option::Option<
3755        unsafe extern "C" fn(
3756            effect_ref: PF_ProgPtr,
3757            x: PF_Fixed,
3758            y: PF_Fixed,
3759            params: *const PF_SampPB,
3760            dst_pixel: *mut PF_Pixel,
3761        ) -> PF_Err,
3762    >,
3763    pub subpixel_sample: ::std::option::Option<
3764        unsafe extern "C" fn(
3765            effect_ref: PF_ProgPtr,
3766            x: PF_Fixed,
3767            y: PF_Fixed,
3768            params: *const PF_SampPB,
3769            dst_pixel: *mut PF_Pixel,
3770        ) -> PF_Err,
3771    >,
3772    pub area_sample: ::std::option::Option<
3773        unsafe extern "C" fn(
3774            effect_ref: PF_ProgPtr,
3775            x: PF_Fixed,
3776            y: PF_Fixed,
3777            params: *const PF_SampPB,
3778            dst_pixel: *mut PF_Pixel,
3779        ) -> PF_Err,
3780    >,
3781}
3782#[repr(C)]
3783#[derive(Debug, Copy, Clone)]
3784pub struct PF_Sampling16Suite1 {
3785    pub nn_sample16: ::std::option::Option<
3786        unsafe extern "C" fn(
3787            effect_ref: PF_ProgPtr,
3788            x: PF_Fixed,
3789            y: PF_Fixed,
3790            params: *const PF_SampPB,
3791            dst_pixel: *mut PF_Pixel16,
3792        ) -> PF_Err,
3793    >,
3794    pub subpixel_sample16: ::std::option::Option<
3795        unsafe extern "C" fn(
3796            effect_ref: PF_ProgPtr,
3797            x: PF_Fixed,
3798            y: PF_Fixed,
3799            params: *const PF_SampPB,
3800            dst_pixel: *mut PF_Pixel16,
3801        ) -> PF_Err,
3802    >,
3803    pub area_sample16: ::std::option::Option<
3804        unsafe extern "C" fn(
3805            effect_ref: PF_ProgPtr,
3806            x: PF_Fixed,
3807            y: PF_Fixed,
3808            params: *const PF_SampPB,
3809            dst_pixel: *mut PF_Pixel16,
3810        ) -> PF_Err,
3811    >,
3812}
3813#[repr(C)]
3814#[derive(Debug, Copy, Clone)]
3815pub struct PF_SamplingFloatSuite1 {
3816    pub nn_sample_float: ::std::option::Option<
3817        unsafe extern "C" fn(
3818            effect_ref: PF_ProgPtr,
3819            x: PF_Fixed,
3820            y: PF_Fixed,
3821            params: *const PF_SampPB,
3822            dst_pixel: *mut PF_PixelFloat,
3823        ) -> PF_Err,
3824    >,
3825    pub subpixel_sample_float: ::std::option::Option<
3826        unsafe extern "C" fn(
3827            effect_ref: PF_ProgPtr,
3828            x: PF_Fixed,
3829            y: PF_Fixed,
3830            params: *const PF_SampPB,
3831            dst_pixel: *mut PF_PixelFloat,
3832        ) -> PF_Err,
3833    >,
3834    pub area_sample_float: ::std::option::Option<
3835        unsafe extern "C" fn(
3836            effect_ref: PF_ProgPtr,
3837            x: PF_Fixed,
3838            y: PF_Fixed,
3839            params: *const PF_SampPB,
3840            dst_pixel: *mut PF_PixelFloat,
3841        ) -> PF_Err,
3842    >,
3843}
3844#[repr(C)]
3845#[derive(Debug, Copy, Clone)]
3846pub struct PF_WorldSuite2 {
3847    pub PF_NewWorld: ::std::option::Option<
3848        unsafe extern "C" fn(
3849            effect_ref: PF_ProgPtr,
3850            widthL: A_long,
3851            heightL: A_long,
3852            clear_pixB: PF_Boolean,
3853            pixel_format: PF_PixelFormat,
3854            worldP: *mut PF_EffectWorld,
3855        ) -> PF_Err,
3856    >,
3857    pub PF_DisposeWorld: ::std::option::Option<
3858        unsafe extern "C" fn(effect_ref: PF_ProgPtr, worldP: *mut PF_EffectWorld) -> PF_Err,
3859    >,
3860    pub PF_GetPixelFormat: ::std::option::Option<
3861        unsafe extern "C" fn(
3862            worldP: *const PF_EffectWorld,
3863            pixel_formatP: *mut PF_PixelFormat,
3864        ) -> PF_Err,
3865    >,
3866}
3867#[repr(C)]
3868#[derive(Debug, Copy, Clone)]
3869pub struct PF_PixelFormatSuite2 {
3870    pub PF_AddSupportedPixelFormat: ::std::option::Option<
3871        unsafe extern "C" fn(effect_ref: PF_ProgPtr, pixel_format: PF_PixelFormat) -> PF_Err,
3872    >,
3873    pub PF_ClearSupportedPixelFormats:
3874        ::std::option::Option<unsafe extern "C" fn(effect_ref: PF_ProgPtr) -> PF_Err>,
3875}
3876#[repr(C)]
3877#[derive(Debug, Copy, Clone)]
3878pub struct PF_WorldSuite1 {
3879    pub new_world: ::std::option::Option<
3880        unsafe extern "C" fn(
3881            effect_ref: PF_ProgPtr,
3882            width: A_long,
3883            height: A_long,
3884            flags: PF_NewWorldFlags,
3885            world: *mut PF_EffectWorld,
3886        ) -> PF_Err,
3887    >,
3888    pub dispose_world: ::std::option::Option<
3889        unsafe extern "C" fn(effect_ref: PF_ProgPtr, world: *mut PF_EffectWorld) -> PF_Err,
3890    >,
3891}
3892#[repr(C)]
3893#[derive(Debug, Copy, Clone)]
3894pub struct PF_Iterate8Suite1 {
3895    pub iterate: ::std::option::Option<
3896        unsafe extern "C" fn(
3897            in_data: *mut PF_InData,
3898            progress_base: A_long,
3899            progress_final: A_long,
3900            src: *mut PF_EffectWorld,
3901            area: *const PF_Rect,
3902            refcon: *mut ::std::os::raw::c_void,
3903            pix_fn: ::std::option::Option<
3904                unsafe extern "C" fn(
3905                    refcon: *mut ::std::os::raw::c_void,
3906                    x: A_long,
3907                    y: A_long,
3908                    in_: *mut PF_Pixel,
3909                    out: *mut PF_Pixel,
3910                ) -> PF_Err,
3911            >,
3912            dst: *mut PF_EffectWorld,
3913        ) -> PF_Err,
3914    >,
3915    pub iterate_origin: ::std::option::Option<
3916        unsafe extern "C" fn(
3917            in_data: *mut PF_InData,
3918            progress_base: A_long,
3919            progress_final: A_long,
3920            src: *mut PF_EffectWorld,
3921            area: *const PF_Rect,
3922            origin: *const PF_Point,
3923            refcon: *mut ::std::os::raw::c_void,
3924            pix_fn: ::std::option::Option<
3925                unsafe extern "C" fn(
3926                    refcon: *mut ::std::os::raw::c_void,
3927                    x: A_long,
3928                    y: A_long,
3929                    in_: *mut PF_Pixel,
3930                    out: *mut PF_Pixel,
3931                ) -> PF_Err,
3932            >,
3933            dst: *mut PF_EffectWorld,
3934        ) -> PF_Err,
3935    >,
3936    pub iterate_lut: ::std::option::Option<
3937        unsafe extern "C" fn(
3938            in_data: *mut PF_InData,
3939            progress_base: A_long,
3940            progress_final: A_long,
3941            src: *mut PF_EffectWorld,
3942            area: *const PF_Rect,
3943            a_lut0: *mut A_u_char,
3944            r_lut0: *mut A_u_char,
3945            g_lut0: *mut A_u_char,
3946            b_lut0: *mut A_u_char,
3947            dst: *mut PF_EffectWorld,
3948        ) -> PF_Err,
3949    >,
3950    pub iterate_origin_non_clip_src: ::std::option::Option<
3951        unsafe extern "C" fn(
3952            in_data: *mut PF_InData,
3953            progress_base: A_long,
3954            progress_final: A_long,
3955            src: *mut PF_EffectWorld,
3956            area: *const PF_Rect,
3957            origin: *const PF_Point,
3958            refcon: *mut ::std::os::raw::c_void,
3959            pix_fn: ::std::option::Option<
3960                unsafe extern "C" fn(
3961                    refcon: *mut ::std::os::raw::c_void,
3962                    x: A_long,
3963                    y: A_long,
3964                    in_: *mut PF_Pixel,
3965                    out: *mut PF_Pixel,
3966                ) -> PF_Err,
3967            >,
3968            dst: *mut PF_EffectWorld,
3969        ) -> PF_Err,
3970    >,
3971    pub iterate_generic: ::std::option::Option<
3972        unsafe extern "C" fn(
3973            iterationsL: A_long,
3974            refconPV: *mut ::std::os::raw::c_void,
3975            fn_func: ::std::option::Option<
3976                unsafe extern "C" fn(
3977                    refconPV: *mut ::std::os::raw::c_void,
3978                    thread_indexL: A_long,
3979                    i: A_long,
3980                    iterationsL: A_long,
3981                ) -> PF_Err,
3982            >,
3983        ) -> PF_Err,
3984    >,
3985}
3986#[repr(C)]
3987#[derive(Debug, Copy, Clone)]
3988pub struct PF_Iterate8Suite2 {
3989    pub iterate: ::std::option::Option<
3990        unsafe extern "C" fn(
3991            in_data: *mut PF_InData,
3992            progress_base: A_long,
3993            progress_final: A_long,
3994            src: *mut PF_EffectWorld,
3995            area: *const PF_Rect,
3996            refcon: *mut ::std::os::raw::c_void,
3997            pix_fn: ::std::option::Option<
3998                unsafe extern "C" fn(
3999                    refcon: *mut ::std::os::raw::c_void,
4000                    x: A_long,
4001                    y: A_long,
4002                    in_: *mut PF_Pixel,
4003                    out: *mut PF_Pixel,
4004                ) -> PF_Err,
4005            >,
4006            dst: *mut PF_EffectWorld,
4007        ) -> PF_Err,
4008    >,
4009    pub iterate_origin: ::std::option::Option<
4010        unsafe extern "C" fn(
4011            in_data: *mut PF_InData,
4012            progress_base: A_long,
4013            progress_final: A_long,
4014            src: *mut PF_EffectWorld,
4015            area: *const PF_Rect,
4016            origin: *const PF_Point,
4017            refcon: *mut ::std::os::raw::c_void,
4018            pix_fn: ::std::option::Option<
4019                unsafe extern "C" fn(
4020                    refcon: *mut ::std::os::raw::c_void,
4021                    x: A_long,
4022                    y: A_long,
4023                    in_: *mut PF_Pixel,
4024                    out: *mut PF_Pixel,
4025                ) -> PF_Err,
4026            >,
4027            dst: *mut PF_EffectWorld,
4028        ) -> PF_Err,
4029    >,
4030    pub iterate_lut: ::std::option::Option<
4031        unsafe extern "C" fn(
4032            in_data: *mut PF_InData,
4033            progress_base: A_long,
4034            progress_final: A_long,
4035            src: *mut PF_EffectWorld,
4036            area: *const PF_Rect,
4037            a_lut0: *mut A_u_char,
4038            r_lut0: *mut A_u_char,
4039            g_lut0: *mut A_u_char,
4040            b_lut0: *mut A_u_char,
4041            dst: *mut PF_EffectWorld,
4042        ) -> PF_Err,
4043    >,
4044    pub iterate_origin_non_clip_src: ::std::option::Option<
4045        unsafe extern "C" fn(
4046            in_data: *mut PF_InData,
4047            progress_base: A_long,
4048            progress_final: A_long,
4049            src: *mut PF_EffectWorld,
4050            area: *const PF_Rect,
4051            origin: *const PF_Point,
4052            refcon: *mut ::std::os::raw::c_void,
4053            pix_fn: ::std::option::Option<
4054                unsafe extern "C" fn(
4055                    refcon: *mut ::std::os::raw::c_void,
4056                    x: A_long,
4057                    y: A_long,
4058                    in_: *mut PF_Pixel,
4059                    out: *mut PF_Pixel,
4060                ) -> PF_Err,
4061            >,
4062            dst: *mut PF_EffectWorld,
4063        ) -> PF_Err,
4064    >,
4065    pub iterate_generic: ::std::option::Option<
4066        unsafe extern "C" fn(
4067            iterationsL: A_long,
4068            refconPV: *mut ::std::os::raw::c_void,
4069            fn_func: ::std::option::Option<
4070                unsafe extern "C" fn(
4071                    refconPV: *mut ::std::os::raw::c_void,
4072                    thread_indexL: A_long,
4073                    i: A_long,
4074                    iterationsL: A_long,
4075                ) -> PF_Err,
4076            >,
4077        ) -> PF_Err,
4078    >,
4079}
4080#[repr(C)]
4081#[derive(Debug, Copy, Clone)]
4082pub struct PF_iterate16Suite1 {
4083    pub iterate: ::std::option::Option<
4084        unsafe extern "C" fn(
4085            in_data: *mut PF_InData,
4086            progress_base: A_long,
4087            progress_final: A_long,
4088            src: *mut PF_EffectWorld,
4089            area: *const PF_Rect,
4090            refcon: *mut ::std::os::raw::c_void,
4091            pix_fn: ::std::option::Option<
4092                unsafe extern "C" fn(
4093                    refcon: *mut ::std::os::raw::c_void,
4094                    x: A_long,
4095                    y: A_long,
4096                    in_: *mut PF_Pixel16,
4097                    out: *mut PF_Pixel16,
4098                ) -> PF_Err,
4099            >,
4100            dst: *mut PF_EffectWorld,
4101        ) -> PF_Err,
4102    >,
4103    pub iterate_origin: ::std::option::Option<
4104        unsafe extern "C" fn(
4105            in_data: *mut PF_InData,
4106            progress_base: A_long,
4107            progress_final: A_long,
4108            src: *mut PF_EffectWorld,
4109            area: *const PF_Rect,
4110            origin: *const PF_Point,
4111            refcon: *mut ::std::os::raw::c_void,
4112            pix_fn: ::std::option::Option<
4113                unsafe extern "C" fn(
4114                    refcon: *mut ::std::os::raw::c_void,
4115                    x: A_long,
4116                    y: A_long,
4117                    in_: *mut PF_Pixel16,
4118                    out: *mut PF_Pixel16,
4119                ) -> PF_Err,
4120            >,
4121            dst: *mut PF_EffectWorld,
4122        ) -> PF_Err,
4123    >,
4124    pub iterate_origin_non_clip_src: ::std::option::Option<
4125        unsafe extern "C" fn(
4126            in_data: *mut PF_InData,
4127            progress_base: A_long,
4128            progress_final: A_long,
4129            src: *mut PF_EffectWorld,
4130            area: *const PF_Rect,
4131            origin: *const PF_Point,
4132            refcon: *mut ::std::os::raw::c_void,
4133            pix_fn: ::std::option::Option<
4134                unsafe extern "C" fn(
4135                    refcon: *mut ::std::os::raw::c_void,
4136                    x: A_long,
4137                    y: A_long,
4138                    in_: *mut PF_Pixel16,
4139                    out: *mut PF_Pixel16,
4140                ) -> PF_Err,
4141            >,
4142            dst: *mut PF_EffectWorld,
4143        ) -> PF_Err,
4144    >,
4145}
4146pub type PF_Iterate16Suite1 = PF_iterate16Suite1;
4147#[repr(C)]
4148#[derive(Debug, Copy, Clone)]
4149pub struct PF_iterate16Suite2 {
4150    pub iterate: ::std::option::Option<
4151        unsafe extern "C" fn(
4152            in_data: *mut PF_InData,
4153            progress_base: A_long,
4154            progress_final: A_long,
4155            src: *mut PF_EffectWorld,
4156            area: *const PF_Rect,
4157            refcon: *mut ::std::os::raw::c_void,
4158            pix_fn: ::std::option::Option<
4159                unsafe extern "C" fn(
4160                    refcon: *mut ::std::os::raw::c_void,
4161                    x: A_long,
4162                    y: A_long,
4163                    in_: *mut PF_Pixel16,
4164                    out: *mut PF_Pixel16,
4165                ) -> PF_Err,
4166            >,
4167            dst: *mut PF_EffectWorld,
4168        ) -> PF_Err,
4169    >,
4170    pub iterate_origin: ::std::option::Option<
4171        unsafe extern "C" fn(
4172            in_data: *mut PF_InData,
4173            progress_base: A_long,
4174            progress_final: A_long,
4175            src: *mut PF_EffectWorld,
4176            area: *const PF_Rect,
4177            origin: *const PF_Point,
4178            refcon: *mut ::std::os::raw::c_void,
4179            pix_fn: ::std::option::Option<
4180                unsafe extern "C" fn(
4181                    refcon: *mut ::std::os::raw::c_void,
4182                    x: A_long,
4183                    y: A_long,
4184                    in_: *mut PF_Pixel16,
4185                    out: *mut PF_Pixel16,
4186                ) -> PF_Err,
4187            >,
4188            dst: *mut PF_EffectWorld,
4189        ) -> PF_Err,
4190    >,
4191    pub iterate_origin_non_clip_src: ::std::option::Option<
4192        unsafe extern "C" fn(
4193            in_data: *mut PF_InData,
4194            progress_base: A_long,
4195            progress_final: A_long,
4196            src: *mut PF_EffectWorld,
4197            area: *const PF_Rect,
4198            origin: *const PF_Point,
4199            refcon: *mut ::std::os::raw::c_void,
4200            pix_fn: ::std::option::Option<
4201                unsafe extern "C" fn(
4202                    refcon: *mut ::std::os::raw::c_void,
4203                    x: A_long,
4204                    y: A_long,
4205                    in_: *mut PF_Pixel16,
4206                    out: *mut PF_Pixel16,
4207                ) -> PF_Err,
4208            >,
4209            dst: *mut PF_EffectWorld,
4210        ) -> PF_Err,
4211    >,
4212}
4213pub type PF_Iterate16Suite2 = PF_iterate16Suite2;
4214#[repr(C)]
4215#[derive(Debug, Copy, Clone)]
4216pub struct PF_iterateFloatSuite1 {
4217    pub iterate: ::std::option::Option<
4218        unsafe extern "C" fn(
4219            in_data: *mut PF_InData,
4220            progress_base: A_long,
4221            progress_final: A_long,
4222            src: *mut PF_EffectWorld,
4223            area: *const PF_Rect,
4224            refcon: *mut ::std::os::raw::c_void,
4225            pix_fn: PF_IteratePixelFloatFunc,
4226            dst: *mut PF_EffectWorld,
4227        ) -> PF_Err,
4228    >,
4229    pub iterate_origin: ::std::option::Option<
4230        unsafe extern "C" fn(
4231            in_data: *mut PF_InData,
4232            progress_base: A_long,
4233            progress_final: A_long,
4234            src: *mut PF_EffectWorld,
4235            area: *const PF_Rect,
4236            origin: *const PF_Point,
4237            refcon: *mut ::std::os::raw::c_void,
4238            pix_fn: PF_IteratePixelFloatFunc,
4239            dst: *mut PF_EffectWorld,
4240        ) -> PF_Err,
4241    >,
4242    pub iterate_origin_non_clip_src: ::std::option::Option<
4243        unsafe extern "C" fn(
4244            in_data: *mut PF_InData,
4245            progress_base: A_long,
4246            progress_final: A_long,
4247            src: *mut PF_EffectWorld,
4248            area: *const PF_Rect,
4249            origin: *const PF_Point,
4250            refcon: *mut ::std::os::raw::c_void,
4251            pix_fn: PF_IteratePixelFloatFunc,
4252            dst: *mut PF_EffectWorld,
4253        ) -> PF_Err,
4254    >,
4255}
4256pub type PF_IterateFloatSuite1 = PF_iterateFloatSuite1;
4257#[repr(C)]
4258#[derive(Debug, Copy, Clone)]
4259pub struct PF_iterateFloatSuite2 {
4260    pub iterate: ::std::option::Option<
4261        unsafe extern "C" fn(
4262            in_data: *mut PF_InData,
4263            progress_base: A_long,
4264            progress_final: A_long,
4265            src: *mut PF_EffectWorld,
4266            area: *const PF_Rect,
4267            refcon: *mut ::std::os::raw::c_void,
4268            pix_fn: PF_IteratePixelFloatFunc,
4269            dst: *mut PF_EffectWorld,
4270        ) -> PF_Err,
4271    >,
4272    pub iterate_origin: ::std::option::Option<
4273        unsafe extern "C" fn(
4274            in_data: *mut PF_InData,
4275            progress_base: A_long,
4276            progress_final: A_long,
4277            src: *mut PF_EffectWorld,
4278            area: *const PF_Rect,
4279            origin: *const PF_Point,
4280            refcon: *mut ::std::os::raw::c_void,
4281            pix_fn: PF_IteratePixelFloatFunc,
4282            dst: *mut PF_EffectWorld,
4283        ) -> PF_Err,
4284    >,
4285    pub iterate_origin_non_clip_src: ::std::option::Option<
4286        unsafe extern "C" fn(
4287            in_data: *mut PF_InData,
4288            progress_base: A_long,
4289            progress_final: A_long,
4290            src: *mut PF_EffectWorld,
4291            area: *const PF_Rect,
4292            origin: *const PF_Point,
4293            refcon: *mut ::std::os::raw::c_void,
4294            pix_fn: PF_IteratePixelFloatFunc,
4295            dst: *mut PF_EffectWorld,
4296        ) -> PF_Err,
4297    >,
4298}
4299pub type PF_IterateFloatSuite2 = PF_iterateFloatSuite2;
4300#[repr(C)]
4301#[derive(Debug, Copy, Clone)]
4302pub struct PF_WorldTransformSuite1 {
4303    pub composite_rect: ::std::option::Option<
4304        unsafe extern "C" fn(
4305            effect_ref: PF_ProgPtr,
4306            src_rect: *mut PF_Rect,
4307            src_opacity: A_long,
4308            source_wld: *mut PF_EffectWorld,
4309            dest_x: A_long,
4310            dest_y: A_long,
4311            field_rdr: PF_Field,
4312            xfer_mode: PF_XferMode,
4313            dest_wld: *mut PF_EffectWorld,
4314        ) -> PF_Err,
4315    >,
4316    pub blend: ::std::option::Option<
4317        unsafe extern "C" fn(
4318            effect_ref: PF_ProgPtr,
4319            src1: *const PF_EffectWorld,
4320            src2: *const PF_EffectWorld,
4321            ratio: PF_Fixed,
4322            dst: *mut PF_EffectWorld,
4323        ) -> PF_Err,
4324    >,
4325    pub convolve: ::std::option::Option<
4326        unsafe extern "C" fn(
4327            effect_ref: PF_ProgPtr,
4328            src: *mut PF_EffectWorld,
4329            area: *const PF_Rect,
4330            flags: PF_KernelFlags,
4331            kernel_size: A_long,
4332            a_kernel: *mut ::std::os::raw::c_void,
4333            r_kernel: *mut ::std::os::raw::c_void,
4334            g_kernel: *mut ::std::os::raw::c_void,
4335            b_kernel: *mut ::std::os::raw::c_void,
4336            dst: *mut PF_EffectWorld,
4337        ) -> PF_Err,
4338    >,
4339    pub copy: ::std::option::Option<
4340        unsafe extern "C" fn(
4341            effect_ref: PF_ProgPtr,
4342            src: *mut PF_EffectWorld,
4343            dst: *mut PF_EffectWorld,
4344            src_r: *mut PF_Rect,
4345            dst_r: *mut PF_Rect,
4346        ) -> PF_Err,
4347    >,
4348    pub copy_hq: ::std::option::Option<
4349        unsafe extern "C" fn(
4350            effect_ref: PF_ProgPtr,
4351            src: *mut PF_EffectWorld,
4352            dst: *mut PF_EffectWorld,
4353            src_r: *mut PF_Rect,
4354            dst_r: *mut PF_Rect,
4355        ) -> PF_Err,
4356    >,
4357    pub transfer_rect: ::std::option::Option<
4358        unsafe extern "C" fn(
4359            effect_ref: PF_ProgPtr,
4360            quality: PF_Quality,
4361            m_flags: PF_ModeFlags,
4362            field: PF_Field,
4363            src_rec: *const PF_Rect,
4364            src_world: *const PF_EffectWorld,
4365            comp_mode: *const PF_CompositeMode,
4366            mask_world0: *const PF_MaskWorld,
4367            dest_x: A_long,
4368            dest_y: A_long,
4369            dst_world: *mut PF_EffectWorld,
4370        ) -> PF_Err,
4371    >,
4372    pub transform_world: ::std::option::Option<
4373        unsafe extern "C" fn(
4374            effect_ref: PF_ProgPtr,
4375            quality: PF_Quality,
4376            m_flags: PF_ModeFlags,
4377            field: PF_Field,
4378            src_world: *const PF_EffectWorld,
4379            comp_mode: *const PF_CompositeMode,
4380            mask_world0: *const PF_MaskWorld,
4381            matrices: *const PF_FloatMatrix,
4382            num_matrices: A_long,
4383            src2dst_matrix: PF_Boolean,
4384            dest_rect: *const PF_Rect,
4385            dst_world: *mut PF_EffectWorld,
4386        ) -> PF_Err,
4387    >,
4388}
4389#[repr(C)]
4390#[derive(Debug, Copy, Clone)]
4391pub struct PF_FillMatteSuite2 {
4392    pub fill: ::std::option::Option<
4393        unsafe extern "C" fn(
4394            effect_ref: PF_ProgPtr,
4395            color: *const PF_Pixel,
4396            dst_rect: *const PF_Rect,
4397            world: *mut PF_EffectWorld,
4398        ) -> PF_Err,
4399    >,
4400    pub fill16: ::std::option::Option<
4401        unsafe extern "C" fn(
4402            effect_ref: PF_ProgPtr,
4403            color: *const PF_Pixel16,
4404            dst_rect: *const PF_Rect,
4405            world: *mut PF_EffectWorld,
4406        ) -> PF_Err,
4407    >,
4408    pub fill_float: ::std::option::Option<
4409        unsafe extern "C" fn(
4410            effect_ref: PF_ProgPtr,
4411            color: *const PF_PixelFloat,
4412            dst_rect: *const PF_Rect,
4413            world: *mut PF_EffectWorld,
4414        ) -> PF_Err,
4415    >,
4416    pub premultiply: ::std::option::Option<
4417        unsafe extern "C" fn(
4418            effect_ref: PF_ProgPtr,
4419            forward: A_long,
4420            dst: *mut PF_EffectWorld,
4421        ) -> PF_Err,
4422    >,
4423    pub premultiply_color: ::std::option::Option<
4424        unsafe extern "C" fn(
4425            effect_ref: PF_ProgPtr,
4426            src: *mut PF_EffectWorld,
4427            color: *const PF_Pixel,
4428            forward: A_long,
4429            dst: *mut PF_EffectWorld,
4430        ) -> PF_Err,
4431    >,
4432    pub premultiply_color16: ::std::option::Option<
4433        unsafe extern "C" fn(
4434            effect_ref: PF_ProgPtr,
4435            src: *mut PF_EffectWorld,
4436            color: *const PF_Pixel16,
4437            forward: A_long,
4438            dst: *mut PF_EffectWorld,
4439        ) -> PF_Err,
4440    >,
4441    pub premultiply_color_float: ::std::option::Option<
4442        unsafe extern "C" fn(
4443            effect_ref: PF_ProgPtr,
4444            src: *mut PF_EffectWorld,
4445            color: *const PF_PixelFloat,
4446            forward: A_long,
4447            dst: *mut PF_EffectWorld,
4448        ) -> PF_Err,
4449    >,
4450}
4451#[repr(C)]
4452#[derive(Debug, Copy, Clone)]
4453pub struct PF_GPUDeviceInfo {
4454    pub device_framework: PF_GPU_Framework,
4455    pub compatibleB: PF_Boolean,
4456    pub platformPV: *mut ::std::os::raw::c_void,
4457    pub devicePV: *mut ::std::os::raw::c_void,
4458    pub contextPV: *mut ::std::os::raw::c_void,
4459    pub command_queuePV: *mut ::std::os::raw::c_void,
4460    pub offscreen_opengl_contextPV: *mut ::std::os::raw::c_void,
4461    pub offscreen_opengl_devicePV: *mut ::std::os::raw::c_void,
4462}
4463#[repr(C)]
4464#[derive(Debug, Copy, Clone)]
4465pub struct PF_GPUDeviceSuite1 {
4466    #[doc = "\tThis will return the number of gpu devices the host supports.\n\n\t@param\teffect_ref\t\t\t\t\t\t\t\tComes with PF_InData.\n\t@param\tdevice_countP\t\t\t\t\t\t\tReturn number of devices available."]
4467    pub GetDeviceCount: ::std::option::Option<
4468        unsafe extern "C" fn(effect_ref: PF_ProgPtr, device_countP: *mut A_u_long) -> PF_Err,
4469    >,
4470    #[doc = "\tThis will return the device info with given device index, which includes necessary context/queue information\n\tneeded to dispatch task to the device. Refer PF_GPUDeviceInfo for details.\n\n\t@param\teffect_ref\t\t\t\t\t\t\t\tComes with PF_InData.\n\t@param\tdevice_index\t\t\t\t\t\t\tThe device index for the requested device.\n\t@param\tPF_GPUDeviceInfo\t\t\t\t\t\tThe device info will to be filled."]
4471    pub GetDeviceInfo: ::std::option::Option<
4472        unsafe extern "C" fn(
4473            effect_ref: PF_ProgPtr,
4474            device_index: A_u_long,
4475            device_infoP: *mut PF_GPUDeviceInfo,
4476        ) -> PF_Err,
4477    >,
4478    #[doc = "\tAcquire/release exclusive access to inDeviceIndex. All calls below this point generally require access be held.\n\tFor full GPU plugins (those that use a separate entry point for GPU rendering) exclusive access is always held.\n\tThese calls do not need to be made in that case.\n\t\tFor CUDA calls cuCtxPushCurrent/cuCtxPopCurrent on the current thread to manage the devices context."]
4479    pub AcquireExclusiveDeviceAccess: ::std::option::Option<
4480        unsafe extern "C" fn(effect_ref: PF_ProgPtr, device_index: A_u_long) -> PF_Err,
4481    >,
4482    pub ReleaseExclusiveDeviceAccess: ::std::option::Option<
4483        unsafe extern "C" fn(effect_ref: PF_ProgPtr, device_index: A_u_long) -> PF_Err,
4484    >,
4485    #[doc = "\tAll device memory must be allocated through this suite.\n\t\tPurge should be called only in emergency situations when working with GPU memory\n\t\t\tthat cannot be allocated through this suite (eg OpenGL memory).\n\t\tReturned pointer value represents memory allocated through cuMemAlloc or clCreateBuffer or CreateCommittedResource."]
4486    pub AllocateDeviceMemory: ::std::option::Option<
4487        unsafe extern "C" fn(
4488            effect_ref: PF_ProgPtr,
4489            device_index: A_u_long,
4490            size_bytes: usize,
4491            memoryPP: *mut *mut ::std::os::raw::c_void,
4492        ) -> PF_Err,
4493    >,
4494    pub FreeDeviceMemory: ::std::option::Option<
4495        unsafe extern "C" fn(
4496            effect_ref: PF_ProgPtr,
4497            device_index: A_u_long,
4498            memoryP: *mut ::std::os::raw::c_void,
4499        ) -> PF_Err,
4500    >,
4501    pub PurgeDeviceMemory: ::std::option::Option<
4502        unsafe extern "C" fn(
4503            effect_ref: PF_ProgPtr,
4504            device_index: A_u_long,
4505            size_bytes: usize,
4506            bytes_purgedP0: *mut usize,
4507        ) -> PF_Err,
4508    >,
4509    #[doc = "\tAll host (pinned) memory must be allocated through this suite.\n\t\tPurge should be called only in emergency situations when working with GPU memory\n\t\t\tthat cannot be allocated through this suite (eg OpenGL memory).\n\t\tReturned pointer value represents memory allocated through cuMemHostAlloc or malloc or CreateCommittedResource (on upload heap)."]
4510    pub AllocateHostMemory: ::std::option::Option<
4511        unsafe extern "C" fn(
4512            effect_ref: PF_ProgPtr,
4513            device_index: A_u_long,
4514            size_bytes: usize,
4515            memoryPP: *mut *mut ::std::os::raw::c_void,
4516        ) -> PF_Err,
4517    >,
4518    pub FreeHostMemory: ::std::option::Option<
4519        unsafe extern "C" fn(
4520            effect_ref: PF_ProgPtr,
4521            device_index: A_u_long,
4522            memoryP: *mut ::std::os::raw::c_void,
4523        ) -> PF_Err,
4524    >,
4525    pub PurgeHostMemory: ::std::option::Option<
4526        unsafe extern "C" fn(
4527            effect_ref: PF_ProgPtr,
4528            device_index: A_u_long,
4529            bytes_to_purge: usize,
4530            bytes_purgedP0: *mut usize,
4531        ) -> PF_Err,
4532    >,
4533    #[doc = "\tThis will allocate a gpu effect world. Caller is responsible for deallocating the buffer with\n\tPF_GPUDeviceSuite1::DisposeGPUWorld.\n\n\t@param\teffect_ref\t\t\t\t\tComes with PF_InData.\n\t@param\tdevice_index\t\t\t\tThe device you want your gpu effect world allocated with.\n\t@param\twidth\t\t\t\t\t\tWidth of the effect world.\n\t@param\theight\t\t\t\t\t\tHeight of the effect world.\n\t@param\tpixel_aspect_ratio\t\t\tPixel Aspect Ratio of the effect world.\n\t@param\tfield_type\t\t\t\t\tThe field of the effect world.\n\t@param\tpixel_format\t\t\t\tThe pixel format of the effect world, only gpu formats are accepted.\n\t@param\tclear_pixB\t\t\t\t\tPass in 'true' for a transparent black frame.\n\t@param\tworldPP\t\t\t\t\t\tThe handle to the effect world to be created."]
4534    pub CreateGPUWorld: ::std::option::Option<
4535        unsafe extern "C" fn(
4536            effect_ref: PF_ProgPtr,
4537            device_index: A_u_long,
4538            width: A_long,
4539            height: A_long,
4540            pixel_aspect_ratio: PF_RationalScale,
4541            field_type: PF_Field,
4542            pixel_format: PF_PixelFormat,
4543            clear_pixB: PF_Boolean,
4544            worldPP: *mut *mut PF_EffectWorld,
4545        ) -> PF_Err,
4546    >,
4547    #[doc = "\tThis will free this effect world. The effect world is no longer valid after this function is called.\n\tPlugin module is only allowed to dispose of effect worlds they create.\n\n\t@param\teffect_ref\t\t\t\t\tComes with PF_InData.\n\t@param\tworldP\t\t\t\t\t\tThe effect world you want to dispose."]
4548    pub DisposeGPUWorld: ::std::option::Option<
4549        unsafe extern "C" fn(effect_ref: PF_ProgPtr, worldP: *mut PF_EffectWorld) -> PF_Err,
4550    >,
4551    #[doc = "\tThis will return the gpu buffer address of the given effect world.\n\n\t@param\teffect_ref\t\t\t\t\t\tComes with PF_InData.\n\t@param\tworldP\t\t\t\t\t\t\tThe effect world you want to operate on, has to be a gpu effect world.\n\t@param\tpixPP\t\t\t\t\t\t\tReturns the gpu buffer address."]
4552    pub GetGPUWorldData: ::std::option::Option<
4553        unsafe extern "C" fn(
4554            effect_ref: PF_ProgPtr,
4555            worldP: *mut PF_EffectWorld,
4556            pixPP: *mut *mut ::std::os::raw::c_void,
4557        ) -> PF_Err,
4558    >,
4559    #[doc = "\tThis will return the size of the total data in the effect world.\n\n\t@param\teffect_ref\t\t\t\t\t\tComes with PF_InData.\n\t@param\tworldP\t\t\t\t\t\t\tThe effect world you want to operate on, has to be a gpu effect world.\n\t@param\tdevice_indexP\t\t\t\t\tReturns the size of the total data in the effect world."]
4560    pub GetGPUWorldSize: ::std::option::Option<
4561        unsafe extern "C" fn(
4562            effect_ref: PF_ProgPtr,
4563            worldP: *mut PF_EffectWorld,
4564            size_in_bytesP: *mut usize,
4565        ) -> PF_Err,
4566    >,
4567    #[doc = "\tThis will return device index the gpu effect world is associated with.\n\n\t@param\teffect_ref\t\t\t\t\t\tComes with PF_InData.\n\t@param\tworldP\t\t\t\t\t\t\tThe effect world you want to operate on, has to be a gpu effect world.\n\t@param\tdevice_indexP\t\t\t\t\tReturns the device index of the given effect world."]
4568    pub GetGPUWorldDeviceIndex: ::std::option::Option<
4569        unsafe extern "C" fn(
4570            effect_ref: PF_ProgPtr,
4571            worldP: *mut PF_EffectWorld,
4572            device_indexP: *mut A_u_long,
4573        ) -> PF_Err,
4574    >,
4575}
4576#[repr(C)]
4577#[derive(Debug, Copy, Clone)]
4578pub struct PF_PathOutline {
4579    _unused: [u8; 0],
4580}
4581pub type PF_PathOutlinePtr = *mut PF_PathOutline;
4582#[repr(C)]
4583#[derive(Debug, Copy, Clone)]
4584pub struct PF_PathSegPrep {
4585    _unused: [u8; 0],
4586}
4587pub type PF_PathSegPrepPtr = *mut PF_PathSegPrep;
4588#[repr(C)]
4589#[derive(Debug, Copy, Clone)]
4590pub struct PF_PathQuerySuite1 {
4591    pub PF_NumPaths: ::std::option::Option<
4592        unsafe extern "C" fn(effect_ref: PF_ProgPtr, num_pathsPL: *mut A_long) -> PF_Err,
4593    >,
4594    pub PF_PathInfo: ::std::option::Option<
4595        unsafe extern "C" fn(
4596            effect_ref: PF_ProgPtr,
4597            indexL: A_long,
4598            unique_idP: *mut PF_PathID,
4599        ) -> PF_Err,
4600    >,
4601    pub PF_CheckoutPath: ::std::option::Option<
4602        unsafe extern "C" fn(
4603            effect_ref: PF_ProgPtr,
4604            unique_id: PF_PathID,
4605            what_time: A_long,
4606            time_step: A_long,
4607            time_scale: A_u_long,
4608            pathPP: *mut PF_PathOutlinePtr,
4609        ) -> PF_Err,
4610    >,
4611    pub PF_CheckinPath: ::std::option::Option<
4612        unsafe extern "C" fn(
4613            effect_ref: PF_ProgPtr,
4614            unique_id: PF_PathID,
4615            changedB: PF_Boolean,
4616            pathP: PF_PathOutlinePtr,
4617        ) -> PF_Err,
4618    >,
4619}
4620#[repr(C)]
4621#[derive(Debug, Copy, Clone)]
4622pub struct PF_PathVertex {
4623    pub x: PF_FpLong,
4624    pub y: PF_FpLong,
4625    pub tan_in_x: PF_FpLong,
4626    pub tan_in_y: PF_FpLong,
4627    pub tan_out_x: PF_FpLong,
4628    pub tan_out_y: PF_FpLong,
4629}
4630#[repr(C)]
4631#[derive(Debug, Copy, Clone)]
4632pub struct PF_PathDataSuite1 {
4633    pub PF_PathIsOpen: ::std::option::Option<
4634        unsafe extern "C" fn(
4635            effect_ref0: PF_ProgPtr,
4636            pathP: PF_PathOutlinePtr,
4637            openPB: *mut PF_Boolean,
4638        ) -> PF_Err,
4639    >,
4640    pub PF_PathNumSegments: ::std::option::Option<
4641        unsafe extern "C" fn(
4642            effect_ref0: PF_ProgPtr,
4643            pathP: PF_PathOutlinePtr,
4644            num_segmentsPL: *mut A_long,
4645        ) -> PF_Err,
4646    >,
4647    pub PF_PathVertexInfo: ::std::option::Option<
4648        unsafe extern "C" fn(
4649            effect_ref0: PF_ProgPtr,
4650            pathP: PF_PathOutlinePtr,
4651            which_pointL: A_long,
4652            vertexP: *mut PF_PathVertex,
4653        ) -> PF_Err,
4654    >,
4655    pub PF_PathPrepareSegLength: ::std::option::Option<
4656        unsafe extern "C" fn(
4657            effect_ref0: PF_ProgPtr,
4658            pathP: PF_PathOutlinePtr,
4659            which_segL: A_long,
4660            frequencyL: A_long,
4661            lengthPrepPP: *mut PF_PathSegPrepPtr,
4662        ) -> PF_Err,
4663    >,
4664    pub PF_PathGetSegLength: ::std::option::Option<
4665        unsafe extern "C" fn(
4666            effect_ref0: PF_ProgPtr,
4667            pathP: PF_PathOutlinePtr,
4668            which_segL: A_long,
4669            lengthPrepP0: *mut PF_PathSegPrepPtr,
4670            lengthPF: *mut PF_FpLong,
4671        ) -> PF_Err,
4672    >,
4673    pub PF_PathEvalSegLength: ::std::option::Option<
4674        unsafe extern "C" fn(
4675            effect_ref0: PF_ProgPtr,
4676            pathP: PF_PathOutlinePtr,
4677            lengthPrepPP0: *mut PF_PathSegPrepPtr,
4678            which_segL: A_long,
4679            lengthF: PF_FpLong,
4680            x: *mut PF_FpLong,
4681            y: *mut PF_FpLong,
4682        ) -> PF_Err,
4683    >,
4684    pub PF_PathEvalSegLengthDeriv1: ::std::option::Option<
4685        unsafe extern "C" fn(
4686            effect_ref0: PF_ProgPtr,
4687            pathP: PF_PathOutlinePtr,
4688            lengthPrepPP0: *mut PF_PathSegPrepPtr,
4689            which_segL: A_long,
4690            lengthF: PF_FpLong,
4691            x: *mut PF_FpLong,
4692            y: *mut PF_FpLong,
4693            deriv1x: *mut PF_FpLong,
4694            deriv1y: *mut PF_FpLong,
4695        ) -> PF_Err,
4696    >,
4697    pub PF_PathCleanupSegLength: ::std::option::Option<
4698        unsafe extern "C" fn(
4699            effect_ref0: PF_ProgPtr,
4700            pathP: PF_PathOutlinePtr,
4701            which_segL: A_long,
4702            lengthPrepPP: *mut PF_PathSegPrepPtr,
4703        ) -> PF_Err,
4704    >,
4705    pub PF_PathIsInverted: ::std::option::Option<
4706        unsafe extern "C" fn(
4707            effect_ref: PF_ProgPtr,
4708            unique_id: PF_PathID,
4709            invertedB: *mut PF_Boolean,
4710        ) -> PF_Err,
4711    >,
4712    pub PF_PathGetMaskMode: ::std::option::Option<
4713        unsafe extern "C" fn(
4714            effect_ref: PF_ProgPtr,
4715            unique_id: PF_PathID,
4716            modeP: *mut PF_MaskMode,
4717        ) -> PF_Err,
4718    >,
4719    pub PF_PathGetName: ::std::option::Option<
4720        unsafe extern "C" fn(
4721            effect_ref: PF_ProgPtr,
4722            unique_id: PF_PathID,
4723            nameZ: *mut A_char,
4724        ) -> PF_Err,
4725    >,
4726}
4727#[repr(C)]
4728#[derive(Debug, Copy, Clone)]
4729pub struct PF_State {
4730    pub reservedAL: [A_long; 4usize],
4731}
4732pub const PF_TimeDir_GREATER_THAN: _bindgen_ty_67 = 0;
4733pub const PF_TimeDir_LESS_THAN: _bindgen_ty_67 = 1;
4734pub const PF_TimeDir_GREATER_THAN_OR_EQUAL: _bindgen_ty_67 = 4096;
4735pub const PF_TimeDir_LESS_THAN_OR_EQUAL: _bindgen_ty_67 = 4097;
4736pub type _bindgen_ty_67 = ::std::os::raw::c_uint;
4737pub type PF_TimeDir = A_long;
4738pub type PF_KeyIndex = A_long;
4739#[doc = " PF_ParamUtilsSuite3\n\nPF_UpdateParamUI()\n\nYou can call this function for each param whose UI settings you\nwant to change when handling a PF_Cmd_USER_CHANGED_PARAM or\nPF_Cmd_UPDATE_PARAMS_UI.  These changes are cosmetic only, and don't\ngo into the undo buffer.\n\nThe ONLY fields that can be changed in this way are:\n\nPF_ParamDef\nui_flags: PF_PUI_ECW_SEPARATOR, PF_PUI_DISABLED only (and PF_PUI_INVISIBLE in Premiere).\nui_width\nui_height\nname\nflags: PF_ParamFlag_COLLAPSE_TWIRLY only\n\nPF_ParamDefUnion:\nslider_min, slider_max, precision, display_flags of any slider type\n\nPF_GetCurrentState() / PF_AreStatesIdentical()\nThis API lets you determine if a set of your inputs (either layers, other properties, or both)\nare different between when you first called PF_GetCurrentState() and a current call, so it can\nbe used for caching. You can specify a range of time to consider or all of time.\n\nFor effects that do simulation across time and therefore set PF_OutFlag2_AUTOMATIC_WIDE_TIME_INPUT,\nwhen you ask about a time range, it will be expanded to include any times needed to produce\nthat range.\n\nSee doc on the old PF_HaveInputsChangedOverTimeSpan() for historical context."]
4740#[repr(C)]
4741#[derive(Debug, Copy, Clone)]
4742pub struct PF_ParamUtilsSuite3 {
4743    pub PF_UpdateParamUI: ::std::option::Option<
4744        unsafe extern "C" fn(
4745            effect_ref: PF_ProgPtr,
4746            param_index: PF_ParamIndex,
4747            defP: *const PF_ParamDef,
4748        ) -> PF_Err,
4749    >,
4750    pub PF_GetCurrentState: ::std::option::Option<
4751        unsafe extern "C" fn(
4752            effect_ref: PF_ProgPtr,
4753            param_index: PF_ParamIndex,
4754            startPT0: *const A_Time,
4755            durationPT0: *const A_Time,
4756            stateP: *mut PF_State,
4757        ) -> PF_Err,
4758    >,
4759    pub PF_AreStatesIdentical: ::std::option::Option<
4760        unsafe extern "C" fn(
4761            effect_ref: PF_ProgPtr,
4762            state1P: *const PF_State,
4763            state2P: *const PF_State,
4764            samePB: *mut A_Boolean,
4765        ) -> PF_Err,
4766    >,
4767    pub PF_IsIdenticalCheckout: ::std::option::Option<
4768        unsafe extern "C" fn(
4769            effect_ref: PF_ProgPtr,
4770            param_index: PF_ParamIndex,
4771            what_time1: A_long,
4772            time_step1: A_long,
4773            time_scale1: A_u_long,
4774            what_time2: A_long,
4775            time_step2: A_long,
4776            time_scale2: A_u_long,
4777            identicalPB: *mut PF_Boolean,
4778        ) -> PF_Err,
4779    >,
4780    pub PF_FindKeyframeTime: ::std::option::Option<
4781        unsafe extern "C" fn(
4782            effect_ref: PF_ProgPtr,
4783            param_index: PF_ParamIndex,
4784            what_time: A_long,
4785            time_scale: A_u_long,
4786            time_dir: PF_TimeDir,
4787            foundPB: *mut PF_Boolean,
4788            key_indexP0: *mut PF_KeyIndex,
4789            key_timeP0: *mut A_long,
4790            key_timescaleP0: *mut A_u_long,
4791        ) -> PF_Err,
4792    >,
4793    pub PF_GetKeyframeCount: ::std::option::Option<
4794        unsafe extern "C" fn(
4795            effect_ref: PF_ProgPtr,
4796            param_index: PF_ParamIndex,
4797            key_countP: *mut PF_KeyIndex,
4798        ) -> PF_Err,
4799    >,
4800    pub PF_CheckoutKeyframe: ::std::option::Option<
4801        unsafe extern "C" fn(
4802            effect_ref: PF_ProgPtr,
4803            param_index: PF_ParamIndex,
4804            key_index: PF_KeyIndex,
4805            key_timeP0: *mut A_long,
4806            key_timescaleP0: *mut A_u_long,
4807            paramP0: *mut PF_ParamDef,
4808        ) -> PF_Err,
4809    >,
4810    pub PF_CheckinKeyframe: ::std::option::Option<
4811        unsafe extern "C" fn(effect_ref: PF_ProgPtr, paramP: *mut PF_ParamDef) -> PF_Err,
4812    >,
4813    pub PF_KeyIndexToTime: ::std::option::Option<
4814        unsafe extern "C" fn(
4815            effect_ref: PF_ProgPtr,
4816            param_index: PF_ParamIndex,
4817            key_indexP: PF_KeyIndex,
4818            key_timeP: *mut A_long,
4819            key_timescaleP: *mut A_u_long,
4820        ) -> PF_Err,
4821    >,
4822}
4823#[doc = " PF_ColorParamSuite1"]
4824#[repr(C)]
4825#[derive(Debug, Copy, Clone)]
4826pub struct PF_ColorParamSuite1 {
4827    pub PF_GetFloatingPointColorFromColorDef: ::std::option::Option<
4828        unsafe extern "C" fn(
4829            effect_ref: PF_ProgPtr,
4830            color_defP: *const PF_ParamDef,
4831            fp_colorP: *mut PF_PixelFloat,
4832        ) -> PF_Err,
4833    >,
4834}
4835#[doc = " PF_PointParamSuite1"]
4836#[repr(C)]
4837#[derive(Debug, Copy, Clone)]
4838pub struct PF_PointParamSuite1 {
4839    pub PF_GetFloatingPointValueFromPointDef: ::std::option::Option<
4840        unsafe extern "C" fn(
4841            effect_ref: PF_ProgPtr,
4842            point_defP: *const PF_ParamDef,
4843            fp_pointP: *mut A_FloatPoint,
4844        ) -> PF_Err,
4845    >,
4846}
4847#[doc = " PF_AngleParamSuite1"]
4848#[repr(C)]
4849#[derive(Debug, Copy, Clone)]
4850pub struct PF_AngleParamSuite1 {
4851    pub PF_GetFloatingPointValueFromAngleDef: ::std::option::Option<
4852        unsafe extern "C" fn(
4853            effect_ref: PF_ProgPtr,
4854            angle_defP: *const PF_ParamDef,
4855            fp_valueP: *mut A_FpLong,
4856        ) -> PF_Err,
4857    >,
4858}
4859pub const PF_App_Color_NONE: _bindgen_ty_68 = -1;
4860pub const PF_App_Color_FRAME: _bindgen_ty_68 = 0;
4861pub const PF_App_Color_FILL: _bindgen_ty_68 = 1;
4862pub const PF_App_Color_TEXT: _bindgen_ty_68 = 2;
4863pub const PF_App_Color_LIGHT_TINGE: _bindgen_ty_68 = 3;
4864pub const PF_App_Color_DARK_TINGE: _bindgen_ty_68 = 4;
4865pub const PF_App_Color_HILITE: _bindgen_ty_68 = 5;
4866pub const PF_App_Color_SHADOW: _bindgen_ty_68 = 6;
4867pub const PF_App_Color_BUTTON_FRAME: _bindgen_ty_68 = 7;
4868pub const PF_App_Color_BUTTON_FILL: _bindgen_ty_68 = 8;
4869pub const PF_App_Color_BUTTON_TEXT: _bindgen_ty_68 = 9;
4870pub const PF_App_Color_BUTTON_LIGHT_TINGE: _bindgen_ty_68 = 10;
4871pub const PF_App_Color_BUTTON_DARK_TINGE: _bindgen_ty_68 = 11;
4872pub const PF_App_Color_BUTTON_HILITE: _bindgen_ty_68 = 12;
4873pub const PF_App_Color_BUTTON_SHADOW: _bindgen_ty_68 = 13;
4874pub const PF_App_Color_BUTTON_PRESSED_FRAME: _bindgen_ty_68 = 14;
4875pub const PF_App_Color_BUTTON_PRESSED_FILL: _bindgen_ty_68 = 15;
4876pub const PF_App_Color_BUTTON_PRESSED_TEXT: _bindgen_ty_68 = 16;
4877pub const PF_App_Color_BUTTON_PRESSED_LIGHT_TINGE: _bindgen_ty_68 = 17;
4878pub const PF_App_Color_BUTTON_PRESSED_DARK_TINGE: _bindgen_ty_68 = 18;
4879pub const PF_App_Color_BUTTON_PRESSED_HILITE: _bindgen_ty_68 = 19;
4880pub const PF_App_Color_BUTTON_PRESSED_SHADOW: _bindgen_ty_68 = 20;
4881pub const PF_App_Color_FRAME_DISABLED: _bindgen_ty_68 = 21;
4882pub const PF_App_Color_FILL_DISABLED: _bindgen_ty_68 = 22;
4883pub const PF_App_Color_TEXT_DISABLED: _bindgen_ty_68 = 23;
4884pub const PF_App_Color_LIGHT_TINGE_DISABLED: _bindgen_ty_68 = 24;
4885pub const PF_App_Color_DARK_TINGE_DISABLED: _bindgen_ty_68 = 25;
4886pub const PF_App_Color_HILITE_DISABLED: _bindgen_ty_68 = 26;
4887pub const PF_App_Color_SHADOW_DISABLED: _bindgen_ty_68 = 27;
4888pub const PF_App_Color_BUTTON_FRAME_DISABLED: _bindgen_ty_68 = 28;
4889pub const PF_App_Color_BUTTON_FILL_DISABLED: _bindgen_ty_68 = 29;
4890pub const PF_App_Color_BUTTON_TEXT_DISABLED: _bindgen_ty_68 = 30;
4891pub const PF_App_Color_BUTTON_LIGHT_TINGE_DISABLED: _bindgen_ty_68 = 31;
4892pub const PF_App_Color_BUTTON_DARK_TINGE_DISABLED: _bindgen_ty_68 = 32;
4893pub const PF_App_Color_BUTTON_HILITE_DISABLED: _bindgen_ty_68 = 33;
4894pub const PF_App_Color_BUTTON_SHADOW_DISABLED: _bindgen_ty_68 = 34;
4895pub const PF_App_Color_BUTTON_PRESSED_FRAME_DISABLED: _bindgen_ty_68 = 35;
4896pub const PF_App_Color_BUTTON_PRESSED_FILL_DISABLED: _bindgen_ty_68 = 36;
4897pub const PF_App_Color_BUTTON_PRESSED_TEXT_DISABLED: _bindgen_ty_68 = 37;
4898pub const PF_App_Color_BUTTON_PRESSED_LIGHT_TINGE_DISABLED: _bindgen_ty_68 = 38;
4899pub const PF_App_Color_BUTTON_PRESSED_DARK_TINGE_DISABLED: _bindgen_ty_68 = 39;
4900pub const PF_App_Color_BUTTON_PRESSED_HILITE_DISABLED: _bindgen_ty_68 = 40;
4901pub const PF_App_Color_BUTTON_PRESSED_SHADOW_DISABLED: _bindgen_ty_68 = 41;
4902pub const PF_App_Color_BLACK: _bindgen_ty_68 = 42;
4903pub const PF_App_Color_WHITE: _bindgen_ty_68 = 43;
4904pub const PF_App_Color_GRAY: _bindgen_ty_68 = 44;
4905pub const PF_App_Color_RED: _bindgen_ty_68 = 45;
4906pub const PF_App_Color_YELLOW: _bindgen_ty_68 = 46;
4907pub const PF_App_Color_GREEN: _bindgen_ty_68 = 47;
4908pub const PF_App_Color_CYAN: _bindgen_ty_68 = 48;
4909pub const PF_App_Color_TLW_NEEDLE_CURRENT_TIME: _bindgen_ty_68 = 49;
4910pub const PF_App_Color_TLW_NEEDLE_PREVIEW_TIME: _bindgen_ty_68 = 50;
4911pub const PF_App_Color_TLW_CACHE_MARK_MEM: _bindgen_ty_68 = 51;
4912pub const PF_App_Color_TLW_CACHE_MARK_DISK: _bindgen_ty_68 = 52;
4913pub const PF_App_Color_TLW_CACHE_MARK_MIX: _bindgen_ty_68 = 53;
4914pub const PF_App_Color_FILL_LIGHT: _bindgen_ty_68 = 54;
4915pub const PF_App_Color_HOT_TEXT: _bindgen_ty_68 = 55;
4916pub const PF_App_Color_HOT_TEXT_DISABLED: _bindgen_ty_68 = 56;
4917pub const PF_App_Color_LABEL_0: _bindgen_ty_68 = 57;
4918pub const PF_App_Color_LABEL_1: _bindgen_ty_68 = 58;
4919pub const PF_App_Color_LABEL_2: _bindgen_ty_68 = 59;
4920pub const PF_App_Color_LABEL_3: _bindgen_ty_68 = 60;
4921pub const PF_App_Color_LABEL_4: _bindgen_ty_68 = 61;
4922pub const PF_App_Color_LABEL_5: _bindgen_ty_68 = 62;
4923pub const PF_App_Color_LABEL_6: _bindgen_ty_68 = 63;
4924pub const PF_App_Color_LABEL_7: _bindgen_ty_68 = 64;
4925pub const PF_App_Color_LABEL_8: _bindgen_ty_68 = 65;
4926pub const PF_App_Color_LABEL_9: _bindgen_ty_68 = 66;
4927pub const PF_App_Color_LABEL_10: _bindgen_ty_68 = 67;
4928pub const PF_App_Color_LABEL_11: _bindgen_ty_68 = 68;
4929pub const PF_App_Color_LABEL_12: _bindgen_ty_68 = 69;
4930pub const PF_App_Color_LABEL_13: _bindgen_ty_68 = 70;
4931pub const PF_App_Color_LABEL_14: _bindgen_ty_68 = 71;
4932pub const PF_App_Color_LABEL_15: _bindgen_ty_68 = 72;
4933pub const PF_App_Color_LABEL_16: _bindgen_ty_68 = 73;
4934pub const PF_App_Color_TLW_CACHE_MARK_MEM_DUBIOUS: _bindgen_ty_68 = 74;
4935pub const PF_App_Color_TLW_CACHE_MARK_DISK_DUBIOUS: _bindgen_ty_68 = 75;
4936pub const PF_App_Color_TLW_CACHE_MARK_MIX_DUBIOUS: _bindgen_ty_68 = 76;
4937pub const PF_App_Color_HOT_TEXT_PRESSED: _bindgen_ty_68 = 77;
4938pub const PF_App_Color_HOT_TEXT_WARNING: _bindgen_ty_68 = 78;
4939pub const PF_App_Color_PURE_BLACK: _bindgen_ty_68 = 79;
4940pub const PF_App_Color_PURE_WHITE: _bindgen_ty_68 = 80;
4941pub const PF_App_Color_PANEL_BACKGROUND: _bindgen_ty_68 = 1000;
4942pub const PF_App_Color_LIST_BOX_FILL: _bindgen_ty_68 = 1001;
4943pub const PF_App_Color_DARK_CAPTION_FILL: _bindgen_ty_68 = 1002;
4944pub const PF_App_Color_DARK_CAPTION_TEXT: _bindgen_ty_68 = 1003;
4945pub const PF_App_Color_TEXT_ON_LIGHTER_BG: _bindgen_ty_68 = 1004;
4946pub const PF_App_Color_NUMTYPES: _bindgen_ty_68 = 1005;
4947pub type _bindgen_ty_68 = ::std::os::raw::c_int;
4948pub type PF_App_ColorType = A_short;
4949pub const PF_EyeDropperSampleMode_DEFAULT: _bindgen_ty_69 = 0;
4950pub const PF_EyeDropperSampleMode_STRAIGHT: _bindgen_ty_69 = 1;
4951pub const PF_EyeDropperSampleMode_PREMUL: _bindgen_ty_69 = 2;
4952pub type _bindgen_ty_69 = ::std::os::raw::c_uint;
4953pub type PF_EyeDropperSampleMode = A_short;
4954#[repr(C)]
4955#[derive(Debug, Copy, Clone)]
4956pub struct PF_App_Color {
4957    pub red: A_u_short,
4958    pub green: A_u_short,
4959    pub blue: A_u_short,
4960}
4961#[repr(C)]
4962#[derive(Debug, Copy, Clone)]
4963pub struct PF_AppPersonalTextInfo {
4964    pub name: [A_char; 64usize],
4965    pub org: [A_char; 64usize],
4966    pub serial_str: [A_char; 64usize],
4967}
4968pub const PF_FontStyle_NONE: _bindgen_ty_70 = -1;
4969pub const PF_FontStyle_SYS: _bindgen_ty_70 = 0;
4970pub const PF_FontStyle_SMALL: _bindgen_ty_70 = 1;
4971pub const PF_FontStyle_SMALL_BOLD: _bindgen_ty_70 = 2;
4972pub const PF_FontStyle_SMALL_ITALIC: _bindgen_ty_70 = 3;
4973pub const PF_FontStyle_MED: _bindgen_ty_70 = 4;
4974pub const PF_FontStyle_MED_BOLD: _bindgen_ty_70 = 5;
4975pub const PF_FontStyle_APP: _bindgen_ty_70 = 6;
4976pub const PF_FontStyle_APP_BOLD: _bindgen_ty_70 = 7;
4977pub const PF_FontStyle_APP_ITALIC: _bindgen_ty_70 = 8;
4978pub type _bindgen_ty_70 = ::std::os::raw::c_int;
4979pub type PF_FontStyleSheet = A_LegacyEnumType;
4980#[repr(C)]
4981#[derive(Debug, Copy, Clone)]
4982pub struct PF_FontName {
4983    pub font_nameAC: [A_char; 256usize],
4984}
4985#[repr(C)]
4986#[derive(Debug, Copy, Clone)]
4987pub struct _PF_AppProgressDialog {
4988    _unused: [u8; 0],
4989}
4990pub type PF_AppProgressDialogP = *mut _PF_AppProgressDialog;
4991#[repr(C)]
4992#[derive(Debug, Copy, Clone)]
4993pub struct PFAppSuite6 {
4994    pub PF_AppGetBgColor:
4995        ::std::option::Option<unsafe extern "C" fn(bg_colorP: *mut PF_App_Color) -> PF_Err>,
4996    pub PF_AppGetColor: ::std::option::Option<
4997        unsafe extern "C" fn(color_type: PF_App_ColorType, app_colorP: *mut PF_App_Color) -> PF_Err,
4998    >,
4999    pub PF_AppGetLanguage:
5000        ::std::option::Option<unsafe extern "C" fn(lang_tagZ: *mut A_char) -> PF_Err>,
5001    pub PF_GetPersonalInfo:
5002        ::std::option::Option<unsafe extern "C" fn(ptiP: *mut PF_AppPersonalTextInfo) -> PF_Err>,
5003    pub PF_GetFontStyleSheet: ::std::option::Option<
5004        unsafe extern "C" fn(
5005            sheet: PF_FontStyleSheet,
5006            font_nameP0: *mut PF_FontName,
5007            font_numPS0: *mut A_short,
5008            sizePS0: *mut A_short,
5009            stylePS0: *mut A_short,
5010        ) -> PF_Err,
5011    >,
5012    pub PF_SetCursor: ::std::option::Option<unsafe extern "C" fn(cursor: PF_CursorType) -> PF_Err>,
5013    pub PF_IsRenderEngine:
5014        ::std::option::Option<unsafe extern "C" fn(render_enginePB: *mut PF_Boolean) -> PF_Err>,
5015    pub PF_AppColorPickerDialog: ::std::option::Option<
5016        unsafe extern "C" fn(
5017            dialog_titleZ0: *const A_char,
5018            sample_colorP: *const PF_PixelFloat,
5019            use_ws_to_monitor_xformB: PF_Boolean,
5020            new_colorP: *mut PF_PixelFloat,
5021        ) -> PF_Err,
5022    >,
5023    pub PF_GetMouse: ::std::option::Option<unsafe extern "C" fn(pointP: *mut PF_Point) -> PF_Err>,
5024    pub PF_InvalidateRect: ::std::option::Option<
5025        unsafe extern "C" fn(contextH: PF_ContextH, rectP0: *const PF_Rect) -> PF_Err,
5026    >,
5027    pub PF_ConvertLocalToGlobal: ::std::option::Option<
5028        unsafe extern "C" fn(localP: *const PF_Point, globalP: *mut PF_Point) -> PF_Err,
5029    >,
5030    pub PF_GetColorAtGlobalPoint: ::std::option::Option<
5031        unsafe extern "C" fn(
5032            globalP: *const PF_Point,
5033            eyeSize: A_short,
5034            mode: PF_EyeDropperSampleMode,
5035            outColorP: *mut PF_PixelFloat,
5036        ) -> PF_Err,
5037    >,
5038    pub PF_CreateNewAppProgressDialog: ::std::option::Option<
5039        unsafe extern "C" fn(
5040            titleZ: *const A_UTF16Char,
5041            cancel_strZ0: *const A_UTF16Char,
5042            indeterminateB: PF_Boolean,
5043            prog_dlgPP: *mut PF_AppProgressDialogP,
5044        ) -> PF_Err,
5045    >,
5046    pub PF_AppProgressDialogUpdate: ::std::option::Option<
5047        unsafe extern "C" fn(
5048            prog_dlgP: PF_AppProgressDialogP,
5049            countL: A_long,
5050            totalL: A_long,
5051        ) -> PF_Err,
5052    >,
5053    pub PF_DisposeAppProgressDialog:
5054        ::std::option::Option<unsafe extern "C" fn(prog_dlgP: PF_AppProgressDialogP) -> PF_Err>,
5055}
5056#[repr(C)]
5057#[derive(Debug, Copy, Clone)]
5058pub struct PF_EffectUISuite1 {
5059    pub PF_SetOptionsButtonName: ::std::option::Option<
5060        unsafe extern "C" fn(effect_ref: PF_ProgPtr, nameZ: *const A_char) -> PF_Err,
5061    >,
5062}
5063#[repr(C)]
5064#[derive(Debug, Copy, Clone)]
5065pub struct _PF_AsyncManager {
5066    _unused: [u8; 0],
5067}
5068pub type PF_AsyncManagerP = *mut _PF_AsyncManager;
5069#[repr(C)]
5070#[derive(Debug, Copy, Clone)]
5071pub struct PF_EffectCustomUISuite2 {
5072    pub PF_GetDrawingReference: ::std::option::Option<
5073        unsafe extern "C" fn(
5074            effect_contextH: PF_ContextH,
5075            referenceP0: *mut DRAWBOT_DrawRef,
5076        ) -> PF_Err,
5077    >,
5078    pub PF_GetContextAsyncManager: ::std::option::Option<
5079        unsafe extern "C" fn(
5080            in_data: *mut PF_InData,
5081            extra: *mut PF_EventExtra,
5082            managerPP0: *mut PF_AsyncManagerP,
5083        ) -> PF_Err,
5084    >,
5085}
5086#[repr(C)]
5087#[derive(Debug, Copy, Clone)]
5088pub struct PF_EffectCustomUIOverlayThemeSuite1 {
5089    pub PF_GetPreferredForegroundColor: ::std::option::Option<
5090        unsafe extern "C" fn(foreground_colorP: *mut DRAWBOT_ColorRGBA) -> PF_Err,
5091    >,
5092    pub PF_GetPreferredShadowColor: ::std::option::Option<
5093        unsafe extern "C" fn(shadow_colorP: *mut DRAWBOT_ColorRGBA) -> PF_Err,
5094    >,
5095    pub PF_GetPreferredStrokeWidth:
5096        ::std::option::Option<unsafe extern "C" fn(stroke_widthPF: *mut f32) -> PF_Err>,
5097    pub PF_GetPreferredVertexSize:
5098        ::std::option::Option<unsafe extern "C" fn(vertex_sizePF: *mut f32) -> PF_Err>,
5099    pub PF_GetPreferredShadowOffset:
5100        ::std::option::Option<unsafe extern "C" fn(shadow_offsetP: *mut A_LPoint) -> PF_Err>,
5101    pub PF_StrokePath: ::std::option::Option<
5102        unsafe extern "C" fn(
5103            drawbot_ref: DRAWBOT_DrawRef,
5104            path_ref: DRAWBOT_PathRef,
5105            draw_shadowB: PF_Boolean,
5106        ) -> PF_Err,
5107    >,
5108    pub PF_FillPath: ::std::option::Option<
5109        unsafe extern "C" fn(
5110            drawbot_ref: DRAWBOT_DrawRef,
5111            path_ref: DRAWBOT_PathRef,
5112            draw_shadowB: PF_Boolean,
5113        ) -> PF_Err,
5114    >,
5115    pub PF_FillVertex: ::std::option::Option<
5116        unsafe extern "C" fn(
5117            drawbot_ref: DRAWBOT_DrawRef,
5118            center_pointP: *const A_FloatPoint,
5119            draw_shadowB: PF_Boolean,
5120        ) -> PF_Err,
5121    >,
5122}
5123#[repr(C)]
5124#[derive(Debug, Copy, Clone)]
5125pub struct PF_ParamUtilsSuite1 {
5126    pub PF_UpdateParamUI: ::std::option::Option<
5127        unsafe extern "C" fn(
5128            effect_ref: PF_ProgPtr,
5129            param_index: PF_ParamIndex,
5130            defP: *const PF_ParamDef,
5131        ) -> PF_Err,
5132    >,
5133    pub PF_GetCurrentStateObsolete: ::std::option::Option<
5134        unsafe extern "C" fn(effect_ref: PF_ProgPtr, stateP: *mut PF_State) -> PF_Err,
5135    >,
5136    pub PF_HasParamChangedObsolete: ::std::option::Option<
5137        unsafe extern "C" fn(
5138            effect_ref: PF_ProgPtr,
5139            stateP: *const PF_State,
5140            param_index: PF_ParamIndex,
5141            changedPB: *mut PF_Boolean,
5142        ) -> PF_Err,
5143    >,
5144    pub PF_HaveInputsChangedOverTimeSpanObsolete: ::std::option::Option<
5145        unsafe extern "C" fn(
5146            effect_ref: PF_ProgPtr,
5147            stateP: *const PF_State,
5148            startPT0: *const A_Time,
5149            durationPT0: *const A_Time,
5150            changedPB: *mut PF_Boolean,
5151        ) -> PF_Err,
5152    >,
5153    pub PF_IsIdenticalCheckout: ::std::option::Option<
5154        unsafe extern "C" fn(
5155            effect_ref: PF_ProgPtr,
5156            param_index: PF_ParamIndex,
5157            what_time1: A_long,
5158            time_step1: A_long,
5159            time_scale1: A_u_long,
5160            what_time2: A_long,
5161            time_step2: A_long,
5162            time_scale2: A_u_long,
5163            identicalPB: *mut PF_Boolean,
5164        ) -> PF_Err,
5165    >,
5166    pub PF_FindKeyframeTime: ::std::option::Option<
5167        unsafe extern "C" fn(
5168            effect_ref: PF_ProgPtr,
5169            param_index: PF_ParamIndex,
5170            what_time: A_long,
5171            time_scale: A_u_long,
5172            time_dir: PF_TimeDir,
5173            foundPB: *mut PF_Boolean,
5174            key_indexP0: *mut PF_KeyIndex,
5175            key_timeP0: *mut A_long,
5176            key_timescaleP0: *mut A_u_long,
5177        ) -> PF_Err,
5178    >,
5179    pub PF_GetKeyframeCount: ::std::option::Option<
5180        unsafe extern "C" fn(
5181            effect_ref: PF_ProgPtr,
5182            param_index: PF_ParamIndex,
5183            key_countP: *mut PF_KeyIndex,
5184        ) -> PF_Err,
5185    >,
5186    pub PF_CheckoutKeyframe: ::std::option::Option<
5187        unsafe extern "C" fn(
5188            effect_ref: PF_ProgPtr,
5189            param_index: PF_ParamIndex,
5190            key_index: PF_KeyIndex,
5191            key_timeP0: *mut A_long,
5192            key_timescaleP0: *mut A_u_long,
5193            paramP0: *mut PF_ParamDef,
5194        ) -> PF_Err,
5195    >,
5196    pub PF_CheckinKeyframe: ::std::option::Option<
5197        unsafe extern "C" fn(effect_ref: PF_ProgPtr, paramP: *mut PF_ParamDef) -> PF_Err,
5198    >,
5199    pub PF_KeyIndexToTime: ::std::option::Option<
5200        unsafe extern "C" fn(
5201            effect_ref: PF_ProgPtr,
5202            param_index: PF_ParamIndex,
5203            key_indexP: PF_KeyIndex,
5204            key_timeP: *mut A_long,
5205            key_timescaleP: *mut A_u_long,
5206        ) -> PF_Err,
5207    >,
5208}
5209#[repr(C)]
5210#[derive(Debug, Copy, Clone)]
5211pub struct PFAppSuite4 {
5212    pub PF_AppGetBgColor:
5213        ::std::option::Option<unsafe extern "C" fn(bg_colorP: *mut PF_App_Color) -> PF_Err>,
5214    pub PF_AppGetColor: ::std::option::Option<
5215        unsafe extern "C" fn(color_type: PF_App_ColorType, app_colorP: *mut PF_App_Color) -> PF_Err,
5216    >,
5217    pub PF_GetPersonalInfo:
5218        ::std::option::Option<unsafe extern "C" fn(ptiP: *mut PF_AppPersonalTextInfo) -> PF_Err>,
5219    pub PF_GetFontStyleSheet: ::std::option::Option<
5220        unsafe extern "C" fn(
5221            sheet: PF_FontStyleSheet,
5222            font_nameP0: *mut PF_FontName,
5223            font_numPS0: *mut A_short,
5224            sizePS0: *mut A_short,
5225            stylePS0: *mut A_short,
5226        ) -> PF_Err,
5227    >,
5228    pub PF_SetCursor: ::std::option::Option<unsafe extern "C" fn(cursor: PF_CursorType) -> PF_Err>,
5229    pub PF_IsRenderEngine:
5230        ::std::option::Option<unsafe extern "C" fn(render_enginePB: *mut PF_Boolean) -> PF_Err>,
5231    pub PF_AppColorPickerDialog: ::std::option::Option<
5232        unsafe extern "C" fn(
5233            dialog_titleZ0: *const A_char,
5234            sample_colorP: *const PF_PixelFloat,
5235            use_ws_to_monitor_xformB: PF_Boolean,
5236            new_colorP: *mut PF_PixelFloat,
5237        ) -> PF_Err,
5238    >,
5239    pub PF_GetMouse: ::std::option::Option<unsafe extern "C" fn(pointP: *mut PF_Point) -> PF_Err>,
5240    pub PF_InvalidateRect: ::std::option::Option<
5241        unsafe extern "C" fn(contextH: PF_ContextH, rectP0: *const PF_Rect) -> PF_Err,
5242    >,
5243    pub PF_ConvertLocalToGlobal: ::std::option::Option<
5244        unsafe extern "C" fn(localP: *const PF_Point, globalP: *mut PF_Point) -> PF_Err,
5245    >,
5246    pub PF_GetColorAtGlobalPoint: ::std::option::Option<
5247        unsafe extern "C" fn(
5248            globalP: *const PF_Point,
5249            eyeSize: A_short,
5250            mode: PF_EyeDropperSampleMode,
5251            outColorP: *mut PF_PixelFloat,
5252        ) -> PF_Err,
5253    >,
5254}
5255#[repr(C)]
5256#[derive(Debug, Copy, Clone)]
5257pub struct PFAppSuite5 {
5258    pub PF_AppGetBgColor:
5259        ::std::option::Option<unsafe extern "C" fn(bg_colorP: *mut PF_App_Color) -> PF_Err>,
5260    pub PF_AppGetColor: ::std::option::Option<
5261        unsafe extern "C" fn(color_type: PF_App_ColorType, app_colorP: *mut PF_App_Color) -> PF_Err,
5262    >,
5263    pub PF_AppGetLanguage:
5264        ::std::option::Option<unsafe extern "C" fn(lang_tagZ: *mut A_char) -> PF_Err>,
5265    pub PF_GetPersonalInfo:
5266        ::std::option::Option<unsafe extern "C" fn(ptiP: *mut PF_AppPersonalTextInfo) -> PF_Err>,
5267    pub PF_GetFontStyleSheet: ::std::option::Option<
5268        unsafe extern "C" fn(
5269            sheet: PF_FontStyleSheet,
5270            font_nameP0: *mut PF_FontName,
5271            font_numPS0: *mut A_short,
5272            sizePS0: *mut A_short,
5273            stylePS0: *mut A_short,
5274        ) -> PF_Err,
5275    >,
5276    pub PF_SetCursor: ::std::option::Option<unsafe extern "C" fn(cursor: PF_CursorType) -> PF_Err>,
5277    pub PF_IsRenderEngine:
5278        ::std::option::Option<unsafe extern "C" fn(render_enginePB: *mut PF_Boolean) -> PF_Err>,
5279    pub PF_AppColorPickerDialog: ::std::option::Option<
5280        unsafe extern "C" fn(
5281            dialog_titleZ0: *const A_char,
5282            sample_colorP: *const PF_PixelFloat,
5283            use_ws_to_monitor_xformB: PF_Boolean,
5284            new_colorP: *mut PF_PixelFloat,
5285        ) -> PF_Err,
5286    >,
5287    pub PF_GetMouse: ::std::option::Option<unsafe extern "C" fn(pointP: *mut PF_Point) -> PF_Err>,
5288    pub PF_InvalidateRect: ::std::option::Option<
5289        unsafe extern "C" fn(contextH: PF_ContextH, rectP0: *const PF_Rect) -> PF_Err,
5290    >,
5291    pub PF_ConvertLocalToGlobal: ::std::option::Option<
5292        unsafe extern "C" fn(localP: *const PF_Point, globalP: *mut PF_Point) -> PF_Err,
5293    >,
5294    pub PF_GetColorAtGlobalPoint: ::std::option::Option<
5295        unsafe extern "C" fn(
5296            globalP: *const PF_Point,
5297            eyeSize: A_short,
5298            mode: PF_EyeDropperSampleMode,
5299            outColorP: *mut PF_PixelFloat,
5300        ) -> PF_Err,
5301    >,
5302}
5303#[repr(C)]
5304#[derive(Debug, Copy, Clone)]
5305pub struct PF_EffectCustomUISuite1 {
5306    pub PF_GetDrawingReference: ::std::option::Option<
5307        unsafe extern "C" fn(
5308            effect_contextH: PF_ContextH,
5309            referenceP0: *mut DRAWBOT_DrawRef,
5310        ) -> PF_Err,
5311    >,
5312}
5313pub const PF_SuiteTool_NONE: _bindgen_ty_71 = 0;
5314pub const PF_SuiteTool_ARROW: _bindgen_ty_71 = 1;
5315pub const PF_SuiteTool_ROTATE: _bindgen_ty_71 = 2;
5316pub const PF_SuiteTool_SHAPE: _bindgen_ty_71 = 3;
5317pub const PF_SuiteTool_OBSOLETE: _bindgen_ty_71 = 4;
5318pub const PF_SuiteTool_PEN: _bindgen_ty_71 = 5;
5319pub const PF_SuiteTool_PAN: _bindgen_ty_71 = 6;
5320pub const PF_SuiteTool_HAND: _bindgen_ty_71 = 7;
5321pub const PF_SuiteTool_MAGNIFY: _bindgen_ty_71 = 8;
5322pub const PF_SuiteTool_ROUNDED_RECT: _bindgen_ty_71 = 9;
5323pub const PF_SuiteTool_POLYGON: _bindgen_ty_71 = 10;
5324pub const PF_SuiteTool_STAR: _bindgen_ty_71 = 11;
5325pub const PF_SuiteTool_PIN: _bindgen_ty_71 = 12;
5326pub const PF_SuiteTool_PIN_STARCH: _bindgen_ty_71 = 13;
5327pub const PF_SuiteTool_PIN_DEPTH: _bindgen_ty_71 = 14;
5328pub type _bindgen_ty_71 = ::std::os::raw::c_uint;
5329pub type PF_SuiteTool = A_LegacyEnumType;
5330#[repr(C)]
5331#[derive(Debug, Copy, Clone)]
5332pub struct PF_HelperSuite1 {
5333    pub PF_GetCurrentTool:
5334        ::std::option::Option<unsafe extern "C" fn(toolP: *mut PF_SuiteTool) -> PF_Err>,
5335}
5336pub const PF_ExtendedSuiteTool_NONE: _bindgen_ty_72 = 0;
5337pub const PF_ExtendedSuiteTool_ARROW: _bindgen_ty_72 = 1;
5338pub const PF_ExtendedSuiteTool_ROTATE: _bindgen_ty_72 = 2;
5339pub const PF_ExtendedSuiteTool_PEN_NORMAL: _bindgen_ty_72 = 3;
5340pub const PF_ExtendedSuiteTool_PEN_ADD_POINT: _bindgen_ty_72 = 4;
5341pub const PF_ExtendedSuiteTool_PEN_DELETE_POINT: _bindgen_ty_72 = 5;
5342pub const PF_ExtendedSuiteTool_PEN_CONVERT_POINT: _bindgen_ty_72 = 6;
5343pub const PF_ExtendedSuiteTool_RECT: _bindgen_ty_72 = 7;
5344pub const PF_ExtendedSuiteTool_OVAL: _bindgen_ty_72 = 8;
5345pub const PF_ExtendedSuiteTool_CAMERA_ORBIT_CAMERA: _bindgen_ty_72 = 9;
5346pub const PF_ExtendedSuiteTool_CAMERA_PAN_CAMERA: _bindgen_ty_72 = 10;
5347pub const PF_ExtendedSuiteTool_CAMERA_DOLLY_CAMERA: _bindgen_ty_72 = 11;
5348pub const PF_ExtendedSuiteTool_PAN_BEHIND: _bindgen_ty_72 = 12;
5349pub const PF_ExtendedSuiteTool_HAND: _bindgen_ty_72 = 13;
5350pub const PF_ExtendedSuiteTool_MAGNIFY: _bindgen_ty_72 = 14;
5351pub const PF_ExtendedSuiteTool_PAINTBRUSH: _bindgen_ty_72 = 15;
5352pub const PF_ExtendedSuiteTool_PENCIL: _bindgen_ty_72 = 16;
5353pub const PF_ExtendedSuiteTool_CLONE_STAMP: _bindgen_ty_72 = 17;
5354pub const PF_ExtendedSuiteTool_ERASER: _bindgen_ty_72 = 18;
5355pub const PF_ExtendedSuiteTool_TEXT: _bindgen_ty_72 = 19;
5356pub const PF_ExtendedSuiteTool_TEXT_VERTICAL: _bindgen_ty_72 = 20;
5357pub const PF_ExtendedSuiteTool_PIN: _bindgen_ty_72 = 21;
5358pub const PF_ExtendedSuiteTool_PIN_STARCH: _bindgen_ty_72 = 22;
5359pub const PF_ExtendedSuiteTool_PIN_DEPTH: _bindgen_ty_72 = 23;
5360pub const PF_ExtendedSuiteTool_ROUNDED_RECT: _bindgen_ty_72 = 24;
5361pub const PF_ExtendedSuiteTool_POLYGON: _bindgen_ty_72 = 25;
5362pub const PF_ExtendedSuiteTool_STAR: _bindgen_ty_72 = 26;
5363pub const PF_ExtendedSuiteTool_QUICKSELECT: _bindgen_ty_72 = 27;
5364pub const PF_ExtendedSuiteTool_CAMERA_MAYA: _bindgen_ty_72 = 28;
5365pub const PF_ExtendedSuiteTool_HAIRBRUSH: _bindgen_ty_72 = 29;
5366pub const PF_ExtendedSuiteTool_FEATHER: _bindgen_ty_72 = 30;
5367pub const PF_ExtendedSuiteTool_PIN_BEND: _bindgen_ty_72 = 31;
5368pub const PF_ExtendedSuiteTool_PIN_ADVANCED: _bindgen_ty_72 = 32;
5369pub const PF_ExtendedSuiteTool_CAMERA_ORBIT_CURSOR: _bindgen_ty_72 = 33;
5370pub const PF_ExtendedSuiteTool_CAMERA_ORBIT_SCENE: _bindgen_ty_72 = 34;
5371pub const PF_ExtendedSuiteTool_CAMERA_PAN_CURSOR: _bindgen_ty_72 = 35;
5372pub const PF_ExtendedSuiteTool_CAMERA_DOLLY_TOWARDS_CURSOR: _bindgen_ty_72 = 36;
5373pub const PF_ExtendedSuiteTool_CAMERA_DOLLY_TO_CURSOR: _bindgen_ty_72 = 37;
5374pub const PF_ExtendedSuiteTool_OBJECTSELECT: _bindgen_ty_72 = 38;
5375pub const PF_ExtendedSuiteTool_CUBE: _bindgen_ty_72 = 39;
5376pub const PF_ExtendedSuiteTool_SPHERE: _bindgen_ty_72 = 40;
5377pub const PF_ExtendedSuiteTool_PLANE: _bindgen_ty_72 = 41;
5378pub const PF_ExtendedSuiteTool_TORUS: _bindgen_ty_72 = 42;
5379pub const PF_ExtendedSuiteTool_CONE: _bindgen_ty_72 = 43;
5380pub const PF_ExtendedSuiteTool_CYLINDER: _bindgen_ty_72 = 44;
5381#[doc = " PF_HelperSuite2\n\nPF_ParseClipboard()\n\ncauses After Effects to parse the clipboard immediately"]
5382pub type _bindgen_ty_72 = ::std::os::raw::c_uint;
5383pub type PF_ExtendedSuiteTool = A_LegacyEnumType;
5384#[repr(C)]
5385#[derive(Debug, Copy, Clone)]
5386pub struct PF_HelperSuite2 {
5387    pub PF_ParseClipboard: ::std::option::Option<unsafe extern "C" fn() -> PF_Err>,
5388    pub PF_SetCurrentExtendedTool:
5389        ::std::option::Option<unsafe extern "C" fn(tool: PF_ExtendedSuiteTool) -> PF_Err>,
5390    pub PF_GetCurrentExtendedTool:
5391        ::std::option::Option<unsafe extern "C" fn(tool: *mut PF_ExtendedSuiteTool) -> PF_Err>,
5392}
5393pub const FIEL_Type_FRAME_RENDERED: _bindgen_ty_73 = 0;
5394pub const FIEL_Type_INTERLACED: _bindgen_ty_73 = 1;
5395pub const FIEL_Type_HALF_HEIGHT: _bindgen_ty_73 = 2;
5396pub const FIEL_Type_FIELD_DOUBLED: _bindgen_ty_73 = 3;
5397pub const FIEL_Type_UNSPECIFIED: _bindgen_ty_73 = 4;
5398pub type _bindgen_ty_73 = ::std::os::raw::c_uint;
5399pub type FIEL_Type = u32;
5400pub const FIEL_Order_UPPER_FIRST: _bindgen_ty_74 = 0;
5401pub const FIEL_Order_LOWER_FIRST: _bindgen_ty_74 = 1;
5402pub type _bindgen_ty_74 = ::std::os::raw::c_uint;
5403pub type FIEL_Order = u32;
5404#[repr(C, packed(2))]
5405#[derive(Debug, Copy, Clone)]
5406pub struct FIEL_Label {
5407    pub signature: u32,
5408    pub version: i16,
5409    pub type_: FIEL_Type,
5410    pub order: FIEL_Order,
5411    pub reserved: u32,
5412}
5413#[doc = " $$$ move to aegp.h"]
5414pub type PR_Handle = *mut *mut _Up_OpaqueMem;
5415pub type PR_FlatHandle = PR_Handle;
5416pub type PR_GlobalDataH = PR_Handle;
5417pub type PR_InstanceDataH = PR_Handle;
5418pub type PR_RenderDataH = PR_Handle;
5419#[repr(C)]
5420#[derive(Debug, Copy, Clone)]
5421pub struct PR_GlobalContext {
5422    _unused: [u8; 0],
5423}
5424pub type PR_GlobalContextH = *mut *mut PR_GlobalContext;
5425#[repr(C)]
5426#[derive(Debug, Copy, Clone)]
5427pub struct PR_InstanceContext {
5428    _unused: [u8; 0],
5429}
5430pub type PR_InstanceContextH = *mut *mut PR_InstanceContext;
5431#[repr(C)]
5432#[derive(Debug, Copy, Clone)]
5433pub struct PR_RenderContext {
5434    _unused: [u8; 0],
5435}
5436pub type PR_RenderContextH = *mut *mut PR_RenderContext;
5437#[repr(C)]
5438#[derive(Debug, Copy, Clone)]
5439pub struct PR_QueryContext {
5440    _unused: [u8; 0],
5441}
5442pub type PR_QueryContextH = *mut *mut PR_QueryContext;
5443pub type PF_EffectWorldPtr = *mut PF_LayerDef;
5444#[doc = " in data is passed to every pr entry function"]
5445pub type PR_MessageFunc =
5446    ::std::option::Option<unsafe extern "C" fn(err_number: A_Err, msgA: *const A_char)>;
5447#[repr(C, packed(4))]
5448#[derive(Debug, Copy, Clone)]
5449pub struct PR_InData {
5450    pub msg_func: PR_MessageFunc,
5451    pub pica_basicP: *const SPBasicSuite,
5452    pub aegp_plug_id: A_long,
5453    pub aegp_refconPV: *mut ::std::os::raw::c_void,
5454}
5455pub const PR_DialogResult_NO_CHANGE: _bindgen_ty_75 = 0;
5456pub const PR_DialogResult_CHANGE_MADE: _bindgen_ty_75 = 1;
5457#[doc = " response from dialog box function"]
5458pub type _bindgen_ty_75 = ::std::os::raw::c_uint;
5459pub type PR_DialogResult = A_long;
5460pub const PR_QueryType_NONE: _bindgen_ty_76 = 0;
5461pub const PR_QueryType_TRANSFORM: _bindgen_ty_76 = 1;
5462pub const PR_QueryType_INTERACTIVE_WINDOW_DISPOSE: _bindgen_ty_76 = 2;
5463pub const PR_QueryType_INTERACTIVE_WINDOW_CLEAR: _bindgen_ty_76 = 3;
5464pub const PR_QueryType_INTERACTIVE_WINDOW_FROZEN_PROXY: _bindgen_ty_76 = 4;
5465pub const PR_QueryType_INTERACTIVE_SWAP_BUFFER: _bindgen_ty_76 = 5;
5466pub const PR_QueryType_INTERACTIVE_DRAW_PROCS: _bindgen_ty_76 = 6;
5467pub const PR_QueryType_PREPARE_FOR_LINE_DRAWING: _bindgen_ty_76 = 7;
5468pub const PR_QueryType_UNPREPARE_FOR_LINE_DRAWING: _bindgen_ty_76 = 8;
5469pub const PR_QueryType_GET_CURRENT_CONTEXT_SAFE_FOR_LINE_DRAWING: _bindgen_ty_76 = 9;
5470pub const PR_QueryType_GET_ARTISAN_QUALITY: _bindgen_ty_76 = 10;
5471#[doc = " The types of queries that will be made.\n"]
5472pub type _bindgen_ty_76 = ::std::os::raw::c_uint;
5473pub type PR_QueryType = A_u_long;
5474pub const PR_ArtisanFeature_NONE: _bindgen_ty_77 = 0;
5475pub type _bindgen_ty_77 = ::std::os::raw::c_uint;
5476pub type PR_ArtisanFeature_Flags = A_long;
5477pub const PR_InstanceFlags_NONE: _bindgen_ty_78 = 0;
5478pub const PR_InstanceFlags_DUPLICATE: _bindgen_ty_78 = 1;
5479#[doc = " PR_InstanceSetupFunc flags"]
5480pub type _bindgen_ty_78 = ::std::os::raw::c_uint;
5481pub type PR_InstanceFlags = A_u_long;
5482#[doc = " called after main. This happens just once, after the plugin is loaded.\n The global data is common across all instances of the plugin"]
5483pub type PR_GlobalSetupFunc = ::std::option::Option<
5484    unsafe extern "C" fn(
5485        in_dataP: *const PR_InData,
5486        global_contextH: PR_GlobalContextH,
5487        global_dataPH: *mut PR_GlobalDataH,
5488    ) -> A_Err,
5489>;
5490#[doc = " dispose of the global data"]
5491pub type PR_GlobalSetdownFunc = ::std::option::Option<
5492    unsafe extern "C" fn(
5493        in_dataP: *const PR_InData,
5494        global_contextH: PR_GlobalContextH,
5495        global_dataH: PR_GlobalDataH,
5496    ) -> A_Err,
5497>;
5498#[doc = " display an about box"]
5499pub type PR_GlobalDoAboutFunc = ::std::option::Option<
5500    unsafe extern "C" fn(
5501        in_dataP: *const PR_InData,
5502        global_contextH: PR_GlobalContextH,
5503        global_dataH: PR_GlobalDataH,
5504    ) -> A_Err,
5505>;
5506#[doc = " Analogous to an Effect's Sequence setup call. This sets up the renderer's\n instance data."]
5507pub type PR_InstanceSetupFunc = ::std::option::Option<
5508    unsafe extern "C" fn(
5509        in_dataP: *const PR_InData,
5510        global_contextH: PR_GlobalContextH,
5511        instance_contextH: PR_InstanceContextH,
5512        global_dataH: PR_GlobalDataH,
5513        flags: PR_InstanceFlags,
5514        flat_dataH0: PR_FlatHandle,
5515        instance_dataPH: *mut PR_InstanceDataH,
5516    ) -> A_Err,
5517>;
5518#[doc = " dispose of the instance data"]
5519pub type PR_InstanceSetdownFunc = ::std::option::Option<
5520    unsafe extern "C" fn(
5521        in_dataP: *const PR_InData,
5522        global_contextH: PR_GlobalContextH,
5523        instance_contextH: PR_InstanceContextH,
5524        global_dataH: PR_GlobalDataH,
5525        instance_dataH: PR_InstanceDataH,
5526    ) -> A_Err,
5527>;
5528#[doc = " flatten your data in preparation to being written to disk.\n Make sure its OS independent"]
5529pub type PR_FlattenInstanceFunc = ::std::option::Option<
5530    unsafe extern "C" fn(
5531        in_dataP: *const PR_InData,
5532        global_contextH: PR_GlobalContextH,
5533        instance_contextH: PR_InstanceContextH,
5534        global_dataH: PR_GlobalDataH,
5535        instance_dataH: PR_InstanceDataH,
5536        flatH: *mut PR_FlatHandle,
5537    ) -> A_Err,
5538>;
5539#[doc = " if the renderer has parameters, this is where they get set or changed."]
5540pub type PR_DoInstanceDialogFunc = ::std::option::Option<
5541    unsafe extern "C" fn(
5542        in_dataP: *const PR_InData,
5543        global_contextH: PR_GlobalContextH,
5544        instance_contextH: PR_InstanceContextH,
5545        global_dataH: PR_GlobalDataH,
5546        instance_dataH: PR_InstanceDataH,
5547        resultP: *mut PR_DialogResult,
5548    ) -> A_Err,
5549>;
5550#[doc = " allocate render data if needed"]
5551pub type PR_FrameSetupFunc = ::std::option::Option<
5552    unsafe extern "C" fn(
5553        in_dataP: *const PR_InData,
5554        global_contextH: PR_GlobalContextH,
5555        instance_contextH: PR_InstanceContextH,
5556        render_contextH: PR_RenderContextH,
5557        global_dataH: PR_GlobalDataH,
5558        instance_dataH: PR_InstanceDataH,
5559        render_dataPH: *mut PR_RenderDataH,
5560    ) -> A_Err,
5561>;
5562#[doc = " deallocate render data"]
5563pub type PR_FrameSetdownFunc = ::std::option::Option<
5564    unsafe extern "C" fn(
5565        in_dataP: *const PR_InData,
5566        global_contextH: PR_GlobalContextH,
5567        instance_contextH: PR_InstanceContextH,
5568        render_contextH: PR_RenderContextH,
5569        global_dataH: PR_GlobalDataH,
5570        instance_dataH: PR_InstanceDataH,
5571        render_dataH: PR_RenderDataH,
5572    ) -> A_Err,
5573>;
5574#[doc = " the main drawing routine"]
5575pub type PR_RenderFunc = ::std::option::Option<
5576    unsafe extern "C" fn(
5577        in_dataP: *const PR_InData,
5578        global_contextH: PR_GlobalContextH,
5579        instance_contextH: PR_InstanceContextH,
5580        render_contextH: PR_RenderContextH,
5581        global_dataH: PR_GlobalDataH,
5582        instance_dataH: PR_InstanceDataH,
5583        render_dataH: PR_RenderDataH,
5584    ) -> A_Err,
5585>;
5586#[doc = " AE will need to have the artisan process data on its behalf such as\n projecting points to the screen, transforming axis, etc. This routine will handle\n it all"]
5587pub type PR_QueryFunc = ::std::option::Option<
5588    unsafe extern "C" fn(
5589        in_dataP: *const PR_InData,
5590        global_contextH: PR_GlobalContextH,
5591        instance_contextH: PR_InstanceContextH,
5592        query_contextH: PR_QueryContextH,
5593        query_type: PR_QueryType,
5594        global_data: PR_GlobalDataH,
5595        instance_dataH: PR_InstanceDataH,
5596    ) -> A_Err,
5597>;
5598#[doc = " main fills this in, just once at plugin load time\n These are the entry points that AE calls to use an artisan."]
5599#[repr(C, packed(4))]
5600#[derive(Debug, Copy, Clone)]
5601pub struct PR_ArtisanEntryPoints {
5602    pub global_setup_func0: PR_GlobalSetupFunc,
5603    pub global_setdown_func0: PR_GlobalSetdownFunc,
5604    pub global_do_about_func0: PR_GlobalDoAboutFunc,
5605    pub setup_instance_func0: PR_InstanceSetupFunc,
5606    pub setdown_instance_func0: PR_InstanceSetdownFunc,
5607    pub flatten_instance_func0: PR_FlattenInstanceFunc,
5608    pub do_instance_dialog_func0: PR_DoInstanceDialogFunc,
5609    pub frame_setup_func0: PR_FrameSetupFunc,
5610    pub render_func: PR_RenderFunc,
5611    pub frame_setdown_func0: PR_FrameSetdownFunc,
5612    pub query_func0: PR_QueryFunc,
5613}
5614#[doc = " line drawing routines for interactive artisans"]
5615pub type PR_Draw_MoveToFunc = ::std::option::Option<unsafe extern "C" fn(x: A_FpLong, y: A_FpLong)>;
5616pub type PR_Draw_LineToFunc = ::std::option::Option<unsafe extern "C" fn(x: A_FpLong, y: A_FpLong)>;
5617pub type PR_Draw_LineRelFunc =
5618    ::std::option::Option<unsafe extern "C" fn(dx: A_FpLong, dy: A_FpLong)>;
5619pub type PR_Draw_ForeColorFunc =
5620    ::std::option::Option<unsafe extern "C" fn(fore_color: *const A_Color)>;
5621pub type PR_Draw_BackColorFunc =
5622    ::std::option::Option<unsafe extern "C" fn(fore_color: *const A_Color)>;
5623pub type PR_Draw_FrameRectFunc =
5624    ::std::option::Option<unsafe extern "C" fn(rectPR: *const A_FloatRect)>;
5625pub type PR_Draw_PaintRectFunc =
5626    ::std::option::Option<unsafe extern "C" fn(rectPR: *const A_FloatRect)>;
5627pub type PR_Draw_FrameOvalFunc =
5628    ::std::option::Option<unsafe extern "C" fn(rectPR: *const A_FloatRect)>;
5629pub type PR_Draw_PaintOvalFunc =
5630    ::std::option::Option<unsafe extern "C" fn(rectPR: *const A_FloatRect)>;
5631pub type PR_Draw_InvertRectFunc =
5632    ::std::option::Option<unsafe extern "C" fn(rectPR: *const A_FloatRect)>;
5633pub type PR_Draw_SetClipFunc =
5634    ::std::option::Option<unsafe extern "C" fn(rectPR: *const A_FloatRect, invertB: A_Boolean)>;
5635pub type PR_Draw_PenNormal = ::std::option::Option<unsafe extern "C" fn()>;
5636pub type PR_Draw_PenSize =
5637    ::std::option::Option<unsafe extern "C" fn(widthS: A_FpLong, heightS: A_FpLong)>;
5638pub type PR_Draw_PenPat = ::std::option::Option<unsafe extern "C" fn(pattern: A_u_char)>;
5639pub type PR_Draw_Invert = ::std::option::Option<unsafe extern "C" fn(arg1: A_Boolean)>;
5640pub type PR_CacheIconFunc = ::std::option::Option<unsafe extern "C" fn(iconP: PF_EffectWorldPtr)>;
5641pub type PR_DrawCachedIconFunc = ::std::option::Option<unsafe extern "C" fn(x: A_long, y: A_long)>;
5642pub type PR_DrawStringFunc = ::std::option::Option<
5643    unsafe extern "C" fn(
5644        nameZ: *const A_UTF16Char,
5645        style: PF_FontStyleSheet,
5646        fore_colorP: *const A_Color,
5647        shadow_colorP: *const A_Color,
5648        originP: *const A_FloatPoint,
5649        shadow_offsetP: *const A_FloatPoint,
5650    ),
5651>;
5652pub type PR_StrokePolyFunc =
5653    ::std::option::Option<unsafe extern "C" fn(nptsL: A_long, ptsA: *mut A_FloatPoint)>;
5654pub type PR_PaintPolyFunc =
5655    ::std::option::Option<unsafe extern "C" fn(nptsL: A_long, ptsA: *mut A_FloatPoint)>;
5656#[repr(C, packed(4))]
5657#[derive(Debug, Copy, Clone)]
5658pub struct PR_InteractiveDrawProcs {
5659    pub move_to_func: PR_Draw_MoveToFunc,
5660    pub line_to_func: PR_Draw_LineToFunc,
5661    pub line_rel_func: PR_Draw_LineRelFunc,
5662    pub fore_color_func: PR_Draw_ForeColorFunc,
5663    pub back_color_func: PR_Draw_BackColorFunc,
5664    pub frame_rect_func: PR_Draw_FrameRectFunc,
5665    pub paint_rect_func: PR_Draw_PaintRectFunc,
5666    pub frame_oval_func: PR_Draw_FrameOvalFunc,
5667    pub paint_oval_func: PR_Draw_PaintOvalFunc,
5668    pub invert_rect_func: PR_Draw_InvertRectFunc,
5669    pub set_clip_func: PR_Draw_SetClipFunc,
5670    pub pen_normal_func: PR_Draw_PenNormal,
5671    pub pen_size_func: PR_Draw_PenSize,
5672    pub pen_pat_func: PR_Draw_PenPat,
5673    pub invert_func: PR_Draw_Invert,
5674    pub cache_icon_func: PR_CacheIconFunc,
5675    pub draw_cached_icon_func: PR_DrawCachedIconFunc,
5676    pub draw_string_func: PR_DrawStringFunc,
5677    pub stroke_poly_func: PR_StrokePolyFunc,
5678    pub paint_poly_func: PR_PaintPolyFunc,
5679}
5680#[repr(C, packed(2))]
5681#[derive(Debug, Copy, Clone)]
5682pub struct PF_MaskSuite1 {
5683    pub PF_MaskWorldWithPath: ::std::option::Option<
5684        unsafe extern "C" fn(
5685            effect_ref: PF_ProgPtr,
5686            mask: *mut PF_PathOutlinePtr,
5687            feather_x: PF_FpLong,
5688            feather_y: PF_FpLong,
5689            invert: PF_Boolean,
5690            opacity: PF_FpLong,
5691            quality: PF_Quality,
5692            worldP: *mut PF_EffectWorld,
5693            bboxPR0: *mut PF_Rect,
5694        ) -> A_Err,
5695    >,
5696}
5697#[repr(C)]
5698#[derive(Debug, Copy, Clone)]
5699pub struct AEIO_FileExt {
5700    pub pad: A_char,
5701    pub extension: [A_char; 3usize],
5702}
5703#[repr(C)]
5704#[derive(Debug, Copy, Clone)]
5705pub struct _AEGP_MarkerVal {
5706    _unused: [u8; 0],
5707}
5708pub type AEGP_ConstMarkerValP = *const _AEGP_MarkerVal;
5709#[doc = " in data is passed to every function block function"]
5710pub type AEIO_MessageFunc =
5711    ::std::option::Option<unsafe extern "C" fn(err_number: A_Err, msgA: *const A_char)>;
5712#[repr(C)]
5713#[derive(Debug, Copy, Clone)]
5714pub struct AEIO_InData {
5715    pub msg_func: AEIO_MessageFunc,
5716    pub pica_basicP: *const SPBasicSuite,
5717    pub aegp_plug_id: A_long,
5718    pub aegp_refconPV: *mut ::std::os::raw::c_void,
5719}
5720pub type AEIO_BasicData = AEIO_InData;
5721pub const AEIO_Err_UNSUPPORTED_CALLBACK: _bindgen_ty_79 = 9985;
5722pub const AEIO_Err_UNIMPLEMENTED: _bindgen_ty_79 = 9986;
5723pub const AEIO_Err_UNSUPPORTED_FILETYPE: _bindgen_ty_79 = 9987;
5724pub const AEIO_Err_INAPPROPRIATE_ACTION: _bindgen_ty_79 = 9988;
5725pub const AEIO_Err_BAD_BMWORLD: _bindgen_ty_79 = 9989;
5726pub const AEIO_Err_INCONSISTENT_PARAMETERS: _bindgen_ty_79 = 9990;
5727pub const AEIO_Err_INVALID_TIME: _bindgen_ty_79 = 9991;
5728pub const AEIO_Err_USE_DFLT_CALLBACK: _bindgen_ty_79 = 9992;
5729pub const AEIO_Err_USER_CANCEL: _bindgen_ty_79 = 9993;
5730pub const AEIO_Err_DISK_FULL: _bindgen_ty_79 = 9994;
5731pub const AEIO_Err_INITIALIZE_FAILED: _bindgen_ty_79 = 9995;
5732pub const AEIO_Err_BAD_FILENAME: _bindgen_ty_79 = 9996;
5733pub const AEIO_Err_PARSING: _bindgen_ty_79 = 9997;
5734pub const AEIO_Err_NOT_SEQUENCE: _bindgen_ty_79 = 9998;
5735pub const AEIO_Err_USE_DFLT_GETSIZES_FREESPACE: _bindgen_ty_79 = 9999;
5736pub type _bindgen_ty_79 = ::std::os::raw::c_uint;
5737pub type AEIO_Handle = *mut *mut _Up_OpaqueMem;
5738pub const AEIO_DFlags_NONE: _bindgen_ty_80 = 0;
5739pub const AEIO_DFlags_DID_DEINT: _bindgen_ty_80 = 2;
5740pub const AEIO_DFlags_DID_ALPHA_CONV: _bindgen_ty_80 = 4;
5741pub type _bindgen_ty_80 = ::std::os::raw::c_uint;
5742pub type AEIO_DrawingFlags = A_long;
5743pub const AEIO_Qual_LOW: _bindgen_ty_81 = 0;
5744pub const AEIO_Qual_HIGH: _bindgen_ty_81 = 1;
5745pub type _bindgen_ty_81 = ::std::os::raw::c_uint;
5746pub type AEIO_Quality = A_short;
5747pub const AEIO_TimeDir_FORWARD: _bindgen_ty_82 = 0;
5748pub const AEIO_TimeDir_BACKWARD: _bindgen_ty_82 = 1;
5749pub const AEIO_TimeDir_INCLUDE_BASE_TIME: _bindgen_ty_82 = 4096;
5750pub type _bindgen_ty_82 = ::std::os::raw::c_uint;
5751pub type AEIO_TimeDir = A_short;
5752pub const AEIO_IdleFlag_NONE: _bindgen_ty_83 = 0;
5753pub const AEIO_IdleFlag_PURGED_MEM: _bindgen_ty_83 = 1;
5754pub const AEIO_IdleFlag_ADD_YOUR_OWN: _bindgen_ty_83 = 2;
5755pub type _bindgen_ty_83 = ::std::os::raw::c_uint;
5756pub type AEIO_IdleFlags = A_long;
5757pub const AEIO_SndQuality_APPROX: _bindgen_ty_84 = -1;
5758pub const AEIO_SndQuality_LO: _bindgen_ty_84 = 0;
5759pub const AEIO_SndQuality_HI: _bindgen_ty_84 = 1;
5760pub type _bindgen_ty_84 = ::std::os::raw::c_int;
5761pub type AEIO_SndQuality = A_long;
5762pub const AEIO_E_UNSIGNED_PCM: _bindgen_ty_85 = 1;
5763pub const AEIO_E_SIGNED_PCM: _bindgen_ty_85 = 2;
5764pub const AEIO_E_SIGNED_FLOAT: _bindgen_ty_85 = 3;
5765pub type _bindgen_ty_85 = ::std::os::raw::c_uint;
5766pub type AEIO_SndEncoding = A_short;
5767pub const AEIO_SS_1: _bindgen_ty_86 = 1;
5768pub const AEIO_SS_2: _bindgen_ty_86 = 2;
5769pub const AEIO_SS_4: _bindgen_ty_86 = 4;
5770pub type _bindgen_ty_86 = ::std::os::raw::c_uint;
5771pub type AEIO_SndSampleSize = A_short;
5772pub const AEIO_SndChannels_MONO: _bindgen_ty_87 = 1;
5773pub const AEIO_SndChannels_STEREO: _bindgen_ty_87 = 2;
5774pub type _bindgen_ty_87 = ::std::os::raw::c_uint;
5775pub type AEIO_SndChannels = A_short;
5776pub const AEIO_Marker_URL_FLIP: _bindgen_ty_88 = 0;
5777pub const AEIO_Marker_CHAPTER: _bindgen_ty_88 = 1;
5778pub const AEIO_Marker_HOTSPOT: _bindgen_ty_88 = 2;
5779pub const AEIO_Marker_NONE: _bindgen_ty_88 = 3;
5780pub type _bindgen_ty_88 = ::std::os::raw::c_uint;
5781pub type AEIO_MarkerType = A_u_char;
5782pub const AEIO_Field_FRAME: _bindgen_ty_89 = 0;
5783pub const AEIO_Field_UPPER: _bindgen_ty_89 = 1;
5784pub const AEIO_Field_LOWER: _bindgen_ty_89 = 2;
5785pub type _bindgen_ty_89 = ::std::os::raw::c_uint;
5786pub type AEIO_Field = A_long;
5787#[repr(C)]
5788#[derive(Debug, Copy, Clone)]
5789pub struct AEIO_Marker {
5790    pub chapterZ0: *const A_char,
5791    pub commentZ0: *const A_char,
5792    pub urlZ0: *const A_char,
5793    pub url_frame_targetZ0: *const A_char,
5794}
5795pub const AEIO_FrameBlend_NONE: _bindgen_ty_90 = 0;
5796pub const AEIO_FrameBlend_LOW: _bindgen_ty_90 = 1;
5797pub const AEIO_FrameBlend_HIGH: _bindgen_ty_90 = 2;
5798pub type _bindgen_ty_90 = ::std::os::raw::c_uint;
5799pub type AEIO_FrameBlend = A_char;
5800pub const AEIO_LFlag_ALFA: _bindgen_ty_91 = 1;
5801pub const AEIO_LFlag_FIELDS: _bindgen_ty_91 = 2;
5802pub const AEIO_LFlag_SIGNATURE: _bindgen_ty_91 = 4;
5803pub type _bindgen_ty_91 = ::std::os::raw::c_uint;
5804pub type AEIO_LabelFlags = A_long;
5805pub const AEIO_InputDepth_1: _bindgen_ty_92 = 1;
5806pub const AEIO_InputDepth_2: _bindgen_ty_92 = 2;
5807pub const AEIO_InputDepth_4: _bindgen_ty_92 = 4;
5808pub const AEIO_InputDepth_8: _bindgen_ty_92 = 8;
5809pub const AEIO_InputDepth_16: _bindgen_ty_92 = 16;
5810pub const AEIO_InputDepth_24: _bindgen_ty_92 = 24;
5811pub const AEIO_InputDepth_30: _bindgen_ty_92 = 30;
5812pub const AEIO_InputDepth_32: _bindgen_ty_92 = 32;
5813pub const AEIO_InputDepth_GRAY_2: _bindgen_ty_92 = 34;
5814pub const AEIO_InputDepth_GRAY_4: _bindgen_ty_92 = 36;
5815pub const AEIO_InputDepth_GRAY_8: _bindgen_ty_92 = 40;
5816pub const AEIO_InputDepth_48: _bindgen_ty_92 = 48;
5817pub const AEIO_InputDepth_64: _bindgen_ty_92 = 64;
5818pub const AEIO_InputDepth_96: _bindgen_ty_92 = 96;
5819pub const AEIO_InputDepth_128: _bindgen_ty_92 = 128;
5820pub const AEIO_InputDepth_GRAY_16: _bindgen_ty_92 = -16;
5821pub const AEIO_InputDepth_GRAY_32: _bindgen_ty_92 = -32;
5822pub type _bindgen_ty_92 = ::std::os::raw::c_int;
5823pub type AEIO_InputDepth = A_long;
5824pub const AEIO_SupportedDepthFlags_NONE: _bindgen_ty_93 = 0;
5825pub const AEIO_SupportedDepthFlags_DEPTH_1: _bindgen_ty_93 = 2;
5826pub const AEIO_SupportedDepthFlags_DEPTH_2: _bindgen_ty_93 = 4;
5827pub const AEIO_SupportedDepthFlags_DEPTH_4: _bindgen_ty_93 = 8;
5828pub const AEIO_SupportedDepthFlags_DEPTH_8: _bindgen_ty_93 = 16;
5829pub const AEIO_SupportedDepthFlags_DEPTH_16: _bindgen_ty_93 = 32;
5830pub const AEIO_SupportedDepthFlags_DEPTH_24: _bindgen_ty_93 = 64;
5831pub const AEIO_SupportedDepthFlags_DEPTH_32: _bindgen_ty_93 = 128;
5832pub const AEIO_SupportedDepthFlags_DEPTH_GRAY_2: _bindgen_ty_93 = 256;
5833pub const AEIO_SupportedDepthFlags_DEPTH_GRAY_4: _bindgen_ty_93 = 512;
5834pub const AEIO_SupportedDepthFlags_DEPTH_GRAY_8: _bindgen_ty_93 = 1024;
5835pub const AEIO_SupportedDepthFlags_DEPTH_48: _bindgen_ty_93 = 2048;
5836pub const AEIO_SupportedDepthFlags_DEPTH_64: _bindgen_ty_93 = 4096;
5837pub const AEIO_SupportedDepthFlags_DEPTH_GRAY_16: _bindgen_ty_93 = 8192;
5838pub const AEIO_SupportedDepthFlags_DEPTH_96: _bindgen_ty_93 = 16384;
5839pub const AEIO_SupportedDepthFlags_DEPTH_128: _bindgen_ty_93 = 32768;
5840pub const AEIO_SupportedDepthFlags_LAST: _bindgen_ty_93 = 65536;
5841pub type _bindgen_ty_93 = ::std::os::raw::c_uint;
5842pub type AEIO_SupportedDepthFlags = A_long;
5843pub const AEIO_Phase_NO_PULLDOWN: _bindgen_ty_94 = 0;
5844pub const AEIO_Phase_WSSWW: _bindgen_ty_94 = 1;
5845pub const AEIO_Phase_SSWWW: _bindgen_ty_94 = 2;
5846pub const AEIO_Phase_SWWWS: _bindgen_ty_94 = 3;
5847pub const AEIO_Phase_WWWSS: _bindgen_ty_94 = 4;
5848pub const AEIO_Phase_WWSSW: _bindgen_ty_94 = 5;
5849pub type _bindgen_ty_94 = ::std::os::raw::c_uint;
5850pub type AEIO_Pulldown = A_long;
5851pub type AEIO_FileType = A_long;
5852pub type AEIO_Creator = A_long;
5853#[repr(C)]
5854#[derive(Debug, Copy, Clone)]
5855pub struct PFILE_FileKind {
5856    pub type_: AEIO_FileType,
5857    pub creator: AEIO_Creator,
5858}
5859#[repr(C)]
5860#[derive(Copy, Clone)]
5861pub union AEIO_FileKind {
5862    pub mac: PFILE_FileKind,
5863    pub ext: AEIO_FileExt,
5864    pub scrap: A_long,
5865}
5866#[repr(C)]
5867#[derive(Debug, Copy, Clone)]
5868pub struct AEIO_Verbiage {
5869    pub name: [A_char; 32usize],
5870    pub type_: [A_char; 32usize],
5871    pub sub_type: [A_char; 128usize],
5872}
5873#[repr(C)]
5874#[derive(Debug, Copy, Clone)]
5875pub struct AEIO_SeqSpec {
5876    _unused: [u8; 0],
5877}
5878pub type AEIO_InSpecH = *mut *mut AEIO_SeqSpec;
5879#[repr(C)]
5880#[derive(Debug, Copy, Clone)]
5881pub struct AEIO_OutSpec {
5882    _unused: [u8; 0],
5883}
5884pub type AEIO_OutSpecH = *mut *mut AEIO_OutSpec;
5885pub type AEIO_ModuleSignature = A_long;
5886#[repr(C)]
5887#[derive(Debug, Copy, Clone)]
5888pub struct AEIO_RationalScale {
5889    pub x: A_Ratio,
5890    pub y: A_Ratio,
5891}
5892pub const AEIO_AlphaPremul: _bindgen_ty_95 = 1;
5893pub const AEIO_AlphaInverted: _bindgen_ty_95 = 2;
5894pub type _bindgen_ty_95 = ::std::os::raw::c_uint;
5895pub type AEIO_AlphaFlags = A_u_long;
5896pub const AEIO_Alpha_STRAIGHT: _bindgen_ty_96 = 0;
5897pub const AEIO_Alpha_PREMUL: _bindgen_ty_96 = 1;
5898pub const AEIO_Alpha_IGNORE: _bindgen_ty_96 = 2;
5899pub const AEIO_Alpha_NONE: _bindgen_ty_96 = 3;
5900pub type _bindgen_ty_96 = ::std::os::raw::c_uint;
5901pub type AEIO_AlphaType = A_u_char;
5902#[repr(C, packed(2))]
5903#[derive(Debug, Copy, Clone)]
5904pub struct AEIO_AlphaLabel {
5905    pub version: A_short,
5906    pub flags: AEIO_AlphaFlags,
5907    pub red: A_u_char,
5908    pub green: A_u_char,
5909    pub blue: A_u_char,
5910    pub alpha: AEIO_AlphaType,
5911}
5912pub type AEIO_AbortProc =
5913    ::std::option::Option<unsafe extern "C" fn(refcon: *mut ::std::os::raw::c_void) -> A_Err>;
5914pub type AEIO_ProgressProc = ::std::option::Option<
5915    unsafe extern "C" fn(
5916        refcon: *mut ::std::os::raw::c_void,
5917        count: A_long,
5918        total: A_long,
5919    ) -> A_Err,
5920>;
5921#[repr(C)]
5922#[derive(Debug, Copy, Clone)]
5923pub struct AEIO_InterruptFuncs {
5924    pub refcon: *mut ::std::os::raw::c_void,
5925    pub abort0: AEIO_AbortProc,
5926    pub progress0: AEIO_ProgressProc,
5927}
5928#[repr(C)]
5929#[derive(Debug, Copy, Clone)]
5930pub struct AEIO_DrawFramePB {
5931    pub qual: AEIO_Quality,
5932    pub alpha_label: AEIO_AlphaLabel,
5933    pub field_request: AEIO_Field,
5934    pub rs: AEIO_RationalScale,
5935    pub tr: A_Time,
5936    pub duration: A_Time,
5937    pub time_filter: AEIO_FrameBlend,
5938    pub required_region0: A_LRect,
5939    pub inter: AEIO_InterruptFuncs,
5940}
5941pub const AEIO_RenderMarkerFlag_NONE: _bindgen_ty_97 = 0;
5942pub const AEIO_RenderMarkerFlag_COMP: _bindgen_ty_97 = 1;
5943pub type _bindgen_ty_97 = ::std::os::raw::c_uint;
5944pub type AEIO_RenderMarkerFlag = A_long;
5945pub const AEIO_MFlag_NONE: _bindgen_ty_98 = 0;
5946pub const AEIO_MFlag_INPUT: _bindgen_ty_98 = 1;
5947pub const AEIO_MFlag_OUTPUT: _bindgen_ty_98 = 2;
5948pub const AEIO_MFlag_FILE: _bindgen_ty_98 = 4;
5949pub const AEIO_MFlag_STILL: _bindgen_ty_98 = 8;
5950pub const AEIO_MFlag_VIDEO: _bindgen_ty_98 = 16;
5951pub const AEIO_MFlag_AUDIO: _bindgen_ty_98 = 32;
5952pub const AEIO_MFlag_NO_TIME: _bindgen_ty_98 = 64;
5953pub const AEIO_MFlag_INTERACTIVE_GET: _bindgen_ty_98 = 128;
5954pub const AEIO_MFlag_INTERACTIVE_PUT: _bindgen_ty_98 = 256;
5955pub const AEIO_MFlag_CANT_CLIP: _bindgen_ty_98 = 512;
5956pub const AEIO_MFlag_MUST_INTERACT_PUT: _bindgen_ty_98 = 1024;
5957pub const AEIO_MFlag_CANT_SOUND_INTERLEAVE: _bindgen_ty_98 = 2048;
5958pub const AEIO_MFlag_CAN_ADD_FRAMES_NON_LINEAR: _bindgen_ty_98 = 4096;
5959pub const AEIO_MFlag_HOST_DEPTH_DIALOG: _bindgen_ty_98 = 8192;
5960pub const AEIO_MFlag_HOST_FRAME_START_DIALOG: _bindgen_ty_98 = 16384;
5961pub const AEIO_MFlag_RESERVED1: _bindgen_ty_98 = 32768;
5962pub const AEIO_MFlag_NO_OPTIONS: _bindgen_ty_98 = 65536;
5963pub const AEIO_MFlag_RESERVED2: _bindgen_ty_98 = 131072;
5964pub const AEIO_MFlag_RESERVED3: _bindgen_ty_98 = 262144;
5965pub const AEIO_MFlag_NO_PIXELS: _bindgen_ty_98 = 524288;
5966pub const AEIO_MFlag_SEQUENCE_OPTIONS_OK: _bindgen_ty_98 = 1048576;
5967pub const AEIO_MFlag_INPUT_OPTIONS: _bindgen_ty_98 = 2097152;
5968pub const AEIO_MFlag_HSF_AWARE: _bindgen_ty_98 = 4194304;
5969pub const AEIO_MFlag_HAS_LAYERS: _bindgen_ty_98 = 8388608;
5970pub const AEIO_MFlag_SCRAP: _bindgen_ty_98 = 16777216;
5971pub const AEIO_MFlag_NO_UI: _bindgen_ty_98 = 33554432;
5972pub const AEIO_MFlag_SEQ_OPTIONS_DLG: _bindgen_ty_98 = 67108864;
5973pub const AEIO_MFlag_HAS_AUX_DATA: _bindgen_ty_98 = 134217728;
5974pub const AEIO_MFlag_HAS_META_DATA: _bindgen_ty_98 = 268435456;
5975pub const AEIO_MFlag_CAN_DO_MARKERS: _bindgen_ty_98 = 536870912;
5976pub const AEIO_MFlag_CAN_DRAW_DEEP: _bindgen_ty_98 = 1073741824;
5977pub const AEIO_MFlag_RESERVED4: _bindgen_ty_98 = 2147483648;
5978#[doc = "\n PUBLIC ///////////////////////////////////\n"]
5979pub type _bindgen_ty_98 = ::std::os::raw::c_uint;
5980pub type AEIO_ModuleFlags = A_u_long;
5981pub const AEIO_MFlag2_NONE: _bindgen_ty_99 = 0;
5982pub const AEIO_MFlag2_AUDIO_OPTIONS: _bindgen_ty_99 = 1;
5983pub const AEIO_MFlag2_RESERVED1: _bindgen_ty_99 = 2;
5984pub const AEIO_MFlag2_SEND_ADDMARKER_BEFORE_ADDFRAME: _bindgen_ty_99 = 4;
5985pub const AEIO_MFlag2_CAN_DO_MARKERS_2: _bindgen_ty_99 = 8;
5986pub const AEIO_MFlag2_CAN_DRAW_FLOAT: _bindgen_ty_99 = 16;
5987pub const AEIO_MFlag2_RESERVED2: _bindgen_ty_99 = 32;
5988pub const AEIO_MFlag2_CAN_DO_AUDIO_32: _bindgen_ty_99 = 64;
5989pub const AEIO_MFlag2_RESERVED3: _bindgen_ty_99 = 128;
5990pub const AEIO_MFlag2_SUPPORTS_ICC_PROFILES: _bindgen_ty_99 = 256;
5991pub const AEIO_MFlag2_CAN_DO_MARKERS_3: _bindgen_ty_99 = 512;
5992pub const AEIO_MFlag2_SEND_ADDMARKER_BEFORE_STARTADDING: _bindgen_ty_99 = 1024;
5993pub const AEIO_MFlag2_RESERVED4: _bindgen_ty_99 = 2048;
5994pub const AEIO_MFlag2_USES_QUICKTIME: _bindgen_ty_99 = 4096;
5995pub const AEIO_MFlag2_RESERVED5: _bindgen_ty_99 = 8192;
5996pub const AEIO_MFlag2_RESERVED6: _bindgen_ty_99 = 16384;
5997pub const AEIO_MFlag2_RESERVED7: _bindgen_ty_99 = 32768;
5998pub const AEIO_MFlag2_RESERVED8: _bindgen_ty_99 = 65536;
5999pub const AEIO_MFlag2_RESERVED9: _bindgen_ty_99 = 131072;
6000pub const AEIO_MFlag2_RESERVED10: _bindgen_ty_99 = 262144;
6001pub const AEIO_MFlag2_RESERVED11: _bindgen_ty_99 = 524288;
6002pub const AEIO_MFlag2_RESERVED12: _bindgen_ty_99 = 1048576;
6003pub const AEIO_MFlag2_RESERVED21: _bindgen_ty_99 = 2097152;
6004pub const AEIO_MFlag2_RESERVED22: _bindgen_ty_99 = 4194304;
6005pub const AEIO_MFlag2_RESERVED23: _bindgen_ty_99 = 8388608;
6006pub const AEIO_MFlag2_RESERVED24: _bindgen_ty_99 = 16777216;
6007pub const AEIO_MFlag2_RESERVED25: _bindgen_ty_99 = 33554432;
6008pub const AEIO_MFlag2_SUPPORTS_CICP: _bindgen_ty_99 = 67108864;
6009pub type _bindgen_ty_99 = ::std::os::raw::c_uint;
6010pub type AEIO_ModuleFlags2 = A_u_long;
6011#[repr(C)]
6012#[derive(Debug, Copy, Clone)]
6013pub struct AEIO_AuxExt {
6014    pub extension: [A_char; 4usize],
6015    pub type_: A_long,
6016    pub creator: A_long,
6017}
6018#[repr(C)]
6019#[derive(Copy, Clone)]
6020pub struct AEIO_ModuleInfo {
6021    pub sig: AEIO_ModuleSignature,
6022    pub name: [A_char; 32usize],
6023    pub flags: AEIO_ModuleFlags,
6024    pub flags2: AEIO_ModuleFlags2,
6025    pub max_width: A_long,
6026    pub max_height: A_long,
6027    pub num_filetypes: A_short,
6028    pub num_extensions: A_short,
6029    pub num_clips: A_short,
6030    pub pad: A_short,
6031    pub create_kind: PFILE_FileKind,
6032    pub create_ext: AEIO_FileExt,
6033    pub read_kinds: [AEIO_FileKind; 16usize],
6034    pub num_aux_extensionsS: A_short,
6035    pub aux_ext: [AEIO_AuxExt; 16usize],
6036}
6037#[repr(C)]
6038#[derive(Debug, Copy, Clone)]
6039pub struct AEIO_OptionsCBInfo {
6040    pub o_flags: AEIO_SupportedDepthFlags,
6041    pub out_specH: AEIO_OutSpecH,
6042}
6043#[repr(C)]
6044#[derive(Debug, Copy, Clone)]
6045pub struct AEIO_DrawSparseFramePB {
6046    pub qual: AEIO_Quality,
6047    pub rs: AEIO_RationalScale,
6048    pub tr: A_Time,
6049    pub duration: A_Time,
6050    pub required_region: A_LRect,
6051    pub inter: AEIO_InterruptFuncs,
6052}
6053#[doc = "   plugin entry points  *****************************\n the main routine of each plugin fills in these function pointers\n AE will call them as appropriate"]
6054#[repr(C)]
6055#[derive(Debug, Copy, Clone)]
6056pub struct _AEIO_FunctionBlock4 {
6057    pub AEIO_InitInSpecFromFile: ::std::option::Option<
6058        unsafe extern "C" fn(
6059            basic_dataP: *mut AEIO_BasicData,
6060            file_pathZ: *const A_UTF16Char,
6061            inH: AEIO_InSpecH,
6062        ) -> A_Err,
6063    >,
6064    pub AEIO_InitInSpecInteractive: ::std::option::Option<
6065        unsafe extern "C" fn(basic_dataP: *mut AEIO_BasicData, inH: AEIO_InSpecH) -> A_Err,
6066    >,
6067    pub AEIO_DisposeInSpec: ::std::option::Option<
6068        unsafe extern "C" fn(basic_dataP: *mut AEIO_BasicData, inH: AEIO_InSpecH) -> A_Err,
6069    >,
6070    pub AEIO_FlattenOptions: ::std::option::Option<
6071        unsafe extern "C" fn(
6072            basic_dataP: *mut AEIO_BasicData,
6073            inH: AEIO_InSpecH,
6074            flat_optionsPH: *mut AEIO_Handle,
6075        ) -> A_Err,
6076    >,
6077    pub AEIO_InflateOptions: ::std::option::Option<
6078        unsafe extern "C" fn(
6079            basic_dataP: *mut AEIO_BasicData,
6080            inH: AEIO_InSpecH,
6081            flat_optionsH: AEIO_Handle,
6082        ) -> A_Err,
6083    >,
6084    pub AEIO_SynchInSpec: ::std::option::Option<
6085        unsafe extern "C" fn(
6086            basic_dataP: *mut AEIO_BasicData,
6087            inH: AEIO_InSpecH,
6088            changed0: *mut A_Boolean,
6089        ) -> A_Err,
6090    >,
6091    pub AEIO_GetActiveExtent: ::std::option::Option<
6092        unsafe extern "C" fn(
6093            basic_dataP: *mut AEIO_BasicData,
6094            inH: AEIO_InSpecH,
6095            tr: *const A_Time,
6096            extent: *mut A_LRect,
6097        ) -> A_Err,
6098    >,
6099    pub AEIO_GetInSpecInfo: ::std::option::Option<
6100        unsafe extern "C" fn(
6101            basic_dataP: *mut AEIO_BasicData,
6102            inH: AEIO_InSpecH,
6103            verbiageP: *mut AEIO_Verbiage,
6104        ) -> A_Err,
6105    >,
6106    pub AEIO_DrawSparseFrame: ::std::option::Option<
6107        unsafe extern "C" fn(
6108            basic_dataP: *mut AEIO_BasicData,
6109            inH: AEIO_InSpecH,
6110            sparse_framePPB: *const AEIO_DrawSparseFramePB,
6111            worldP: *mut PF_EffectWorld,
6112            draw_flagsP: *mut AEIO_DrawingFlags,
6113        ) -> A_Err,
6114    >,
6115    pub AEIO_GetDimensions: ::std::option::Option<
6116        unsafe extern "C" fn(
6117            basic_dataP: *mut AEIO_BasicData,
6118            inH: AEIO_InSpecH,
6119            rs0: *const AEIO_RationalScale,
6120            width0: *mut A_long,
6121            height0: *mut A_long,
6122        ) -> A_Err,
6123    >,
6124    pub AEIO_GetDuration: ::std::option::Option<
6125        unsafe extern "C" fn(
6126            basic_dataP: *mut AEIO_BasicData,
6127            inH: AEIO_InSpecH,
6128            tr: *mut A_Time,
6129        ) -> A_Err,
6130    >,
6131    pub AEIO_GetTime: ::std::option::Option<
6132        unsafe extern "C" fn(
6133            basic_dataP: *mut AEIO_BasicData,
6134            inH: AEIO_InSpecH,
6135            tr: *mut A_Time,
6136        ) -> A_Err,
6137    >,
6138    pub AEIO_GetSound: ::std::option::Option<
6139        unsafe extern "C" fn(
6140            basic_dataP: *mut AEIO_BasicData,
6141            inH: AEIO_InSpecH,
6142            quality: AEIO_SndQuality,
6143            interrupt_funcsP0: *const AEIO_InterruptFuncs,
6144            startPT: *const A_Time,
6145            durPT: *const A_Time,
6146            start_sampLu: A_u_long,
6147            num_samplesLu: A_u_long,
6148            dataPV: *mut ::std::os::raw::c_void,
6149        ) -> A_Err,
6150    >,
6151    pub AEIO_InqNextFrameTime: ::std::option::Option<
6152        unsafe extern "C" fn(
6153            basic_dataP: *mut AEIO_BasicData,
6154            inH: AEIO_InSpecH,
6155            base_time_tr: *const A_Time,
6156            time_dir: AEIO_TimeDir,
6157            found0: *mut A_Boolean,
6158            key_time_tr0: *mut A_Time,
6159        ) -> A_Err,
6160    >,
6161    pub AEIO_InitOutputSpec: ::std::option::Option<
6162        unsafe extern "C" fn(
6163            basic_dataP: *mut AEIO_BasicData,
6164            outH: AEIO_OutSpecH,
6165            user_interacted: *mut A_Boolean,
6166        ) -> A_Err,
6167    >,
6168    pub AEIO_GetFlatOutputOptions: ::std::option::Option<
6169        unsafe extern "C" fn(
6170            basic_dataP: *mut AEIO_BasicData,
6171            outH: AEIO_OutSpecH,
6172            optionsH: *mut AEIO_Handle,
6173        ) -> A_Err,
6174    >,
6175    pub AEIO_DisposeOutputOptions: ::std::option::Option<
6176        unsafe extern "C" fn(
6177            basic_dataP: *mut AEIO_BasicData,
6178            optionsPV: *mut ::std::os::raw::c_void,
6179        ) -> A_Err,
6180    >,
6181    pub AEIO_UserOptionsDialog: ::std::option::Option<
6182        unsafe extern "C" fn(
6183            basic_dataP: *mut AEIO_BasicData,
6184            outH: AEIO_OutSpecH,
6185            sample0: *const PF_EffectWorld,
6186            user_interacted0: *mut A_Boolean,
6187        ) -> A_Err,
6188    >,
6189    pub AEIO_GetOutputInfo: ::std::option::Option<
6190        unsafe extern "C" fn(
6191            basic_dataP: *mut AEIO_BasicData,
6192            outH: AEIO_OutSpecH,
6193            verbiage: *mut AEIO_Verbiage,
6194        ) -> A_Err,
6195    >,
6196    pub AEIO_OutputInfoChanged: ::std::option::Option<
6197        unsafe extern "C" fn(basic_dataP: *mut AEIO_BasicData, outH: AEIO_OutSpecH) -> A_Err,
6198    >,
6199    pub AEIO_SetOutputFile: ::std::option::Option<
6200        unsafe extern "C" fn(
6201            basic_dataP: *mut AEIO_BasicData,
6202            outH: AEIO_OutSpecH,
6203            file_pathZ: *const A_UTF16Char,
6204        ) -> A_Err,
6205    >,
6206    pub AEIO_StartAdding: ::std::option::Option<
6207        unsafe extern "C" fn(
6208            basic_dataP: *mut AEIO_BasicData,
6209            outH: AEIO_OutSpecH,
6210            flags: A_long,
6211        ) -> A_Err,
6212    >,
6213    pub AEIO_AddFrame: ::std::option::Option<
6214        unsafe extern "C" fn(
6215            basic_dataP: *mut AEIO_BasicData,
6216            outH: AEIO_OutSpecH,
6217            frame_index: A_long,
6218            frames: A_long,
6219            wP: *const PF_EffectWorld,
6220            origin0: *const A_LPoint,
6221            was_compressedB: A_Boolean,
6222            inter0: *mut AEIO_InterruptFuncs,
6223        ) -> A_Err,
6224    >,
6225    pub AEIO_EndAdding: ::std::option::Option<
6226        unsafe extern "C" fn(
6227            basic_dataP: *mut AEIO_BasicData,
6228            outH: AEIO_OutSpecH,
6229            flags: A_long,
6230        ) -> A_Err,
6231    >,
6232    pub AEIO_OutputFrame: ::std::option::Option<
6233        unsafe extern "C" fn(
6234            basic_dataP: *mut AEIO_BasicData,
6235            outH: AEIO_OutSpecH,
6236            wP: *const PF_EffectWorld,
6237        ) -> A_Err,
6238    >,
6239    pub AEIO_WriteLabels: ::std::option::Option<
6240        unsafe extern "C" fn(
6241            basic_dataP: *mut AEIO_BasicData,
6242            outH: AEIO_OutSpecH,
6243            written: *mut AEIO_LabelFlags,
6244        ) -> A_Err,
6245    >,
6246    pub AEIO_GetSizes: ::std::option::Option<
6247        unsafe extern "C" fn(
6248            basic_dataP: *mut AEIO_BasicData,
6249            outH: AEIO_OutSpecH,
6250            free_space: *mut A_u_longlong,
6251            file_size: *mut A_u_longlong,
6252        ) -> A_Err,
6253    >,
6254    pub AEIO_Flush: ::std::option::Option<
6255        unsafe extern "C" fn(basic_dataP: *mut AEIO_BasicData, outH: AEIO_OutSpecH) -> A_Err,
6256    >,
6257    pub AEIO_AddSoundChunk: ::std::option::Option<
6258        unsafe extern "C" fn(
6259            basic_dataP: *mut AEIO_BasicData,
6260            outH: AEIO_OutSpecH,
6261            start: *const A_Time,
6262            num_samplesLu: A_u_long,
6263            dataPV: *const ::std::os::raw::c_void,
6264        ) -> A_Err,
6265    >,
6266    pub AEIO_Idle: ::std::option::Option<
6267        unsafe extern "C" fn(
6268            basic_dataP: *mut AEIO_BasicData,
6269            sig: AEIO_ModuleSignature,
6270            idle_flags0: *mut AEIO_IdleFlags,
6271        ) -> A_Err,
6272    >,
6273    pub AEIO_GetDepths: ::std::option::Option<
6274        unsafe extern "C" fn(
6275            basic_dataP: *mut AEIO_BasicData,
6276            outH: AEIO_OutSpecH,
6277            which: *mut AEIO_SupportedDepthFlags,
6278        ) -> A_Err,
6279    >,
6280    pub AEIO_GetOutputSuffix: ::std::option::Option<
6281        unsafe extern "C" fn(
6282            basic_dataP: *mut AEIO_BasicData,
6283            outH: AEIO_OutSpecH,
6284            suffix: *mut A_char,
6285        ) -> A_Err,
6286    >,
6287    pub AEIO_SeqOptionsDlg: ::std::option::Option<
6288        unsafe extern "C" fn(
6289            basic_dataP: *mut AEIO_BasicData,
6290            inH: AEIO_InSpecH,
6291            user_interactedPB0: *mut A_Boolean,
6292        ) -> A_Err,
6293    >,
6294    pub AEIO_GetNumAuxChannels: ::std::option::Option<
6295        unsafe extern "C" fn(
6296            basic_dataP: *mut AEIO_BasicData,
6297            inH: AEIO_InSpecH,
6298            num_channelsPL: *mut A_long,
6299        ) -> A_Err,
6300    >,
6301    pub AEIO_GetAuxChannelDesc: ::std::option::Option<
6302        unsafe extern "C" fn(
6303            basic_dataP: *mut AEIO_BasicData,
6304            inH: AEIO_InSpecH,
6305            chan_indexL: A_long,
6306            descP: *mut PF_ChannelDesc,
6307        ) -> A_Err,
6308    >,
6309    pub AEIO_DrawAuxChannel: ::std::option::Option<
6310        unsafe extern "C" fn(
6311            basic_dataP: *mut AEIO_BasicData,
6312            inH: AEIO_InSpecH,
6313            chan_indexL: A_long,
6314            pbP: *const AEIO_DrawFramePB,
6315            chunkP: *mut PF_ChannelChunk,
6316        ) -> A_Err,
6317    >,
6318    pub AEIO_FreeAuxChannel: ::std::option::Option<
6319        unsafe extern "C" fn(
6320            basic_dataP: *mut AEIO_BasicData,
6321            inH: AEIO_InSpecH,
6322            chunkP: *mut PF_ChannelChunk,
6323        ) -> A_Err,
6324    >,
6325    pub AEIO_NumAuxFiles: ::std::option::Option<
6326        unsafe extern "C" fn(
6327            basic_dataP: *mut AEIO_BasicData,
6328            seqH: AEIO_InSpecH,
6329            files_per_framePL0: *mut A_long,
6330        ) -> A_Err,
6331    >,
6332    pub AEIO_GetNthAuxFileSpec: ::std::option::Option<
6333        unsafe extern "C" fn(
6334            basic_dataP: *mut AEIO_BasicData,
6335            seqH: AEIO_InSpecH,
6336            frame_numL: A_long,
6337            n: A_long,
6338            pathPH: *mut AEGP_MemHandle,
6339        ) -> A_Err,
6340    >,
6341    pub AEIO_CloseSourceFiles: ::std::option::Option<
6342        unsafe extern "C" fn(basic_dataP: *mut AEIO_BasicData, seqH: AEIO_InSpecH) -> A_Err,
6343    >,
6344    pub AEIO_CountUserData: ::std::option::Option<
6345        unsafe extern "C" fn(
6346            basic_dataP: *mut AEIO_BasicData,
6347            inH: AEIO_InSpecH,
6348            typeLu: A_u_long,
6349            max_sizeLu: A_u_long,
6350            num_of_typePLu: *mut A_u_long,
6351        ) -> A_Err,
6352    >,
6353    pub AEIO_SetUserData: ::std::option::Option<
6354        unsafe extern "C" fn(
6355            basic_dataP: *mut AEIO_BasicData,
6356            outH: AEIO_OutSpecH,
6357            typeLu: A_u_long,
6358            indexLu: A_u_long,
6359            dataH: AEIO_Handle,
6360        ) -> A_Err,
6361    >,
6362    pub AEIO_GetUserData: ::std::option::Option<
6363        unsafe extern "C" fn(
6364            basic_dataP: *mut AEIO_BasicData,
6365            inH: AEIO_InSpecH,
6366            typeLu: A_u_long,
6367            indexLu: A_u_long,
6368            max_sizeLu: A_u_long,
6369            dataPH: *mut AEIO_Handle,
6370        ) -> A_Err,
6371    >,
6372    pub AEIO_AddMarker: ::std::option::Option<
6373        unsafe extern "C" fn(
6374            basic_dataP: *mut AEIO_BasicData,
6375            outH: AEIO_OutSpecH,
6376            frame_index: A_long,
6377            marker_type: AEIO_MarkerType,
6378            marker_dataPV: *mut ::std::os::raw::c_void,
6379            inter0: *mut AEIO_InterruptFuncs,
6380        ) -> A_Err,
6381    >,
6382    pub AEIO_VerifyFileImportable: ::std::option::Option<
6383        unsafe extern "C" fn(
6384            basic_dataP: *mut AEIO_BasicData,
6385            sig: AEIO_ModuleSignature,
6386            file_pathZ: *const A_UTF16Char,
6387            importablePB: *mut A_Boolean,
6388        ) -> A_Err,
6389    >,
6390    pub AEIO_UserAudioOptionsDialog: ::std::option::Option<
6391        unsafe extern "C" fn(
6392            basic_dataP: *mut AEIO_BasicData,
6393            outH: AEIO_OutSpecH,
6394            user_interacted0: *mut A_Boolean,
6395        ) -> A_Err,
6396    >,
6397    pub AEIO_AddMarker2: ::std::option::Option<
6398        unsafe extern "C" fn(
6399            basic_dataP: *mut AEIO_BasicData,
6400            outH: AEIO_OutSpecH,
6401            frame_index: A_long,
6402            markerP: *const AEIO_Marker,
6403            inter0: *mut AEIO_InterruptFuncs,
6404        ) -> A_Err,
6405    >,
6406    pub AEIO_AddMarker3: ::std::option::Option<
6407        unsafe extern "C" fn(
6408            basic_dataP: *mut AEIO_BasicData,
6409            outH: AEIO_OutSpecH,
6410            frame_index: A_long,
6411            marker_valP: AEGP_ConstMarkerValP,
6412            marker_flag: AEIO_RenderMarkerFlag,
6413            inter0: *mut AEIO_InterruptFuncs,
6414        ) -> A_Err,
6415    >,
6416    pub AEIO_GetMimeType: ::std::option::Option<
6417        unsafe extern "C" fn(
6418            basic_dataP: *mut AEIO_BasicData,
6419            outH: AEIO_OutSpecH,
6420            mime_type_sizeL: A_long,
6421            mime_typeZ: *mut ::std::os::raw::c_char,
6422        ) -> A_Err,
6423    >,
6424}
6425#[doc = "   plugin entry points  *****************************\n the main routine of each plugin fills in these function pointers\n AE will call them as appropriate"]
6426pub type AEIO_FunctionBlock4 = _AEIO_FunctionBlock4;
6427pub type PT_Index = A_long;
6428#[repr(C)]
6429#[derive(Debug, Copy, Clone)]
6430pub struct PT_Tracker {
6431    _unused: [u8; 0],
6432}
6433pub type PT_TrackerPtr = *mut PT_Tracker;
6434#[repr(C)]
6435#[derive(Debug, Copy, Clone)]
6436pub struct PT_TrackerInstance {
6437    _unused: [u8; 0],
6438}
6439pub type PT_TrackerInstancePtr = *mut PT_TrackerInstance;
6440#[repr(C)]
6441#[derive(Debug, Copy, Clone)]
6442pub struct PT_TrackingContext {
6443    _unused: [u8; 0],
6444}
6445pub type PT_TrackingContextPtr = *mut PT_TrackingContext;
6446pub type PT_GlobalSetupFunc = ::std::option::Option<
6447    unsafe extern "C" fn(trackerP: PT_TrackerPtr, global_dataPH: *mut AEGP_MemHandle) -> A_Err,
6448>;
6449pub type PT_GlobalSetdownFunc =
6450    ::std::option::Option<unsafe extern "C" fn(trackerP: PT_TrackerPtr) -> A_Err>;
6451pub type PT_GlobalDoAboutFunc =
6452    ::std::option::Option<unsafe extern "C" fn(trackerP: PT_TrackerPtr) -> A_Err>;
6453pub type PT_InstanceSetupFunc = ::std::option::Option<
6454    unsafe extern "C" fn(
6455        tracker_instanceP: PT_TrackerInstancePtr,
6456        flat_instance_dataH0: AEGP_MemHandle,
6457        instance_dataPH: *mut AEGP_MemHandle,
6458    ) -> A_Err,
6459>;
6460pub type PT_InstanceSetdownFunc =
6461    ::std::option::Option<unsafe extern "C" fn(tracker_instanceP: PT_TrackerInstancePtr) -> A_Err>;
6462pub type PT_InstanceFlattenFunc = ::std::option::Option<
6463    unsafe extern "C" fn(
6464        tracker_instanceP: PT_TrackerInstancePtr,
6465        flat_instance_dataPH: *mut AEGP_MemHandle,
6466    ) -> A_Err,
6467>;
6468pub type PT_InstanceDoOptionsFunc =
6469    ::std::option::Option<unsafe extern "C" fn(tracker_instanceP: PT_TrackerInstancePtr) -> A_Err>;
6470pub type PT_PrepareTrackFunc = ::std::option::Option<
6471    unsafe extern "C" fn(
6472        contextP: PT_TrackingContextPtr,
6473        tracker_dataPH: *mut AEGP_MemHandle,
6474    ) -> A_Err,
6475>;
6476pub type PT_TrackFunc =
6477    ::std::option::Option<unsafe extern "C" fn(contextP: PT_TrackingContextPtr) -> A_Err>;
6478pub type PT_FinishTrackFunc =
6479    ::std::option::Option<unsafe extern "C" fn(contextP: PT_TrackingContextPtr) -> A_Err>;
6480#[repr(C, packed(4))]
6481#[derive(Debug, Copy, Clone)]
6482pub struct PT_TrackerEntryPoints {
6483    pub global_setup_func: PT_GlobalSetupFunc,
6484    pub global_setdown_func: PT_GlobalSetdownFunc,
6485    pub global_do_about_func: PT_GlobalDoAboutFunc,
6486    pub instance_setup_func: PT_InstanceSetupFunc,
6487    pub instance_setdown_func: PT_InstanceSetdownFunc,
6488    pub instance_flatten_func: PT_InstanceFlattenFunc,
6489    pub instance_do_options_func: PT_InstanceDoOptionsFunc,
6490    pub track_prepare_func: PT_PrepareTrackFunc,
6491    pub track_func: PT_TrackFunc,
6492    pub track_finish_func: PT_FinishTrackFunc,
6493}
6494#[repr(C)]
6495#[derive(Debug, Copy, Clone)]
6496pub struct _AEGP_Project {
6497    _unused: [u8; 0],
6498}
6499pub type AEGP_ProjectH = *mut *mut _AEGP_Project;
6500#[repr(C)]
6501#[derive(Debug, Copy, Clone)]
6502pub struct _AEGP_Item {
6503    _unused: [u8; 0],
6504}
6505pub type AEGP_ItemH = *mut *mut _AEGP_Item;
6506#[repr(C)]
6507#[derive(Debug, Copy, Clone)]
6508pub struct _AEGP_Comp {
6509    _unused: [u8; 0],
6510}
6511pub type AEGP_CompH = *mut *mut _AEGP_Comp;
6512#[repr(C)]
6513#[derive(Debug, Copy, Clone)]
6514pub struct _AEGP_Footage {
6515    _unused: [u8; 0],
6516}
6517pub type AEGP_FootageH = *mut *mut _AEGP_Footage;
6518#[repr(C)]
6519#[derive(Debug, Copy, Clone)]
6520pub struct _AEGP_Layer {
6521    _unused: [u8; 0],
6522}
6523pub type AEGP_LayerH = *mut *mut _AEGP_Layer;
6524#[repr(C)]
6525#[derive(Debug, Copy, Clone)]
6526pub struct _AEGP_Effect {
6527    _unused: [u8; 0],
6528}
6529pub type AEGP_EffectRefH = *mut *mut _AEGP_Effect;
6530#[repr(C)]
6531#[derive(Debug, Copy, Clone)]
6532pub struct _AEGP_Mask {
6533    _unused: [u8; 0],
6534}
6535pub type AEGP_MaskRefH = *mut *mut _AEGP_Mask;
6536#[repr(C)]
6537#[derive(Debug, Copy, Clone)]
6538pub struct _AEGPp_Stream {
6539    _unused: [u8; 0],
6540}
6541pub type AEGP_StreamRefH = *mut *mut _AEGPp_Stream;
6542#[repr(C)]
6543#[derive(Debug, Copy, Clone)]
6544pub struct _AEGP_LayerContext {
6545    _unused: [u8; 0],
6546}
6547pub type AEGP_RenderLayerContextH = *mut *mut _AEGP_LayerContext;
6548#[repr(C)]
6549#[derive(Debug, Copy, Clone)]
6550pub struct _AEGP_PersistentBlob {
6551    _unused: [u8; 0],
6552}
6553pub type AEGP_PersistentBlobH = *mut *mut _AEGP_PersistentBlob;
6554#[repr(C)]
6555#[derive(Debug, Copy, Clone)]
6556pub struct _AEGP_MaskOutline {
6557    _unused: [u8; 0],
6558}
6559pub type AEGP_MaskOutlineValH = *mut *mut _AEGP_MaskOutline;
6560#[repr(C)]
6561#[derive(Debug, Copy, Clone)]
6562pub struct _AEGP_Collection {
6563    _unused: [u8; 0],
6564}
6565pub type AEGP_CollectionH = *mut *mut _AEGP_Collection;
6566#[repr(C)]
6567#[derive(Debug, Copy, Clone)]
6568pub struct _AEGP_Collection2 {
6569    _unused: [u8; 0],
6570}
6571pub type AEGP_Collection2H = *mut *mut _AEGP_Collection2;
6572#[repr(C)]
6573#[derive(Debug, Copy, Clone)]
6574pub struct _AEGP_SoundData {
6575    _unused: [u8; 0],
6576}
6577pub type AEGP_SoundDataH = *mut *mut _AEGP_SoundData;
6578#[repr(C)]
6579#[derive(Debug, Copy, Clone)]
6580pub struct _AEGP_AddKeyframesInfo {
6581    _unused: [u8; 0],
6582}
6583pub type AEGP_AddKeyframesInfoH = *mut *mut _AEGP_AddKeyframesInfo;
6584#[repr(C)]
6585#[derive(Debug, Copy, Clone)]
6586pub struct _AEGP_RenderReceipt {
6587    _unused: [u8; 0],
6588}
6589pub type AEGP_RenderReceiptH = *mut *mut _AEGP_RenderReceipt;
6590#[repr(C)]
6591#[derive(Debug, Copy, Clone)]
6592pub struct _AEGP_World {
6593    _unused: [u8; 0],
6594}
6595pub type AEGP_WorldH = *mut *mut _AEGP_World;
6596#[repr(C)]
6597#[derive(Debug, Copy, Clone)]
6598pub struct _AEGP_RenderOptions {
6599    _unused: [u8; 0],
6600}
6601pub type AEGP_RenderOptionsH = *mut *mut _AEGP_RenderOptions;
6602#[repr(C)]
6603#[derive(Debug, Copy, Clone)]
6604pub struct _AEGP_LayerRenderOptions {
6605    _unused: [u8; 0],
6606}
6607pub type AEGP_LayerRenderOptionsH = *mut *mut _AEGP_LayerRenderOptions;
6608#[repr(C)]
6609#[derive(Debug, Copy, Clone)]
6610pub struct _AEGP_FrameReceipt {
6611    _unused: [u8; 0],
6612}
6613pub type AEGP_FrameReceiptH = *mut *mut _AEGP_FrameReceipt;
6614#[repr(C)]
6615#[derive(Debug, Copy, Clone)]
6616pub struct _AEGP_RenderQueueItem {
6617    _unused: [u8; 0],
6618}
6619pub type AEGP_RQItemRefH = *mut *mut _AEGP_RenderQueueItem;
6620#[repr(C)]
6621#[derive(Debug, Copy, Clone)]
6622pub struct _AEGP_OutputModule {
6623    _unused: [u8; 0],
6624}
6625pub type AEGP_OutputModuleRefH = *mut *mut _AEGP_OutputModule;
6626#[repr(C)]
6627#[derive(Debug, Copy, Clone)]
6628pub struct _AEGP_TextDocument {
6629    _unused: [u8; 0],
6630}
6631pub type AEGP_TextDocumentH = *mut *mut _AEGP_TextDocument;
6632pub type AEGP_MarkerValP = *mut _AEGP_MarkerVal;
6633#[repr(C)]
6634#[derive(Debug, Copy, Clone)]
6635pub struct _AEGP_TextOutlines {
6636    _unused: [u8; 0],
6637}
6638pub type AEGP_TextOutlinesH = *mut *mut _AEGP_TextOutlines;
6639#[repr(C)]
6640#[derive(Debug, Copy, Clone)]
6641pub struct _AEGP_TimeStamp {
6642    pub a: [A_char; 4usize],
6643}
6644pub type AEGP_TimeStamp = _AEGP_TimeStamp;
6645#[repr(C)]
6646#[derive(Debug, Copy, Clone)]
6647pub struct _AEGP_PlatformWorld {
6648    _unused: [u8; 0],
6649}
6650pub type AEGP_PlatformWorldH = *mut *mut _AEGP_PlatformWorld;
6651#[repr(C)]
6652#[derive(Debug, Copy, Clone)]
6653pub struct _AEGP_ItemView {
6654    _unused: [u8; 0],
6655}
6656pub type AEGP_ItemViewP = *mut _AEGP_ItemView;
6657#[repr(C)]
6658#[derive(Debug, Copy, Clone)]
6659pub struct _AEGP_ColorProfile {
6660    _unused: [u8; 0],
6661}
6662pub type AEGP_ColorProfileP = *mut _AEGP_ColorProfile;
6663pub type AEGP_ConstColorProfileP = *mut _AEGP_ColorProfile;
6664#[repr(C)]
6665#[derive(Debug, Copy, Clone)]
6666pub struct _AEGP_Guid {
6667    _unused: [u8; 0],
6668}
6669pub type AEGP_GuidP = *mut _AEGP_Guid;
6670pub type AEGP_SubLayerIndex = A_long;
6671pub type AEGP_PluginID = A_long;
6672#[repr(C)]
6673#[derive(Debug, Copy, Clone)]
6674pub struct _AEGP_GlobalRefcon {
6675    _unused: [u8; 0],
6676}
6677pub type AEGP_GlobalRefcon = *mut _AEGP_GlobalRefcon;
6678#[repr(C)]
6679#[derive(Debug, Copy, Clone)]
6680pub struct _AEGP_CommandRefcon {
6681    _unused: [u8; 0],
6682}
6683pub type AEGP_CommandRefcon = *mut _AEGP_CommandRefcon;
6684#[repr(C)]
6685#[derive(Debug, Copy, Clone)]
6686pub struct _AEGP_UpdateMenuRefcon {
6687    _unused: [u8; 0],
6688}
6689pub type AEGP_UpdateMenuRefcon = *mut _AEGP_UpdateMenuRefcon;
6690#[repr(C)]
6691#[derive(Debug, Copy, Clone)]
6692pub struct _AEGP_DeathRefcon {
6693    _unused: [u8; 0],
6694}
6695pub type AEGP_DeathRefcon = *mut _AEGP_DeathRefcon;
6696#[repr(C)]
6697#[derive(Debug, Copy, Clone)]
6698pub struct _AEGP_VersionRefcon {
6699    _unused: [u8; 0],
6700}
6701pub type AEGP_VersionRefcon = *mut _AEGP_VersionRefcon;
6702#[repr(C)]
6703#[derive(Debug, Copy, Clone)]
6704pub struct _AEGP_AboutStringRefcon {
6705    _unused: [u8; 0],
6706}
6707pub type AEGP_AboutStringRefcon = *mut _AEGP_AboutStringRefcon;
6708#[repr(C)]
6709#[derive(Debug, Copy, Clone)]
6710pub struct _AEGP_AboutRefcon {
6711    _unused: [u8; 0],
6712}
6713pub type AEGP_AboutRefcon = *mut _AEGP_AboutRefcon;
6714#[repr(C)]
6715#[derive(Debug, Copy, Clone)]
6716pub struct _AEGP_AsyncFrameRequestRefcon {
6717    _unused: [u8; 0],
6718}
6719pub type AEGP_AsyncFrameRequestRefcon = *mut _AEGP_AsyncFrameRequestRefcon;
6720#[repr(C)]
6721#[derive(Debug, Copy, Clone)]
6722pub struct _AEGP_IdleRefcon {
6723    _unused: [u8; 0],
6724}
6725pub type AEGP_IdleRefcon = *mut _AEGP_IdleRefcon;
6726#[repr(C)]
6727#[derive(Debug, Copy, Clone)]
6728pub struct _AEGP_IORefcon {
6729    _unused: [u8; 0],
6730}
6731pub type AEGP_IORefcon = *mut _AEGP_IORefcon;
6732#[repr(C)]
6733#[derive(Debug, Copy, Clone)]
6734pub struct _AEGP_CancelRefcon {
6735    _unused: [u8; 0],
6736}
6737pub type AEGP_CancelRefcon = *mut _AEGP_CancelRefcon;
6738pub const AEGP_Platform_MAC: _bindgen_ty_100 = 0;
6739pub const AEGP_Platform_WIN: _bindgen_ty_100 = 1;
6740pub type _bindgen_ty_100 = ::std::os::raw::c_uint;
6741pub type AEGP_Platform = A_long;
6742pub const AEGP_ProjBitDepth_8: _bindgen_ty_101 = 0;
6743pub const AEGP_ProjBitDepth_16: _bindgen_ty_101 = 1;
6744pub const AEGP_ProjBitDepth_32: _bindgen_ty_101 = 2;
6745pub const AEGP_ProjBitDepth_NUM_VALID_DEPTHS: _bindgen_ty_101 = 3;
6746pub type _bindgen_ty_101 = ::std::os::raw::c_uint;
6747pub type AEGP_ProjBitDepth = A_char;
6748pub type AEGP_Index = A_long;
6749pub type AEGP_LayerIDVal = A_long;
6750pub type AEGP_MaskIDVal = A_long;
6751#[repr(C)]
6752#[derive(Debug, Copy, Clone)]
6753pub struct AEGP_ColorVal {
6754    pub alphaF: A_FpLong,
6755    pub redF: A_FpLong,
6756    pub greenF: A_FpLong,
6757    pub blueF: A_FpLong,
6758}
6759pub const AEGP_CameraType_NONE: _bindgen_ty_102 = -1;
6760pub const AEGP_CameraType_PERSPECTIVE: _bindgen_ty_102 = 0;
6761pub const AEGP_CameraType_ORTHOGRAPHIC: _bindgen_ty_102 = 1;
6762pub const AEGP_CameraType_NUM_TYPES: _bindgen_ty_102 = 2;
6763pub type _bindgen_ty_102 = ::std::os::raw::c_int;
6764pub type AEGP_CameraType = A_u_long;
6765pub const AEGP_FootageDepth_1: _bindgen_ty_103 = 1;
6766pub const AEGP_FootageDepth_2: _bindgen_ty_103 = 2;
6767pub const AEGP_FootageDepth_4: _bindgen_ty_103 = 4;
6768pub const AEGP_FootageDepth_8: _bindgen_ty_103 = 8;
6769pub const AEGP_FootageDepth_16: _bindgen_ty_103 = 16;
6770pub const AEGP_FootageDepth_24: _bindgen_ty_103 = 24;
6771pub const AEGP_FootageDepth_30: _bindgen_ty_103 = 30;
6772pub const AEGP_FootageDepth_32: _bindgen_ty_103 = 32;
6773pub const AEGP_FootageDepth_GRAY_2: _bindgen_ty_103 = 34;
6774pub const AEGP_FootageDepth_GRAY_4: _bindgen_ty_103 = 36;
6775pub const AEGP_FootageDepth_GRAY_8: _bindgen_ty_103 = 40;
6776pub const AEGP_FootageDepth_48: _bindgen_ty_103 = 48;
6777pub const AEGP_FootageDepth_64: _bindgen_ty_103 = 64;
6778pub const AEGP_FootageDepth_GRAY_16: _bindgen_ty_103 = -16;
6779pub type _bindgen_ty_103 = ::std::os::raw::c_int;
6780pub const AEGP_FilmSizeUnits_NONE: _bindgen_ty_104 = 0;
6781pub const AEGP_FilmSizeUnits_HORIZONTAL: _bindgen_ty_104 = 1;
6782pub const AEGP_FilmSizeUnits_VERTICAL: _bindgen_ty_104 = 2;
6783pub const AEGP_FilmSizeUnits_DIAGONAL: _bindgen_ty_104 = 3;
6784pub type _bindgen_ty_104 = ::std::os::raw::c_uint;
6785pub type AEGP_FilmSizeUnits = A_long;
6786pub const AEGP_LightType_NONE: _bindgen_ty_105 = -1;
6787pub const AEGP_LightType_PARALLEL: _bindgen_ty_105 = 0;
6788pub const AEGP_LightType_SPOT: _bindgen_ty_105 = 1;
6789pub const AEGP_LightType_POINT: _bindgen_ty_105 = 2;
6790pub const AEGP_LightType_AMBIENT: _bindgen_ty_105 = 3;
6791pub const AEGP_LightType_ENVIRONMENT: _bindgen_ty_105 = 4;
6792pub const AEGP_LightType_NUM_TYPES: _bindgen_ty_105 = 5;
6793pub type _bindgen_ty_105 = ::std::os::raw::c_int;
6794pub type AEGP_LightType = A_u_long;
6795pub const AEGP_LightFalloff_NONE: _bindgen_ty_106 = 0;
6796pub const AEGP_LightFalloff_SMOOTH: _bindgen_ty_106 = 1;
6797pub const AEGP_LightFalloff_INVERSE_SQUARE_CLAMPED: _bindgen_ty_106 = 2;
6798pub type _bindgen_ty_106 = ::std::os::raw::c_uint;
6799pub type AEGP_LightFalloffType = A_u_long;
6800pub const AEGP_TimeDisplayType_TIMECODE: _bindgen_ty_107 = 0;
6801pub const AEGP_TimeDisplayType_FRAMES: _bindgen_ty_107 = 1;
6802pub const AEGP_TimeDisplayType_FEET_AND_FRAMES: _bindgen_ty_107 = 2;
6803pub type _bindgen_ty_107 = ::std::os::raw::c_uint;
6804pub type AEGP_TimeDisplayType = A_char;
6805#[repr(C)]
6806#[derive(Debug, Copy, Clone)]
6807pub struct AEGP_TimeDisplay2 {
6808    pub time_display_type: AEGP_TimeDisplayType,
6809    pub timebaseC: A_char,
6810    pub non_drop_30B: A_Boolean,
6811    pub frames_per_footC: A_char,
6812    pub starting_frameL: A_long,
6813    pub auto_timecode_baseB: A_Boolean,
6814}
6815pub const AEGP_TimeDisplay_TIMECODE: _bindgen_ty_108 = 0;
6816pub const AEGP_TimeDisplay_FRAMES: _bindgen_ty_108 = 1;
6817pub type _bindgen_ty_108 = ::std::os::raw::c_uint;
6818pub type AEGP_TimeDisplayMode = ::std::os::raw::c_char;
6819pub const AEGP_SourceTimecode_ZERO: _bindgen_ty_109 = 0;
6820pub const AEGP_SourceTimecode_SOURCE_TIMECODE: _bindgen_ty_109 = 1;
6821pub type _bindgen_ty_109 = ::std::os::raw::c_uint;
6822pub type AEGP_SourceTimecodeDisplayMode = ::std::os::raw::c_char;
6823pub const AEGP_Frames_ZERO_BASED: _bindgen_ty_110 = 0;
6824pub const AEGP_Frames_ONE_BASED: _bindgen_ty_110 = 1;
6825pub const AEGP_Frames_TIMECODE_CONVERSION: _bindgen_ty_110 = 2;
6826pub type _bindgen_ty_110 = ::std::os::raw::c_uint;
6827pub type AEGP_FramesDisplayMode = ::std::os::raw::c_char;
6828#[repr(C)]
6829#[derive(Debug, Copy, Clone)]
6830pub struct AEGP_TimeDisplay3 {
6831    pub display_mode: AEGP_TimeDisplayMode,
6832    pub footage_display_mode: AEGP_SourceTimecodeDisplayMode,
6833    pub display_dropframeB: A_Boolean,
6834    pub use_feet_framesB: A_Boolean,
6835    pub timebaseC: A_char,
6836    pub frames_per_footC: A_char,
6837    pub frames_display_mode: AEGP_FramesDisplayMode,
6838}
6839#[repr(C)]
6840#[derive(Debug, Copy, Clone)]
6841pub struct AEGP_ProjSuite6 {
6842    pub AEGP_GetNumProjects:
6843        ::std::option::Option<unsafe extern "C" fn(num_projPL: *mut A_long) -> A_Err>,
6844    pub AEGP_GetProjectByIndex: ::std::option::Option<
6845        unsafe extern "C" fn(proj_indexL: A_long, projPH: *mut AEGP_ProjectH) -> A_Err,
6846    >,
6847    pub AEGP_GetProjectName: ::std::option::Option<
6848        unsafe extern "C" fn(projH: AEGP_ProjectH, nameZ: *mut A_char) -> A_Err,
6849    >,
6850    pub AEGP_GetProjectPath: ::std::option::Option<
6851        unsafe extern "C" fn(projH: AEGP_ProjectH, unicode_pathPH: *mut AEGP_MemHandle) -> A_Err,
6852    >,
6853    pub AEGP_GetProjectRootFolder: ::std::option::Option<
6854        unsafe extern "C" fn(projH: AEGP_ProjectH, root_folderPH: *mut AEGP_ItemH) -> A_Err,
6855    >,
6856    pub AEGP_SaveProjectToPath: ::std::option::Option<
6857        unsafe extern "C" fn(projH: AEGP_ProjectH, pathZ: *const A_UTF16Char) -> A_Err,
6858    >,
6859    pub AEGP_GetProjectTimeDisplay: ::std::option::Option<
6860        unsafe extern "C" fn(projH: AEGP_ProjectH, time_displayP: *mut AEGP_TimeDisplay3) -> A_Err,
6861    >,
6862    pub AEGP_SetProjectTimeDisplay: ::std::option::Option<
6863        unsafe extern "C" fn(
6864            projH: AEGP_ProjectH,
6865            time_displayP: *const AEGP_TimeDisplay3,
6866        ) -> A_Err,
6867    >,
6868    pub AEGP_ProjectIsDirty: ::std::option::Option<
6869        unsafe extern "C" fn(projH: AEGP_ProjectH, is_dirtyPB: *mut A_Boolean) -> A_Err,
6870    >,
6871    pub AEGP_SaveProjectAs: ::std::option::Option<
6872        unsafe extern "C" fn(projH: AEGP_ProjectH, pathZ: *const A_UTF16Char) -> A_Err,
6873    >,
6874    pub AEGP_NewProject:
6875        ::std::option::Option<unsafe extern "C" fn(new_projectPH: *mut AEGP_ProjectH) -> A_Err>,
6876    pub AEGP_OpenProjectFromPath: ::std::option::Option<
6877        unsafe extern "C" fn(pathZ: *const A_UTF16Char, projectPH: *mut AEGP_ProjectH) -> A_Err,
6878    >,
6879    pub AEGP_GetProjectBitDepth: ::std::option::Option<
6880        unsafe extern "C" fn(projectH: AEGP_ProjectH, bit_depthP: *mut AEGP_ProjBitDepth) -> A_Err,
6881    >,
6882    pub AEGP_SetProjectBitDepth: ::std::option::Option<
6883        unsafe extern "C" fn(projectH: AEGP_ProjectH, bit_depth: AEGP_ProjBitDepth) -> A_Err,
6884    >,
6885}
6886pub const AEGP_SoundEncoding_UNSIGNED_PCM: _bindgen_ty_111 = 3;
6887pub const AEGP_SoundEncoding_SIGNED_PCM: _bindgen_ty_111 = 4;
6888pub const AEGP_SoundEncoding_FLOAT: _bindgen_ty_111 = 5;
6889pub const AEGP_SoundEncoding_END: _bindgen_ty_111 = 6;
6890pub const AEGP_SoundEncoding_BEGIN: _bindgen_ty_111 = 3;
6891pub type _bindgen_ty_111 = ::std::os::raw::c_uint;
6892pub type AEGP_SoundEncoding = A_long;
6893#[repr(C)]
6894#[derive(Debug, Copy, Clone)]
6895pub struct AEGP_SoundDataFormat {
6896    pub sample_rateF: A_FpLong,
6897    pub encoding: AEGP_SoundEncoding,
6898    pub bytes_per_sampleL: A_long,
6899    pub num_channelsL: A_long,
6900}
6901pub const AEGP_ItemType_NONE: _bindgen_ty_112 = 0;
6902pub const AEGP_ItemType_FOLDER: _bindgen_ty_112 = 1;
6903pub const AEGP_ItemType_COMP: _bindgen_ty_112 = 2;
6904pub const AEGP_ItemType_SOLID_defunct: _bindgen_ty_112 = 3;
6905pub const AEGP_ItemType_FOOTAGE: _bindgen_ty_112 = 4;
6906pub const AEGP_ItemType_NUM_TYPES1: _bindgen_ty_112 = 5;
6907pub type _bindgen_ty_112 = ::std::os::raw::c_uint;
6908pub type AEGP_ItemType = A_short;
6909pub const AEGP_ItemFlag_MISSING: _bindgen_ty_113 = 1;
6910pub const AEGP_ItemFlag_HAS_PROXY: _bindgen_ty_113 = 2;
6911pub const AEGP_ItemFlag_USING_PROXY: _bindgen_ty_113 = 4;
6912pub const AEGP_ItemFlag_MISSING_PROXY: _bindgen_ty_113 = 8;
6913pub const AEGP_ItemFlag_HAS_VIDEO: _bindgen_ty_113 = 16;
6914pub const AEGP_ItemFlag_HAS_AUDIO: _bindgen_ty_113 = 32;
6915pub const AEGP_ItemFlag_STILL: _bindgen_ty_113 = 64;
6916pub const AEGP_ItemFlag_HAS_ACTIVE_AUDIO: _bindgen_ty_113 = 128;
6917pub type _bindgen_ty_113 = ::std::os::raw::c_uint;
6918pub type AEGP_ItemFlags = A_long;
6919pub const AEGP_Label_NONE: _bindgen_ty_114 = -1;
6920pub const AEGP_Label_NO_LABEL: _bindgen_ty_114 = 0;
6921pub const AEGP_Label_1: _bindgen_ty_114 = 1;
6922pub const AEGP_Label_2: _bindgen_ty_114 = 2;
6923pub const AEGP_Label_3: _bindgen_ty_114 = 3;
6924pub const AEGP_Label_4: _bindgen_ty_114 = 4;
6925pub const AEGP_Label_5: _bindgen_ty_114 = 5;
6926pub const AEGP_Label_6: _bindgen_ty_114 = 6;
6927pub const AEGP_Label_7: _bindgen_ty_114 = 7;
6928pub const AEGP_Label_8: _bindgen_ty_114 = 8;
6929pub const AEGP_Label_9: _bindgen_ty_114 = 9;
6930pub const AEGP_Label_10: _bindgen_ty_114 = 10;
6931pub const AEGP_Label_11: _bindgen_ty_114 = 11;
6932pub const AEGP_Label_12: _bindgen_ty_114 = 12;
6933pub const AEGP_Label_13: _bindgen_ty_114 = 13;
6934pub const AEGP_Label_14: _bindgen_ty_114 = 14;
6935pub const AEGP_Label_15: _bindgen_ty_114 = 15;
6936pub const AEGP_Label_16: _bindgen_ty_114 = 16;
6937pub const AEGP_Label_NUMTYPES: _bindgen_ty_114 = 17;
6938pub type _bindgen_ty_114 = ::std::os::raw::c_int;
6939pub type AEGP_LabelID = A_char;
6940pub const AEGP_PersistentType_MACHINE_SPECIFIC: _bindgen_ty_115 = 0;
6941pub const AEGP_PersistentType_MACHINE_INDEPENDENT: _bindgen_ty_115 = 1;
6942pub const AEGP_PersistentType_MACHINE_INDEPENDENT_RENDER: _bindgen_ty_115 = 2;
6943pub const AEGP_PersistentType_MACHINE_INDEPENDENT_OUTPUT: _bindgen_ty_115 = 3;
6944pub const AEGP_PersistentType_MACHINE_INDEPENDENT_COMPOSITION: _bindgen_ty_115 = 4;
6945pub const AEGP_PersistentType_MACHINE_SPECIFIC_TEXT: _bindgen_ty_115 = 5;
6946pub const AEGP_PersistentType_MACHINE_SPECIFIC_PAINT: _bindgen_ty_115 = 6;
6947pub const AEGP_PersistentType_MACHINE_SPECIFIC_EFFECTS: _bindgen_ty_115 = 7;
6948pub const AEGP_PersistentType_MACHINE_SPECIFIC_EXPRESSION_SNIPPETS: _bindgen_ty_115 = 8;
6949pub const AEGP_PersistentType_MACHINE_SPECIFIC_SCRIPT_SNIPPETS: _bindgen_ty_115 = 9;
6950pub const AEGP_PersistentType_NUMTYPES: _bindgen_ty_115 = 10;
6951pub type _bindgen_ty_115 = ::std::os::raw::c_uint;
6952pub type AEGP_PersistentType = A_long;
6953#[repr(C)]
6954#[derive(Debug, Copy, Clone)]
6955pub struct AEGP_ItemSuite9 {
6956    pub AEGP_GetFirstProjItem: ::std::option::Option<
6957        unsafe extern "C" fn(projectH: AEGP_ProjectH, itemPH: *mut AEGP_ItemH) -> A_Err,
6958    >,
6959    pub AEGP_GetNextProjItem: ::std::option::Option<
6960        unsafe extern "C" fn(
6961            projectH: AEGP_ProjectH,
6962            itemH: AEGP_ItemH,
6963            next_itemPH: *mut AEGP_ItemH,
6964        ) -> A_Err,
6965    >,
6966    pub AEGP_GetActiveItem:
6967        ::std::option::Option<unsafe extern "C" fn(itemPH: *mut AEGP_ItemH) -> A_Err>,
6968    pub AEGP_IsItemSelected: ::std::option::Option<
6969        unsafe extern "C" fn(itemH: AEGP_ItemH, selectedPB: *mut A_Boolean) -> A_Err,
6970    >,
6971    pub AEGP_SelectItem: ::std::option::Option<
6972        unsafe extern "C" fn(
6973            itemH: AEGP_ItemH,
6974            selectB: A_Boolean,
6975            deselect_othersB: A_Boolean,
6976        ) -> A_Err,
6977    >,
6978    pub AEGP_GetItemType: ::std::option::Option<
6979        unsafe extern "C" fn(itemH: AEGP_ItemH, item_typeP: *mut AEGP_ItemType) -> A_Err,
6980    >,
6981    pub AEGP_GetTypeName: ::std::option::Option<
6982        unsafe extern "C" fn(item_type: AEGP_ItemType, nameZ: *mut A_char) -> A_Err,
6983    >,
6984    pub AEGP_GetItemName: ::std::option::Option<
6985        unsafe extern "C" fn(
6986            pluginID: AEGP_PluginID,
6987            itemH: AEGP_ItemH,
6988            unicode_namePH: *mut AEGP_MemHandle,
6989        ) -> A_Err,
6990    >,
6991    pub AEGP_SetItemName: ::std::option::Option<
6992        unsafe extern "C" fn(itemH: AEGP_ItemH, nameZ: *const A_UTF16Char) -> A_Err,
6993    >,
6994    pub AEGP_GetItemID: ::std::option::Option<
6995        unsafe extern "C" fn(itemH: AEGP_ItemH, item_idPL: *mut A_long) -> A_Err,
6996    >,
6997    pub AEGP_GetItemFlags: ::std::option::Option<
6998        unsafe extern "C" fn(itemH: AEGP_ItemH, item_flagsP: *mut AEGP_ItemFlags) -> A_Err,
6999    >,
7000    pub AEGP_SetItemUseProxy: ::std::option::Option<
7001        unsafe extern "C" fn(itemH: AEGP_ItemH, use_proxyB: A_Boolean) -> A_Err,
7002    >,
7003    pub AEGP_GetItemParentFolder: ::std::option::Option<
7004        unsafe extern "C" fn(itemH: AEGP_ItemH, parent_folder_itemPH: *mut AEGP_ItemH) -> A_Err,
7005    >,
7006    pub AEGP_SetItemParentFolder: ::std::option::Option<
7007        unsafe extern "C" fn(itemH: AEGP_ItemH, parent_folder_itemH: AEGP_ItemH) -> A_Err,
7008    >,
7009    pub AEGP_GetItemDuration: ::std::option::Option<
7010        unsafe extern "C" fn(itemH: AEGP_ItemH, durationPT: *mut A_Time) -> A_Err,
7011    >,
7012    pub AEGP_GetItemCurrentTime: ::std::option::Option<
7013        unsafe extern "C" fn(itemH: AEGP_ItemH, curr_timePT: *mut A_Time) -> A_Err,
7014    >,
7015    pub AEGP_GetItemDimensions: ::std::option::Option<
7016        unsafe extern "C" fn(
7017            itemH: AEGP_ItemH,
7018            widthPL: *mut A_long,
7019            heightPL: *mut A_long,
7020        ) -> A_Err,
7021    >,
7022    pub AEGP_GetItemPixelAspectRatio: ::std::option::Option<
7023        unsafe extern "C" fn(itemH: AEGP_ItemH, pix_aspect_ratioPRt: *mut A_Ratio) -> A_Err,
7024    >,
7025    pub AEGP_DeleteItem: ::std::option::Option<unsafe extern "C" fn(itemH: AEGP_ItemH) -> A_Err>,
7026    pub AEGP_CreateNewFolder: ::std::option::Option<
7027        unsafe extern "C" fn(
7028            nameZ: *const A_UTF16Char,
7029            parent_folderH0: AEGP_ItemH,
7030            new_folderPH: *mut AEGP_ItemH,
7031        ) -> A_Err,
7032    >,
7033    pub AEGP_SetItemCurrentTime: ::std::option::Option<
7034        unsafe extern "C" fn(itemH: AEGP_ItemH, new_timePT: *const A_Time) -> A_Err,
7035    >,
7036    pub AEGP_GetItemComment: ::std::option::Option<
7037        unsafe extern "C" fn(itemH: AEGP_ItemH, unicode_namePH: *mut AEGP_MemHandle) -> A_Err,
7038    >,
7039    pub AEGP_SetItemComment: ::std::option::Option<
7040        unsafe extern "C" fn(itemH: AEGP_ItemH, commentZ: *const A_UTF16Char) -> A_Err,
7041    >,
7042    pub AEGP_GetItemLabel: ::std::option::Option<
7043        unsafe extern "C" fn(itemH: AEGP_ItemH, labelP: *mut AEGP_LabelID) -> A_Err,
7044    >,
7045    pub AEGP_SetItemLabel: ::std::option::Option<
7046        unsafe extern "C" fn(itemH: AEGP_ItemH, label: AEGP_LabelID) -> A_Err,
7047    >,
7048    pub AEGP_GetItemMRUView: ::std::option::Option<
7049        unsafe extern "C" fn(itemH: AEGP_ItemH, mru_viewP: *mut AEGP_ItemViewP) -> A_Err,
7050    >,
7051}
7052#[repr(C)]
7053#[derive(Debug, Copy, Clone)]
7054pub struct AEGP_ItemViewSuite1 {
7055    pub AEGP_GetItemViewPlaybackTime: ::std::option::Option<
7056        unsafe extern "C" fn(
7057            item_viewP: AEGP_ItemViewP,
7058            is_currently_previewingPB0: *mut A_Boolean,
7059            curr_timePT: *mut A_Time,
7060        ) -> A_Err,
7061    >,
7062}
7063#[repr(C)]
7064#[derive(Debug, Copy, Clone)]
7065pub struct AEGP_SoundDataSuite1 {
7066    pub AEGP_NewSoundData: ::std::option::Option<
7067        unsafe extern "C" fn(
7068            sound_formatP: *const AEGP_SoundDataFormat,
7069            new_sound_dataPH: *mut AEGP_SoundDataH,
7070        ) -> A_Err,
7071    >,
7072    pub AEGP_DisposeSoundData:
7073        ::std::option::Option<unsafe extern "C" fn(sound_dataH: AEGP_SoundDataH) -> A_Err>,
7074    pub AEGP_GetSoundDataFormat: ::std::option::Option<
7075        unsafe extern "C" fn(
7076            soundH: AEGP_SoundDataH,
7077            sound_formatP: *mut AEGP_SoundDataFormat,
7078        ) -> A_Err,
7079    >,
7080    pub AEGP_LockSoundDataSamples: ::std::option::Option<
7081        unsafe extern "C" fn(
7082            soundH: AEGP_SoundDataH,
7083            samples: *mut *mut ::std::os::raw::c_void,
7084        ) -> A_Err,
7085    >,
7086    pub AEGP_UnlockSoundDataSamples:
7087        ::std::option::Option<unsafe extern "C" fn(soundH: AEGP_SoundDataH) -> A_Err>,
7088    pub AEGP_GetNumSamples: ::std::option::Option<
7089        unsafe extern "C" fn(soundH: AEGP_SoundDataH, num_samplesPL: *mut A_long) -> A_Err,
7090    >,
7091}
7092#[repr(C)]
7093#[derive(Debug, Copy, Clone)]
7094pub struct AEGP_DownsampleFactor {
7095    pub xS: A_short,
7096    pub yS: A_short,
7097}
7098pub const AEGP_CompFlag_SHOW_ALL_SHY: _bindgen_ty_116 = 1;
7099pub const AEGP_CompFlag_RESERVED_1: _bindgen_ty_116 = 2;
7100pub const AEGP_CompFlag_RESERVED_2: _bindgen_ty_116 = 4;
7101pub const AEGP_CompFlag_ENABLE_MOTION_BLUR: _bindgen_ty_116 = 8;
7102pub const AEGP_CompFlag_ENABLE_TIME_FILTER: _bindgen_ty_116 = 16;
7103pub const AEGP_CompFlag_GRID_TO_FRAMES: _bindgen_ty_116 = 32;
7104pub const AEGP_CompFlag_GRID_TO_FIELDS: _bindgen_ty_116 = 64;
7105pub const AEGP_CompFlag_USE_LOCAL_DSF: _bindgen_ty_116 = 128;
7106pub const AEGP_CompFlag_DRAFT_3D: _bindgen_ty_116 = 256;
7107pub const AEGP_CompFlag_SHOW_GRAPH: _bindgen_ty_116 = 512;
7108pub const AEGP_CompFlag_RESERVED_3: _bindgen_ty_116 = 1024;
7109pub type _bindgen_ty_116 = ::std::os::raw::c_uint;
7110pub type AEGP_CompFlags = A_long;
7111#[repr(C)]
7112#[derive(Debug, Copy, Clone)]
7113pub struct AEGP_CompSuite12 {
7114    pub AEGP_GetCompFromItem: ::std::option::Option<
7115        unsafe extern "C" fn(itemH: AEGP_ItemH, compPH: *mut AEGP_CompH) -> A_Err,
7116    >,
7117    pub AEGP_GetItemFromComp: ::std::option::Option<
7118        unsafe extern "C" fn(compH: AEGP_CompH, itemPH: *mut AEGP_ItemH) -> A_Err,
7119    >,
7120    pub AEGP_GetCompDownsampleFactor: ::std::option::Option<
7121        unsafe extern "C" fn(compH: AEGP_CompH, dsfP: *mut AEGP_DownsampleFactor) -> A_Err,
7122    >,
7123    pub AEGP_SetCompDownsampleFactor: ::std::option::Option<
7124        unsafe extern "C" fn(compH: AEGP_CompH, dsfP: *const AEGP_DownsampleFactor) -> A_Err,
7125    >,
7126    pub AEGP_GetCompBGColor: ::std::option::Option<
7127        unsafe extern "C" fn(compH: AEGP_CompH, bg_colorP: *mut AEGP_ColorVal) -> A_Err,
7128    >,
7129    pub AEGP_SetCompBGColor: ::std::option::Option<
7130        unsafe extern "C" fn(compH: AEGP_CompH, bg_colorP: *const AEGP_ColorVal) -> A_Err,
7131    >,
7132    pub AEGP_GetCompFlags: ::std::option::Option<
7133        unsafe extern "C" fn(compH: AEGP_CompH, comp_flagsP: *mut AEGP_CompFlags) -> A_Err,
7134    >,
7135    pub AEGP_GetShowLayerNameOrSourceName: ::std::option::Option<
7136        unsafe extern "C" fn(compH: AEGP_CompH, layer_names_shownPB: *mut A_Boolean) -> A_Err,
7137    >,
7138    pub AEGP_SetShowLayerNameOrSourceName: ::std::option::Option<
7139        unsafe extern "C" fn(compH: AEGP_CompH, show_layer_namesB: A_Boolean) -> A_Err,
7140    >,
7141    pub AEGP_GetShowBlendModes: ::std::option::Option<
7142        unsafe extern "C" fn(compH: AEGP_CompH, blend_modes_shownPB: *mut A_Boolean) -> A_Err,
7143    >,
7144    pub AEGP_SetShowBlendModes: ::std::option::Option<
7145        unsafe extern "C" fn(compH: AEGP_CompH, show_blend_modesB: A_Boolean) -> A_Err,
7146    >,
7147    pub AEGP_GetCompFramerate: ::std::option::Option<
7148        unsafe extern "C" fn(compH: AEGP_CompH, fpsPF: *mut A_FpLong) -> A_Err,
7149    >,
7150    pub AEGP_SetCompFrameRate: ::std::option::Option<
7151        unsafe extern "C" fn(compH: AEGP_CompH, fpsPF: *const A_FpLong) -> A_Err,
7152    >,
7153    pub AEGP_GetCompShutterAnglePhase: ::std::option::Option<
7154        unsafe extern "C" fn(compH: AEGP_CompH, angle: *mut A_Ratio, phase: *mut A_Ratio) -> A_Err,
7155    >,
7156    pub AEGP_GetCompShutterFrameRange: ::std::option::Option<
7157        unsafe extern "C" fn(
7158            compH: AEGP_CompH,
7159            comp_timeP: *const A_Time,
7160            start: *mut A_Time,
7161            duration: *mut A_Time,
7162        ) -> A_Err,
7163    >,
7164    pub AEGP_GetCompSuggestedMotionBlurSamples: ::std::option::Option<
7165        unsafe extern "C" fn(compH: AEGP_CompH, samplesPL: *mut A_long) -> A_Err,
7166    >,
7167    pub AEGP_SetCompSuggestedMotionBlurSamples:
7168        ::std::option::Option<unsafe extern "C" fn(compH: AEGP_CompH, samplesL: A_long) -> A_Err>,
7169    pub AEGP_GetCompMotionBlurAdaptiveSampleLimit: ::std::option::Option<
7170        unsafe extern "C" fn(compH: AEGP_CompH, samplesPL: *mut A_long) -> A_Err,
7171    >,
7172    pub AEGP_SetCompMotionBlurAdaptiveSampleLimit:
7173        ::std::option::Option<unsafe extern "C" fn(compH: AEGP_CompH, samplesL: A_long) -> A_Err>,
7174    pub AEGP_GetCompWorkAreaStart: ::std::option::Option<
7175        unsafe extern "C" fn(compH: AEGP_CompH, work_area_startPT: *mut A_Time) -> A_Err,
7176    >,
7177    pub AEGP_GetCompWorkAreaDuration: ::std::option::Option<
7178        unsafe extern "C" fn(compH: AEGP_CompH, work_area_durationPT: *mut A_Time) -> A_Err,
7179    >,
7180    pub AEGP_SetCompWorkAreaStartAndDuration: ::std::option::Option<
7181        unsafe extern "C" fn(
7182            compH: AEGP_CompH,
7183            work_area_startPT: *const A_Time,
7184            work_area_durationPT: *const A_Time,
7185        ) -> A_Err,
7186    >,
7187    pub AEGP_CreateSolidInComp: ::std::option::Option<
7188        unsafe extern "C" fn(
7189            utf_nameZ: *const A_UTF16Char,
7190            width: A_long,
7191            height: A_long,
7192            color: *const AEGP_ColorVal,
7193            parent_compH: AEGP_CompH,
7194            durationPT0: *const A_Time,
7195            new_solidPH: *mut AEGP_LayerH,
7196        ) -> A_Err,
7197    >,
7198    pub AEGP_CreateCameraInComp: ::std::option::Option<
7199        unsafe extern "C" fn(
7200            utf_nameZ: *const A_UTF16Char,
7201            center_point: A_FloatPoint,
7202            parent_compH: AEGP_CompH,
7203            new_cameraPH: *mut AEGP_LayerH,
7204        ) -> A_Err,
7205    >,
7206    pub AEGP_CreateLightInComp: ::std::option::Option<
7207        unsafe extern "C" fn(
7208            utf_nameZ: *const A_UTF16Char,
7209            center_point: A_FloatPoint,
7210            parent_compH: AEGP_CompH,
7211            new_lightPH: *mut AEGP_LayerH,
7212        ) -> A_Err,
7213    >,
7214    pub AEGP_CreateComp: ::std::option::Option<
7215        unsafe extern "C" fn(
7216            parent_folderH0: AEGP_ItemH,
7217            utf_nameZ: *const A_UTF16Char,
7218            widthL: A_long,
7219            heightL: A_long,
7220            pixel_aspect_ratioPRt: *const A_Ratio,
7221            durationPT: *const A_Time,
7222            frameratePRt: *const A_Ratio,
7223            new_compPH: *mut AEGP_CompH,
7224        ) -> A_Err,
7225    >,
7226    pub AEGP_GetNewCollectionFromCompSelection: ::std::option::Option<
7227        unsafe extern "C" fn(
7228            plugin_id: AEGP_PluginID,
7229            compH: AEGP_CompH,
7230            collectionPH: *mut AEGP_Collection2H,
7231        ) -> A_Err,
7232    >,
7233    pub AEGP_SetSelection: ::std::option::Option<
7234        unsafe extern "C" fn(compH: AEGP_CompH, collectionH: AEGP_Collection2H) -> A_Err,
7235    >,
7236    pub AEGP_GetCompDisplayStartTime: ::std::option::Option<
7237        unsafe extern "C" fn(compH: AEGP_CompH, start_timePT: *mut A_Time) -> A_Err,
7238    >,
7239    pub AEGP_SetCompDisplayStartTime: ::std::option::Option<
7240        unsafe extern "C" fn(compH: AEGP_CompH, start_timePT: *const A_Time) -> A_Err,
7241    >,
7242    pub AEGP_SetCompDuration: ::std::option::Option<
7243        unsafe extern "C" fn(compH: AEGP_CompH, durationPT: *const A_Time) -> A_Err,
7244    >,
7245    pub AEGP_CreateNullInComp: ::std::option::Option<
7246        unsafe extern "C" fn(
7247            utf_nameZ: *const A_UTF16Char,
7248            parent_compH: AEGP_CompH,
7249            durationPT0: *const A_Time,
7250            new_null_solidPH: *mut AEGP_LayerH,
7251        ) -> A_Err,
7252    >,
7253    pub AEGP_SetCompPixelAspectRatio: ::std::option::Option<
7254        unsafe extern "C" fn(compH: AEGP_CompH, pix_aspectratioPRt: *const A_Ratio) -> A_Err,
7255    >,
7256    pub AEGP_CreateTextLayerInComp: ::std::option::Option<
7257        unsafe extern "C" fn(
7258            parent_compH: AEGP_CompH,
7259            select_new_layerB: A_Boolean,
7260            horzB: A_Boolean,
7261            new_text_layerPH: *mut AEGP_LayerH,
7262        ) -> A_Err,
7263    >,
7264    pub AEGP_CreateBoxTextLayerInComp: ::std::option::Option<
7265        unsafe extern "C" fn(
7266            parent_compH: AEGP_CompH,
7267            select_new_layerB: A_Boolean,
7268            box_dimensions: A_FloatPoint,
7269            horzB: A_Boolean,
7270            new_text_layerPH: *mut AEGP_LayerH,
7271        ) -> A_Err,
7272    >,
7273    pub AEGP_SetCompDimensions: ::std::option::Option<
7274        unsafe extern "C" fn(compH: AEGP_CompH, widthL: A_long, heightL: A_long) -> A_Err,
7275    >,
7276    pub AEGP_DuplicateComp: ::std::option::Option<
7277        unsafe extern "C" fn(compH: AEGP_CompH, new_compPH: *mut AEGP_CompH) -> A_Err,
7278    >,
7279    pub AEGP_GetCompFrameDuration:
7280        ::std::option::Option<unsafe extern "C" fn(compH: AEGP_CompH, timeP: *mut A_Time) -> A_Err>,
7281    pub AEGP_GetMostRecentlyUsedComp:
7282        ::std::option::Option<unsafe extern "C" fn(compPH: *mut AEGP_CompH) -> A_Err>,
7283    pub AEGP_CreateVectorLayerInComp: ::std::option::Option<
7284        unsafe extern "C" fn(
7285            parent_compH: AEGP_CompH,
7286            new_vector_layerPH: *mut AEGP_LayerH,
7287        ) -> A_Err,
7288    >,
7289    pub AEGP_GetNewCompMarkerStream: ::std::option::Option<
7290        unsafe extern "C" fn(
7291            aegp_plugin_id: AEGP_PluginID,
7292            parent_compH: AEGP_CompH,
7293            streamPH: *mut AEGP_StreamRefH,
7294        ) -> A_Err,
7295    >,
7296    pub AEGP_GetCompDisplayDropFrame: ::std::option::Option<
7297        unsafe extern "C" fn(compH: AEGP_CompH, dropFramePB: *mut A_Boolean) -> A_Err,
7298    >,
7299    pub AEGP_SetCompDisplayDropFrame: ::std::option::Option<
7300        unsafe extern "C" fn(compH: AEGP_CompH, dropFrameB: A_Boolean) -> A_Err,
7301    >,
7302    pub AEGP_ReorderCompSelection:
7303        ::std::option::Option<unsafe extern "C" fn(compH: AEGP_CompH, index: A_long) -> A_Err>,
7304}
7305pub const AEGP_MemFlag_NONE: _bindgen_ty_117 = 0;
7306pub const AEGP_MemFlag_CLEAR: _bindgen_ty_117 = 1;
7307pub const AEGP_MemFlag_QUIET: _bindgen_ty_117 = 2;
7308pub type _bindgen_ty_117 = ::std::os::raw::c_uint;
7309pub type AEGP_MemFlag = A_long;
7310pub type AEGP_MemSize = A_u_long;
7311#[repr(C)]
7312#[derive(Debug, Copy, Clone)]
7313pub struct AEGP_MemorySuite1 {
7314    pub AEGP_NewMemHandle: ::std::option::Option<
7315        unsafe extern "C" fn(
7316            plugin_id: AEGP_PluginID,
7317            whatZ: *const A_char,
7318            size: AEGP_MemSize,
7319            flags: AEGP_MemFlag,
7320            memPH: *mut AEGP_MemHandle,
7321        ) -> A_Err,
7322    >,
7323    pub AEGP_FreeMemHandle:
7324        ::std::option::Option<unsafe extern "C" fn(memH: AEGP_MemHandle) -> A_Err>,
7325    pub AEGP_LockMemHandle: ::std::option::Option<
7326        unsafe extern "C" fn(
7327            memH: AEGP_MemHandle,
7328            ptr_to_ptr: *mut *mut ::std::os::raw::c_void,
7329        ) -> A_Err,
7330    >,
7331    pub AEGP_UnlockMemHandle:
7332        ::std::option::Option<unsafe extern "C" fn(memH: AEGP_MemHandle) -> A_Err>,
7333    pub AEGP_GetMemHandleSize: ::std::option::Option<
7334        unsafe extern "C" fn(memH: AEGP_MemHandle, sizeP: *mut AEGP_MemSize) -> A_Err,
7335    >,
7336    pub AEGP_ResizeMemHandle: ::std::option::Option<
7337        unsafe extern "C" fn(
7338            whatZ: *const A_char,
7339            new_size: AEGP_MemSize,
7340            memH: AEGP_MemHandle,
7341        ) -> A_Err,
7342    >,
7343    pub AEGP_SetMemReportingOn:
7344        ::std::option::Option<unsafe extern "C" fn(turn_OnB: A_Boolean) -> A_Err>,
7345    pub AEGP_GetMemStats: ::std::option::Option<
7346        unsafe extern "C" fn(
7347            plugin_id: AEGP_PluginID,
7348            countPL: *mut A_long,
7349            sizePL: *mut A_long,
7350        ) -> A_Err,
7351    >,
7352}
7353pub const AEGP_TransferFlag_PRESERVE_ALPHA: _bindgen_ty_118 = 1;
7354pub const AEGP_TransferFlag_RANDOMIZE_DISSOLVE: _bindgen_ty_118 = 2;
7355pub type _bindgen_ty_118 = ::std::os::raw::c_uint;
7356pub type AEGP_TransferFlags = A_long;
7357pub const AEGP_TrackMatte_NO_TRACK_MATTE: _bindgen_ty_119 = 0;
7358pub const AEGP_TrackMatte_ALPHA: _bindgen_ty_119 = 1;
7359pub const AEGP_TrackMatte_NOT_ALPHA: _bindgen_ty_119 = 2;
7360pub const AEGP_TrackMatte_LUMA: _bindgen_ty_119 = 3;
7361pub const AEGP_TrackMatte_NOT_LUMA: _bindgen_ty_119 = 4;
7362pub type _bindgen_ty_119 = ::std::os::raw::c_uint;
7363pub type AEGP_TrackMatte = A_long;
7364#[repr(C)]
7365#[derive(Debug, Copy, Clone)]
7366pub struct AEGP_LayerTransferMode {
7367    pub mode: PF_TransferMode,
7368    pub flags: AEGP_TransferFlags,
7369    pub track_matte: AEGP_TrackMatte,
7370}
7371pub const AEGP_LayerQual_NONE: _bindgen_ty_120 = -1;
7372pub const AEGP_LayerQual_WIREFRAME: _bindgen_ty_120 = 0;
7373pub const AEGP_LayerQual_DRAFT: _bindgen_ty_120 = 1;
7374pub const AEGP_LayerQual_BEST: _bindgen_ty_120 = 2;
7375pub type _bindgen_ty_120 = ::std::os::raw::c_int;
7376pub type AEGP_LayerQuality = A_short;
7377pub const AEGP_LayerSamplingQual_BILINEAR: _bindgen_ty_121 = 0;
7378pub const AEGP_LayerSamplingQual_BICUBIC: _bindgen_ty_121 = 1;
7379pub type _bindgen_ty_121 = ::std::os::raw::c_uint;
7380pub type AEGP_LayerSamplingQuality = A_short;
7381pub const AEGP_LayerFlag_NONE: _bindgen_ty_122 = 0;
7382pub const AEGP_LayerFlag_VIDEO_ACTIVE: _bindgen_ty_122 = 1;
7383pub const AEGP_LayerFlag_AUDIO_ACTIVE: _bindgen_ty_122 = 2;
7384pub const AEGP_LayerFlag_EFFECTS_ACTIVE: _bindgen_ty_122 = 4;
7385pub const AEGP_LayerFlag_MOTION_BLUR: _bindgen_ty_122 = 8;
7386pub const AEGP_LayerFlag_FRAME_BLENDING: _bindgen_ty_122 = 16;
7387pub const AEGP_LayerFlag_LOCKED: _bindgen_ty_122 = 32;
7388pub const AEGP_LayerFlag_SHY: _bindgen_ty_122 = 64;
7389pub const AEGP_LayerFlag_COLLAPSE: _bindgen_ty_122 = 128;
7390pub const AEGP_LayerFlag_AUTO_ORIENT_ROTATION: _bindgen_ty_122 = 256;
7391pub const AEGP_LayerFlag_ADJUSTMENT_LAYER: _bindgen_ty_122 = 512;
7392pub const AEGP_LayerFlag_TIME_REMAPPING: _bindgen_ty_122 = 1024;
7393pub const AEGP_LayerFlag_LAYER_IS_3D: _bindgen_ty_122 = 2048;
7394pub const AEGP_LayerFlag_LOOK_AT_CAMERA: _bindgen_ty_122 = 4096;
7395pub const AEGP_LayerFlag_LOOK_AT_POI: _bindgen_ty_122 = 8192;
7396pub const AEGP_LayerFlag_SOLO: _bindgen_ty_122 = 16384;
7397pub const AEGP_LayerFlag_MARKERS_LOCKED: _bindgen_ty_122 = 32768;
7398pub const AEGP_LayerFlag_NULL_LAYER: _bindgen_ty_122 = 65536;
7399pub const AEGP_LayerFlag_HIDE_LOCKED_MASKS: _bindgen_ty_122 = 131072;
7400pub const AEGP_LayerFlag_GUIDE_LAYER: _bindgen_ty_122 = 262144;
7401pub const AEGP_LayerFlag_ADVANCED_FRAME_BLENDING: _bindgen_ty_122 = 524288;
7402pub const AEGP_LayerFlag_SUBLAYERS_RENDER_SEPARATELY: _bindgen_ty_122 = 1048576;
7403pub const AEGP_LayerFlag_ENVIRONMENT_LAYER: _bindgen_ty_122 = 2097152;
7404pub type _bindgen_ty_122 = ::std::os::raw::c_uint;
7405pub type AEGP_LayerFlags = A_long;
7406pub const AEGP_ObjectType_NONE: _bindgen_ty_123 = -1;
7407pub const AEGP_ObjectType_AV: _bindgen_ty_123 = 0;
7408pub const AEGP_ObjectType_LIGHT: _bindgen_ty_123 = 1;
7409pub const AEGP_ObjectType_CAMERA: _bindgen_ty_123 = 2;
7410pub const AEGP_ObjectType_TEXT: _bindgen_ty_123 = 3;
7411pub const AEGP_ObjectType_VECTOR: _bindgen_ty_123 = 4;
7412pub const AEGP_ObjectType_3D_MODEL: _bindgen_ty_123 = 5;
7413pub const AEGP_ObjectType_RESERVED1: _bindgen_ty_123 = 6;
7414pub const AEGP_ObjectType_RESERVED2: _bindgen_ty_123 = 7;
7415pub const AEGP_ObjectType_RESERVED3: _bindgen_ty_123 = 8;
7416pub const AEGP_ObjectType_NUM_TYPES: _bindgen_ty_123 = 9;
7417pub type _bindgen_ty_123 = ::std::os::raw::c_int;
7418pub type AEGP_ObjectType = A_long;
7419pub const AEGP_LTimeMode_LayerTime: _bindgen_ty_124 = 0;
7420pub const AEGP_LTimeMode_CompTime: _bindgen_ty_124 = 1;
7421pub type _bindgen_ty_124 = ::std::os::raw::c_uint;
7422pub type AEGP_LTimeMode = A_short;
7423#[repr(C)]
7424#[derive(Debug, Copy, Clone)]
7425pub struct AEGP_LayerSuite9 {
7426    pub AEGP_GetCompNumLayers: ::std::option::Option<
7427        unsafe extern "C" fn(compH: AEGP_CompH, num_layersPL: *mut A_long) -> A_Err,
7428    >,
7429    pub AEGP_GetCompLayerByIndex: ::std::option::Option<
7430        unsafe extern "C" fn(
7431            compH: AEGP_CompH,
7432            layer_indexL: A_long,
7433            layerPH: *mut AEGP_LayerH,
7434        ) -> A_Err,
7435    >,
7436    pub AEGP_GetActiveLayer:
7437        ::std::option::Option<unsafe extern "C" fn(layerPH: *mut AEGP_LayerH) -> A_Err>,
7438    pub AEGP_GetLayerIndex: ::std::option::Option<
7439        unsafe extern "C" fn(layerH: AEGP_LayerH, layer_indexPL: *mut A_long) -> A_Err,
7440    >,
7441    pub AEGP_GetLayerSourceItem: ::std::option::Option<
7442        unsafe extern "C" fn(layerH: AEGP_LayerH, source_itemPH: *mut AEGP_ItemH) -> A_Err,
7443    >,
7444    pub AEGP_GetLayerSourceItemID: ::std::option::Option<
7445        unsafe extern "C" fn(layerH: AEGP_LayerH, source_item_idPL: *mut A_long) -> A_Err,
7446    >,
7447    pub AEGP_GetLayerParentComp: ::std::option::Option<
7448        unsafe extern "C" fn(layerH: AEGP_LayerH, compPH: *mut AEGP_CompH) -> A_Err,
7449    >,
7450    pub AEGP_GetLayerName: ::std::option::Option<
7451        unsafe extern "C" fn(
7452            pluginID: AEGP_PluginID,
7453            layerH: AEGP_LayerH,
7454            utf_layer_namePH0: *mut AEGP_MemHandle,
7455            utf_source_namePH0: *mut AEGP_MemHandle,
7456        ) -> A_Err,
7457    >,
7458    pub AEGP_GetLayerQuality: ::std::option::Option<
7459        unsafe extern "C" fn(layerH: AEGP_LayerH, qualityP: *mut AEGP_LayerQuality) -> A_Err,
7460    >,
7461    pub AEGP_SetLayerQuality: ::std::option::Option<
7462        unsafe extern "C" fn(layerH: AEGP_LayerH, quality: AEGP_LayerQuality) -> A_Err,
7463    >,
7464    pub AEGP_GetLayerFlags: ::std::option::Option<
7465        unsafe extern "C" fn(layerH: AEGP_LayerH, layer_flagsP: *mut AEGP_LayerFlags) -> A_Err,
7466    >,
7467    pub AEGP_SetLayerFlag: ::std::option::Option<
7468        unsafe extern "C" fn(
7469            layerH: AEGP_LayerH,
7470            single_flag: AEGP_LayerFlags,
7471            valueB: A_Boolean,
7472        ) -> A_Err,
7473    >,
7474    pub AEGP_IsLayerVideoReallyOn: ::std::option::Option<
7475        unsafe extern "C" fn(layerH: AEGP_LayerH, onPB: *mut A_Boolean) -> A_Err,
7476    >,
7477    pub AEGP_IsLayerAudioReallyOn: ::std::option::Option<
7478        unsafe extern "C" fn(layerH: AEGP_LayerH, onPB: *mut A_Boolean) -> A_Err,
7479    >,
7480    pub AEGP_GetLayerCurrentTime: ::std::option::Option<
7481        unsafe extern "C" fn(
7482            layerH: AEGP_LayerH,
7483            time_mode: AEGP_LTimeMode,
7484            curr_timePT: *mut A_Time,
7485        ) -> A_Err,
7486    >,
7487    pub AEGP_GetLayerInPoint: ::std::option::Option<
7488        unsafe extern "C" fn(
7489            layerH: AEGP_LayerH,
7490            time_mode: AEGP_LTimeMode,
7491            in_pointPT: *mut A_Time,
7492        ) -> A_Err,
7493    >,
7494    pub AEGP_GetLayerDuration: ::std::option::Option<
7495        unsafe extern "C" fn(
7496            layerH: AEGP_LayerH,
7497            time_mode: AEGP_LTimeMode,
7498            durationPT: *mut A_Time,
7499        ) -> A_Err,
7500    >,
7501    pub AEGP_SetLayerInPointAndDuration: ::std::option::Option<
7502        unsafe extern "C" fn(
7503            layerH: AEGP_LayerH,
7504            time_mode: AEGP_LTimeMode,
7505            in_pointPT: *const A_Time,
7506            durationPT: *const A_Time,
7507        ) -> A_Err,
7508    >,
7509    pub AEGP_GetLayerOffset: ::std::option::Option<
7510        unsafe extern "C" fn(layerH: AEGP_LayerH, offsetPT: *mut A_Time) -> A_Err,
7511    >,
7512    pub AEGP_SetLayerOffset: ::std::option::Option<
7513        unsafe extern "C" fn(layerH: AEGP_LayerH, offsetPT: *const A_Time) -> A_Err,
7514    >,
7515    pub AEGP_GetLayerStretch: ::std::option::Option<
7516        unsafe extern "C" fn(layerH: AEGP_LayerH, stretchPRt: *mut A_Ratio) -> A_Err,
7517    >,
7518    pub AEGP_SetLayerStretch: ::std::option::Option<
7519        unsafe extern "C" fn(layerH: AEGP_LayerH, stretchPRt: *const A_Ratio) -> A_Err,
7520    >,
7521    pub AEGP_GetLayerTransferMode: ::std::option::Option<
7522        unsafe extern "C" fn(
7523            layerH: AEGP_LayerH,
7524            transfer_modeP: *mut AEGP_LayerTransferMode,
7525        ) -> A_Err,
7526    >,
7527    pub AEGP_SetLayerTransferMode: ::std::option::Option<
7528        unsafe extern "C" fn(
7529            layerH: AEGP_LayerH,
7530            transfer_modeP: *const AEGP_LayerTransferMode,
7531        ) -> A_Err,
7532    >,
7533    pub AEGP_IsAddLayerValid: ::std::option::Option<
7534        unsafe extern "C" fn(
7535            item_to_addH: AEGP_ItemH,
7536            into_compH: AEGP_CompH,
7537            validPB: *mut A_Boolean,
7538        ) -> A_Err,
7539    >,
7540    pub AEGP_AddLayer: ::std::option::Option<
7541        unsafe extern "C" fn(
7542            item_to_addH: AEGP_ItemH,
7543            into_compH: AEGP_CompH,
7544            added_layerPH0: *mut AEGP_LayerH,
7545        ) -> A_Err,
7546    >,
7547    pub AEGP_ReorderLayer: ::std::option::Option<
7548        unsafe extern "C" fn(layerH: AEGP_LayerH, layer_indexL: A_long) -> A_Err,
7549    >,
7550    pub AEGP_GetLayerMaskedBounds: ::std::option::Option<
7551        unsafe extern "C" fn(
7552            layerH: AEGP_LayerH,
7553            time_mode: AEGP_LTimeMode,
7554            timePT: *const A_Time,
7555            boundsPR: *mut A_FloatRect,
7556        ) -> A_Err,
7557    >,
7558    pub AEGP_GetLayerObjectType: ::std::option::Option<
7559        unsafe extern "C" fn(layerH: AEGP_LayerH, object_type: *mut AEGP_ObjectType) -> A_Err,
7560    >,
7561    pub AEGP_IsLayer3D: ::std::option::Option<
7562        unsafe extern "C" fn(layerH: AEGP_LayerH, is_3DPB: *mut A_Boolean) -> A_Err,
7563    >,
7564    pub AEGP_IsLayer2D: ::std::option::Option<
7565        unsafe extern "C" fn(layerH: AEGP_LayerH, is_2DPB: *mut A_Boolean) -> A_Err,
7566    >,
7567    pub AEGP_IsVideoActive: ::std::option::Option<
7568        unsafe extern "C" fn(
7569            layerH: AEGP_LayerH,
7570            time_mode: AEGP_LTimeMode,
7571            timePT: *const A_Time,
7572            is_activePB: *mut A_Boolean,
7573        ) -> A_Err,
7574    >,
7575    pub AEGP_IsLayerUsedAsTrackMatte: ::std::option::Option<
7576        unsafe extern "C" fn(
7577            layerH: AEGP_LayerH,
7578            fill_must_be_activeB: A_Boolean,
7579            is_track_mattePB: *mut A_Boolean,
7580        ) -> A_Err,
7581    >,
7582    pub AEGP_DoesLayerHaveTrackMatte: ::std::option::Option<
7583        unsafe extern "C" fn(layerH: AEGP_LayerH, has_track_mattePB: *mut A_Boolean) -> A_Err,
7584    >,
7585    pub AEGP_ConvertCompToLayerTime: ::std::option::Option<
7586        unsafe extern "C" fn(
7587            layerH: AEGP_LayerH,
7588            comp_timePT: *const A_Time,
7589            layer_timePT: *mut A_Time,
7590        ) -> A_Err,
7591    >,
7592    pub AEGP_ConvertLayerToCompTime: ::std::option::Option<
7593        unsafe extern "C" fn(
7594            layerH: AEGP_LayerH,
7595            layer_timePT: *const A_Time,
7596            comp_timePT: *mut A_Time,
7597        ) -> A_Err,
7598    >,
7599    pub AEGP_GetLayerDancingRandValue: ::std::option::Option<
7600        unsafe extern "C" fn(
7601            layerH: AEGP_LayerH,
7602            comp_timePT: *const A_Time,
7603            rand_valuePL: *mut A_long,
7604        ) -> A_Err,
7605    >,
7606    pub AEGP_GetLayerID: ::std::option::Option<
7607        unsafe extern "C" fn(layerH: AEGP_LayerH, id_valP: *mut AEGP_LayerIDVal) -> A_Err,
7608    >,
7609    pub AEGP_GetLayerToWorldXform: ::std::option::Option<
7610        unsafe extern "C" fn(
7611            aegp_layerH: AEGP_LayerH,
7612            comp_timeP: *const A_Time,
7613            transform: *mut A_Matrix4,
7614        ) -> A_Err,
7615    >,
7616    pub AEGP_GetLayerToWorldXformFromView: ::std::option::Option<
7617        unsafe extern "C" fn(
7618            aegp_layerH: AEGP_LayerH,
7619            view_timeP: *const A_Time,
7620            comp_timeP: *const A_Time,
7621            transform: *mut A_Matrix4,
7622        ) -> A_Err,
7623    >,
7624    pub AEGP_SetLayerName: ::std::option::Option<
7625        unsafe extern "C" fn(aegp_layerH: AEGP_LayerH, new_nameZ: *const A_UTF16Char) -> A_Err,
7626    >,
7627    pub AEGP_GetLayerParent: ::std::option::Option<
7628        unsafe extern "C" fn(layerH: AEGP_LayerH, parent_layerPH: *mut AEGP_LayerH) -> A_Err,
7629    >,
7630    pub AEGP_SetLayerParent: ::std::option::Option<
7631        unsafe extern "C" fn(layerH: AEGP_LayerH, parent_layerH0: AEGP_LayerH) -> A_Err,
7632    >,
7633    pub AEGP_DeleteLayer: ::std::option::Option<unsafe extern "C" fn(layerH: AEGP_LayerH) -> A_Err>,
7634    pub AEGP_DuplicateLayer: ::std::option::Option<
7635        unsafe extern "C" fn(
7636            orig_layerH: AEGP_LayerH,
7637            duplicate_layerPH: *mut AEGP_LayerH,
7638        ) -> A_Err,
7639    >,
7640    pub AEGP_GetLayerFromLayerID: ::std::option::Option<
7641        unsafe extern "C" fn(
7642            parent_compH: AEGP_CompH,
7643            id: AEGP_LayerIDVal,
7644            layerPH: *mut AEGP_LayerH,
7645        ) -> A_Err,
7646    >,
7647    pub AEGP_GetLayerLabel: ::std::option::Option<
7648        unsafe extern "C" fn(layerH: AEGP_LayerH, labelP: *mut AEGP_LabelID) -> A_Err,
7649    >,
7650    pub AEGP_SetLayerLabel: ::std::option::Option<
7651        unsafe extern "C" fn(layerH: AEGP_LayerH, label: AEGP_LabelID) -> A_Err,
7652    >,
7653    pub AEGP_GetLayerSamplingQuality: ::std::option::Option<
7654        unsafe extern "C" fn(
7655            layerH: AEGP_LayerH,
7656            qualityP: *mut AEGP_LayerSamplingQuality,
7657        ) -> A_Err,
7658    >,
7659    pub AEGP_SetLayerSamplingQuality: ::std::option::Option<
7660        unsafe extern "C" fn(layerH: AEGP_LayerH, quality: AEGP_LayerSamplingQuality) -> A_Err,
7661    >,
7662    pub AEGP_GetTrackMatteLayer: ::std::option::Option<
7663        unsafe extern "C" fn(layerH: AEGP_LayerH, track_matte_layerPH: *mut AEGP_LayerH) -> A_Err,
7664    >,
7665    pub AEGP_SetTrackMatte: ::std::option::Option<
7666        unsafe extern "C" fn(
7667            layerH: AEGP_LayerH,
7668            track_matte_layerH0: AEGP_LayerH,
7669            track_matte_type: AEGP_TrackMatte,
7670        ) -> A_Err,
7671    >,
7672    pub AEGP_RemoveTrackMatte:
7673        ::std::option::Option<unsafe extern "C" fn(layerH: AEGP_LayerH) -> A_Err>,
7674}
7675pub const AEGP_LayerStream_NONE: _bindgen_ty_125 = -1;
7676pub const AEGP_LayerStream_ANCHORPOINT: _bindgen_ty_125 = 0;
7677pub const AEGP_LayerStream_POSITION: _bindgen_ty_125 = 1;
7678pub const AEGP_LayerStream_SCALE: _bindgen_ty_125 = 2;
7679pub const AEGP_LayerStream_ROTATION: _bindgen_ty_125 = 3;
7680pub const AEGP_LayerStream_ROTATE_Z: _bindgen_ty_125 = 3;
7681pub const AEGP_LayerStream_OPACITY: _bindgen_ty_125 = 4;
7682pub const AEGP_LayerStream_AUDIO: _bindgen_ty_125 = 5;
7683pub const AEGP_LayerStream_MARKER: _bindgen_ty_125 = 6;
7684pub const AEGP_LayerStream_TIME_REMAP: _bindgen_ty_125 = 7;
7685pub const AEGP_LayerStream_ROTATE_X: _bindgen_ty_125 = 8;
7686pub const AEGP_LayerStream_ROTATE_Y: _bindgen_ty_125 = 9;
7687pub const AEGP_LayerStream_ORIENTATION: _bindgen_ty_125 = 10;
7688pub const AEGP_LayerStream_ZOOM: _bindgen_ty_125 = 11;
7689pub const AEGP_LayerStream_DEPTH_OF_FIELD: _bindgen_ty_125 = 12;
7690pub const AEGP_LayerStream_FOCUS_DISTANCE: _bindgen_ty_125 = 13;
7691pub const AEGP_LayerStream_APERTURE: _bindgen_ty_125 = 14;
7692pub const AEGP_LayerStream_BLUR_LEVEL: _bindgen_ty_125 = 15;
7693pub const AEGP_LayerStream_INTENSITY: _bindgen_ty_125 = 16;
7694pub const AEGP_LayerStream_COLOR: _bindgen_ty_125 = 17;
7695pub const AEGP_LayerStream_CONE_ANGLE: _bindgen_ty_125 = 18;
7696pub const AEGP_LayerStream_CONE_FEATHER: _bindgen_ty_125 = 19;
7697pub const AEGP_LayerStream_SHADOW_DARKNESS: _bindgen_ty_125 = 20;
7698pub const AEGP_LayerStream_SHADOW_DIFFUSION: _bindgen_ty_125 = 21;
7699pub const AEGP_LayerStream_ACCEPTS_SHADOWS: _bindgen_ty_125 = 22;
7700pub const AEGP_LayerStream_ACCEPTS_LIGHTS: _bindgen_ty_125 = 23;
7701pub const AEGP_LayerStream_AMBIENT_COEFF: _bindgen_ty_125 = 24;
7702pub const AEGP_LayerStream_DIFFUSE_COEFF: _bindgen_ty_125 = 25;
7703pub const AEGP_LayerStream_SPECULAR_INTENSITY: _bindgen_ty_125 = 26;
7704pub const AEGP_LayerStream_SPECULAR_SHININESS: _bindgen_ty_125 = 27;
7705pub const AEGP_LayerStream_CASTS_SHADOWS: _bindgen_ty_125 = 28;
7706pub const AEGP_LayerStream_LIGHT_TRANSMISSION: _bindgen_ty_125 = 29;
7707pub const AEGP_LayerStream_METAL: _bindgen_ty_125 = 30;
7708pub const AEGP_LayerStream_SOURCE_TEXT: _bindgen_ty_125 = 31;
7709pub const AEGP_LayerStream_IRIS_SHAPE: _bindgen_ty_125 = 32;
7710pub const AEGP_LayerStream_IRIS_ROTATION: _bindgen_ty_125 = 33;
7711pub const AEGP_LayerStream_IRIS_ROUNDNESS: _bindgen_ty_125 = 34;
7712pub const AEGP_LayerStream_IRIS_ASPECT_RATIO: _bindgen_ty_125 = 35;
7713pub const AEGP_LayerStream_IRIS_DIFFRACTION_FRINGE: _bindgen_ty_125 = 36;
7714pub const AEGP_LayerStream_IRIS_HIGHLIGHT_GAIN: _bindgen_ty_125 = 37;
7715pub const AEGP_LayerStream_IRIS_HIGHLIGHT_THRESHOLD: _bindgen_ty_125 = 38;
7716pub const AEGP_LayerStream_IRIS_HIGHLIGHT_SATURATION: _bindgen_ty_125 = 39;
7717pub const AEGP_LayerStream_LIGHT_FALLOFF_TYPE: _bindgen_ty_125 = 40;
7718pub const AEGP_LayerStream_LIGHT_FALLOFF_START: _bindgen_ty_125 = 41;
7719pub const AEGP_LayerStream_LIGHT_FALLOFF_DISTANCE: _bindgen_ty_125 = 42;
7720pub const AEGP_LayerStream_REFLECTION_INTENSITY: _bindgen_ty_125 = 43;
7721pub const AEGP_LayerStream_REFLECTION_SHARPNESS: _bindgen_ty_125 = 44;
7722pub const AEGP_LayerStream_REFLECTION_ROLLOFF: _bindgen_ty_125 = 45;
7723pub const AEGP_LayerStream_TRANSPARENCY_COEFF: _bindgen_ty_125 = 46;
7724pub const AEGP_LayerStream_TRANSPARENCY_ROLLOFF: _bindgen_ty_125 = 47;
7725pub const AEGP_LayerStream_INDEX_OF_REFRACTION: _bindgen_ty_125 = 48;
7726pub const AEGP_LayerStream_EXTRUSION_BEVEL_STYLE: _bindgen_ty_125 = 49;
7727pub const AEGP_LayerStream_EXTRUSION_BEVEL_DIRECTION: _bindgen_ty_125 = 50;
7728pub const AEGP_LayerStream_EXTRUSION_BEVEL_DEPTH: _bindgen_ty_125 = 51;
7729pub const AEGP_LayerStream_EXTRUSION_HOLE_BEVEL_DEPTH: _bindgen_ty_125 = 52;
7730pub const AEGP_LayerStream_EXTRUSION_DEPTH: _bindgen_ty_125 = 53;
7731pub const AEGP_LayerStream_PLANE_CURVATURE: _bindgen_ty_125 = 54;
7732pub const AEGP_LayerStream_PLANE_SUBDIVISION: _bindgen_ty_125 = 55;
7733pub const AEGP_LayerStream_LIGHT_BACKGROUND_VISIBLE: _bindgen_ty_125 = 56;
7734pub const AEGP_LayerStream_LIGHT_BACKGROUND_OPACITY: _bindgen_ty_125 = 57;
7735pub const AEGP_LayerStream_LIGHT_BACKGROUND_BLUR: _bindgen_ty_125 = 58;
7736pub const AEGP_LayerStream_SHADOW_COLOR: _bindgen_ty_125 = 59;
7737pub const AEGP_LayerStream_NUMTYPES: _bindgen_ty_125 = 60;
7738pub const AEGP_LayerStream_BEGIN: _bindgen_ty_125 = 0;
7739pub const AEGP_LayerStream_END: _bindgen_ty_125 = 60;
7740pub type _bindgen_ty_125 = ::std::os::raw::c_int;
7741pub type AEGP_LayerStream = A_long;
7742pub const AEGP_MaskStream_OUTLINE: _bindgen_ty_126 = 400;
7743pub const AEGP_MaskStream_OPACITY: _bindgen_ty_126 = 401;
7744pub const AEGP_MaskStream_FEATHER: _bindgen_ty_126 = 402;
7745pub const AEGP_MaskStream_EXPANSION: _bindgen_ty_126 = 403;
7746pub const AEGP_MaskStream_BEGIN: _bindgen_ty_126 = 400;
7747pub const AEGP_MaskStream_END: _bindgen_ty_126 = 404;
7748pub type _bindgen_ty_126 = ::std::os::raw::c_uint;
7749pub type AEGP_MaskStream = A_long;
7750pub const AEGP_StreamFlag_NONE: _bindgen_ty_127 = 0;
7751pub const AEGP_StreamFlag_HAS_MIN: _bindgen_ty_127 = 1;
7752pub const AEGP_StreamFlag_HAS_MAX: _bindgen_ty_127 = 2;
7753pub const AEGP_StreamFlag_IS_SPATIAL: _bindgen_ty_127 = 4;
7754pub type _bindgen_ty_127 = ::std::os::raw::c_uint;
7755pub type AEGP_StreamFlags = A_long;
7756pub type AEGP_OneDVal = A_FpLong;
7757#[repr(C)]
7758#[derive(Debug, Copy, Clone)]
7759pub struct AEGP_TwoDVal {
7760    pub x: A_FpLong,
7761    pub y: A_FpLong,
7762}
7763#[repr(C)]
7764#[derive(Debug, Copy, Clone)]
7765pub struct AEGP_ThreeDVal {
7766    pub x: A_FpLong,
7767    pub y: A_FpLong,
7768    pub z: A_FpLong,
7769}
7770pub type AEGP_FourDVal = [A_FpLong; 4usize];
7771pub type AEGP_ArbBlockVal = A_Handle;
7772pub const AEGP_KeyInterp_NONE: _bindgen_ty_128 = 0;
7773pub const AEGP_KeyInterp_LINEAR: _bindgen_ty_128 = 1;
7774pub const AEGP_KeyInterp_BEZIER: _bindgen_ty_128 = 2;
7775pub const AEGP_KeyInterp_HOLD: _bindgen_ty_128 = 3;
7776pub const AEGP_Interp_NUM_VALUES: _bindgen_ty_128 = 4;
7777pub type _bindgen_ty_128 = ::std::os::raw::c_uint;
7778pub type AEGP_KeyframeInterpolationType = A_long;
7779pub const AEGP_KeyInterpMask_NONE: _bindgen_ty_129 = 0;
7780pub const AEGP_KeyInterpMask_LINEAR: _bindgen_ty_129 = 1;
7781pub const AEGP_KeyInterpMask_BEZIER: _bindgen_ty_129 = 2;
7782pub const AEGP_KeyInterpMask_HOLD: _bindgen_ty_129 = 4;
7783pub const AEGP_KeyInterpMask_CUSTOM: _bindgen_ty_129 = 8;
7784pub const AEGP_KeyInterpMask_ANY: _bindgen_ty_129 = 65535;
7785pub type _bindgen_ty_129 = ::std::os::raw::c_uint;
7786pub type AEGP_KeyInterpolationMask = A_long;
7787#[repr(C)]
7788#[derive(Debug, Copy, Clone)]
7789pub struct AEGP_KeyframeEase {
7790    pub speedF: A_FpLong,
7791    pub influenceF: A_FpLong,
7792}
7793#[repr(C)]
7794#[derive(Copy, Clone)]
7795pub union AEGP_StreamVal2 {
7796    pub four_d: AEGP_FourDVal,
7797    pub three_d: AEGP_ThreeDVal,
7798    pub two_d: AEGP_TwoDVal,
7799    pub one_d: AEGP_OneDVal,
7800    pub color: AEGP_ColorVal,
7801    pub arbH: AEGP_ArbBlockVal,
7802    pub markerP: AEGP_MarkerValP,
7803    pub layer_id: AEGP_LayerIDVal,
7804    pub mask_id: AEGP_MaskIDVal,
7805    pub mask: AEGP_MaskOutlineValH,
7806    pub text_documentH: AEGP_TextDocumentH,
7807}
7808#[repr(C)]
7809#[derive(Copy, Clone)]
7810pub struct AEGP_StreamValue2 {
7811    pub streamH: AEGP_StreamRefH,
7812    pub val: AEGP_StreamVal2,
7813}
7814pub const AEGP_StreamType_NO_DATA: _bindgen_ty_130 = 0;
7815pub const AEGP_StreamType_ThreeD_SPATIAL: _bindgen_ty_130 = 1;
7816pub const AEGP_StreamType_ThreeD: _bindgen_ty_130 = 2;
7817pub const AEGP_StreamType_TwoD_SPATIAL: _bindgen_ty_130 = 3;
7818pub const AEGP_StreamType_TwoD: _bindgen_ty_130 = 4;
7819pub const AEGP_StreamType_OneD: _bindgen_ty_130 = 5;
7820pub const AEGP_StreamType_COLOR: _bindgen_ty_130 = 6;
7821pub const AEGP_StreamType_ARB: _bindgen_ty_130 = 7;
7822pub const AEGP_StreamType_MARKER: _bindgen_ty_130 = 8;
7823pub const AEGP_StreamType_LAYER_ID: _bindgen_ty_130 = 9;
7824pub const AEGP_StreamType_MASK_ID: _bindgen_ty_130 = 10;
7825pub const AEGP_StreamType_MASK: _bindgen_ty_130 = 11;
7826pub const AEGP_StreamType_TEXT_DOCUMENT: _bindgen_ty_130 = 12;
7827pub type _bindgen_ty_130 = ::std::os::raw::c_uint;
7828pub type AEGP_StreamType = A_long;
7829#[repr(C)]
7830#[derive(Debug, Copy, Clone)]
7831pub struct AEGP_StreamSuite6 {
7832    pub AEGP_IsStreamLegal: ::std::option::Option<
7833        unsafe extern "C" fn(
7834            layerH: AEGP_LayerH,
7835            which_stream: AEGP_LayerStream,
7836            is_legalP: *mut A_Boolean,
7837        ) -> A_Err,
7838    >,
7839    pub AEGP_CanVaryOverTime: ::std::option::Option<
7840        unsafe extern "C" fn(streamH: AEGP_StreamRefH, can_varyPB: *mut A_Boolean) -> A_Err,
7841    >,
7842    pub AEGP_GetValidInterpolations: ::std::option::Option<
7843        unsafe extern "C" fn(
7844            streamH: AEGP_StreamRefH,
7845            valid_interpolationsP: *mut AEGP_KeyInterpolationMask,
7846        ) -> A_Err,
7847    >,
7848    pub AEGP_GetNewLayerStream: ::std::option::Option<
7849        unsafe extern "C" fn(
7850            aegp_plugin_id: AEGP_PluginID,
7851            layerH: AEGP_LayerH,
7852            which_stream: AEGP_LayerStream,
7853            streamPH: *mut AEGP_StreamRefH,
7854        ) -> A_Err,
7855    >,
7856    pub AEGP_GetEffectNumParamStreams: ::std::option::Option<
7857        unsafe extern "C" fn(effect_refH: AEGP_EffectRefH, num_paramsPL: *mut A_long) -> A_Err,
7858    >,
7859    pub AEGP_GetNewEffectStreamByIndex: ::std::option::Option<
7860        unsafe extern "C" fn(
7861            aegp_plugin_id: AEGP_PluginID,
7862            effect_refH: AEGP_EffectRefH,
7863            param_index: PF_ParamIndex,
7864            streamPH: *mut AEGP_StreamRefH,
7865        ) -> A_Err,
7866    >,
7867    pub AEGP_GetNewMaskStream: ::std::option::Option<
7868        unsafe extern "C" fn(
7869            aegp_plugin_id: AEGP_PluginID,
7870            mask_refH: AEGP_MaskRefH,
7871            which_stream: AEGP_MaskStream,
7872            mask_streamPH: *mut AEGP_StreamRefH,
7873        ) -> A_Err,
7874    >,
7875    pub AEGP_DisposeStream:
7876        ::std::option::Option<unsafe extern "C" fn(streamH: AEGP_StreamRefH) -> A_Err>,
7877    pub AEGP_GetStreamName: ::std::option::Option<
7878        unsafe extern "C" fn(
7879            pluginID: AEGP_PluginID,
7880            streamH: AEGP_StreamRefH,
7881            force_englishB: A_Boolean,
7882            utf_stream_namePH: *mut AEGP_MemHandle,
7883        ) -> A_Err,
7884    >,
7885    pub AEGP_GetStreamUnitsText: ::std::option::Option<
7886        unsafe extern "C" fn(
7887            streamH: AEGP_StreamRefH,
7888            force_englishB: A_Boolean,
7889            unitsZ: *mut A_char,
7890        ) -> A_Err,
7891    >,
7892    pub AEGP_GetStreamProperties: ::std::option::Option<
7893        unsafe extern "C" fn(
7894            streamH: AEGP_StreamRefH,
7895            flagsP: *mut AEGP_StreamFlags,
7896            minP0: *mut A_FpLong,
7897            maxP0: *mut A_FpLong,
7898        ) -> A_Err,
7899    >,
7900    pub AEGP_IsStreamTimevarying: ::std::option::Option<
7901        unsafe extern "C" fn(streamH: AEGP_StreamRefH, is_timevaryingPB: *mut A_Boolean) -> A_Err,
7902    >,
7903    pub AEGP_GetStreamType: ::std::option::Option<
7904        unsafe extern "C" fn(streamH: AEGP_StreamRefH, stream_typeP: *mut AEGP_StreamType) -> A_Err,
7905    >,
7906    pub AEGP_GetNewStreamValue: ::std::option::Option<
7907        unsafe extern "C" fn(
7908            aegp_plugin_id: AEGP_PluginID,
7909            streamH: AEGP_StreamRefH,
7910            time_mode: AEGP_LTimeMode,
7911            timePT: *const A_Time,
7912            pre_expressionB: A_Boolean,
7913            valueP: *mut AEGP_StreamValue2,
7914        ) -> A_Err,
7915    >,
7916    pub AEGP_DisposeStreamValue:
7917        ::std::option::Option<unsafe extern "C" fn(valueP: *mut AEGP_StreamValue2) -> A_Err>,
7918    pub AEGP_SetStreamValue: ::std::option::Option<
7919        unsafe extern "C" fn(
7920            aegp_plugin_id: AEGP_PluginID,
7921            streamH: AEGP_StreamRefH,
7922            valueP: *mut AEGP_StreamValue2,
7923        ) -> A_Err,
7924    >,
7925    pub AEGP_GetLayerStreamValue: ::std::option::Option<
7926        unsafe extern "C" fn(
7927            layerH: AEGP_LayerH,
7928            which_stream: AEGP_LayerStream,
7929            time_mode: AEGP_LTimeMode,
7930            timePT: *const A_Time,
7931            pre_expressionB: A_Boolean,
7932            stream_valP: *mut AEGP_StreamVal2,
7933            stream_typeP0: *mut AEGP_StreamType,
7934        ) -> A_Err,
7935    >,
7936    pub AEGP_GetExpressionState: ::std::option::Option<
7937        unsafe extern "C" fn(
7938            aegp_plugin_id: AEGP_PluginID,
7939            streamH: AEGP_StreamRefH,
7940            enabledPB: *mut A_Boolean,
7941        ) -> A_Err,
7942    >,
7943    pub AEGP_SetExpressionState: ::std::option::Option<
7944        unsafe extern "C" fn(
7945            aegp_plugin_id: AEGP_PluginID,
7946            streamH: AEGP_StreamRefH,
7947            enabledB: A_Boolean,
7948        ) -> A_Err,
7949    >,
7950    pub AEGP_GetExpression: ::std::option::Option<
7951        unsafe extern "C" fn(
7952            aegp_plugin_id: AEGP_PluginID,
7953            streamH: AEGP_StreamRefH,
7954            unicodeHZ: *mut AEGP_MemHandle,
7955        ) -> A_Err,
7956    >,
7957    pub AEGP_SetExpression: ::std::option::Option<
7958        unsafe extern "C" fn(
7959            aegp_plugin_id: AEGP_PluginID,
7960            streamH: AEGP_StreamRefH,
7961            expressionP: *const A_UTF16Char,
7962        ) -> A_Err,
7963    >,
7964    pub AEGP_DuplicateStreamRef: ::std::option::Option<
7965        unsafe extern "C" fn(
7966            aegp_plugin_id: AEGP_PluginID,
7967            streamH: AEGP_StreamRefH,
7968            dup_streamPH: *mut AEGP_StreamRefH,
7969        ) -> A_Err,
7970    >,
7971    pub AEGP_GetUniqueStreamID: ::std::option::Option<
7972        unsafe extern "C" fn(streamH: AEGP_StreamRefH, outID: *mut i32) -> A_Err,
7973    >,
7974}
7975pub const AEGP_StreamGroupingType_NONE: _bindgen_ty_131 = -1;
7976pub const AEGP_StreamGroupingType_LEAF: _bindgen_ty_131 = 0;
7977pub const AEGP_StreamGroupingType_NAMED_GROUP: _bindgen_ty_131 = 1;
7978pub const AEGP_StreamGroupingType_INDEXED_GROUP: _bindgen_ty_131 = 2;
7979pub type _bindgen_ty_131 = ::std::os::raw::c_int;
7980pub type AEGP_StreamGroupingType = A_long;
7981pub const AEGP_DynStreamFlag_ACTIVE_EYEBALL: _bindgen_ty_132 = 1;
7982pub const AEGP_DynStreamFlag_HIDDEN: _bindgen_ty_132 = 2;
7983pub const AEGP_DynStreamFlag_DISABLED: _bindgen_ty_132 = 16;
7984pub const AEGP_DynStreamFlag_ELIDED: _bindgen_ty_132 = 32;
7985pub const AEGP_DynStreamFlag_SHOWN_WHEN_EMPTY: _bindgen_ty_132 = 1024;
7986pub const AEGP_DynStreamFlag_SKIP_REVEAL_WHEN_UNHIDDEN: _bindgen_ty_132 = 65536;
7987pub type _bindgen_ty_132 = ::std::os::raw::c_uint;
7988pub type AEGP_DynStreamFlags = A_u_long;
7989#[repr(C)]
7990#[derive(Debug, Copy, Clone)]
7991pub struct AEGP_DynamicStreamSuite4 {
7992    pub AEGP_GetNewStreamRefForLayer: ::std::option::Option<
7993        unsafe extern "C" fn(
7994            aegp_plugin_id: AEGP_PluginID,
7995            layerH: AEGP_LayerH,
7996            streamPH: *mut AEGP_StreamRefH,
7997        ) -> A_Err,
7998    >,
7999    pub AEGP_GetNewStreamRefForMask: ::std::option::Option<
8000        unsafe extern "C" fn(
8001            aegp_plugin_id: AEGP_PluginID,
8002            maskH: AEGP_MaskRefH,
8003            streamPH: *mut AEGP_StreamRefH,
8004        ) -> A_Err,
8005    >,
8006    pub AEGP_GetStreamDepth: ::std::option::Option<
8007        unsafe extern "C" fn(streamH: AEGP_StreamRefH, depthPL: *mut A_long) -> A_Err,
8008    >,
8009    pub AEGP_GetStreamGroupingType: ::std::option::Option<
8010        unsafe extern "C" fn(
8011            streamH: AEGP_StreamRefH,
8012            group_typeP: *mut AEGP_StreamGroupingType,
8013        ) -> A_Err,
8014    >,
8015    pub AEGP_GetNumStreamsInGroup: ::std::option::Option<
8016        unsafe extern "C" fn(streamH: AEGP_StreamRefH, num_streamsPL: *mut A_long) -> A_Err,
8017    >,
8018    pub AEGP_GetDynamicStreamFlags: ::std::option::Option<
8019        unsafe extern "C" fn(
8020            streamH: AEGP_StreamRefH,
8021            stream_flagsP: *mut AEGP_DynStreamFlags,
8022        ) -> A_Err,
8023    >,
8024    pub AEGP_SetDynamicStreamFlag: ::std::option::Option<
8025        unsafe extern "C" fn(
8026            streamH: AEGP_StreamRefH,
8027            one_flag: AEGP_DynStreamFlags,
8028            undoableB: A_Boolean,
8029            setB: A_Boolean,
8030        ) -> A_Err,
8031    >,
8032    pub AEGP_GetNewStreamRefByIndex: ::std::option::Option<
8033        unsafe extern "C" fn(
8034            aegp_plugin_id: AEGP_PluginID,
8035            parent_groupH: AEGP_StreamRefH,
8036            indexL: A_long,
8037            streamPH: *mut AEGP_StreamRefH,
8038        ) -> A_Err,
8039    >,
8040    pub AEGP_GetNewStreamRefByMatchname: ::std::option::Option<
8041        unsafe extern "C" fn(
8042            aegp_plugin_id: AEGP_PluginID,
8043            parent_groupH: AEGP_StreamRefH,
8044            utf8_match_nameZ: *const A_char,
8045            streamPH: *mut AEGP_StreamRefH,
8046        ) -> A_Err,
8047    >,
8048    pub AEGP_DeleteStream:
8049        ::std::option::Option<unsafe extern "C" fn(streamH: AEGP_StreamRefH) -> A_Err>,
8050    pub AEGP_ReorderStream: ::std::option::Option<
8051        unsafe extern "C" fn(streamH: AEGP_StreamRefH, new_indexL: A_long) -> A_Err,
8052    >,
8053    pub AEGP_DuplicateStream: ::std::option::Option<
8054        unsafe extern "C" fn(
8055            aegp_plugin_id: AEGP_PluginID,
8056            streamH: AEGP_StreamRefH,
8057            new_indexPL0: *mut A_long,
8058        ) -> A_Err,
8059    >,
8060    pub AEGP_SetStreamName: ::std::option::Option<
8061        unsafe extern "C" fn(streamH: AEGP_StreamRefH, nameZ: *const A_UTF16Char) -> A_Err,
8062    >,
8063    pub AEGP_CanAddStream: ::std::option::Option<
8064        unsafe extern "C" fn(
8065            group_streamH: AEGP_StreamRefH,
8066            utf8_match_nameZ: *const A_char,
8067            can_addPB: *mut A_Boolean,
8068        ) -> A_Err,
8069    >,
8070    pub AEGP_AddStream: ::std::option::Option<
8071        unsafe extern "C" fn(
8072            aegp_plugin_id: AEGP_PluginID,
8073            indexed_group_streamH: AEGP_StreamRefH,
8074            utf8_match_nameZ: *const A_char,
8075            streamPH0: *mut AEGP_StreamRefH,
8076        ) -> A_Err,
8077    >,
8078    pub AEGP_GetMatchName: ::std::option::Option<
8079        unsafe extern "C" fn(streamH: AEGP_StreamRefH, utf8_match_nameZ: *mut A_char) -> A_Err,
8080    >,
8081    pub AEGP_GetNewParentStreamRef: ::std::option::Option<
8082        unsafe extern "C" fn(
8083            aegp_plugin_id: AEGP_PluginID,
8084            streamH: AEGP_StreamRefH,
8085            parent_streamPH: *mut AEGP_StreamRefH,
8086        ) -> A_Err,
8087    >,
8088    pub AEGP_GetStreamIsModified: ::std::option::Option<
8089        unsafe extern "C" fn(streamH: AEGP_StreamRefH, modifiedPB: *mut A_Boolean) -> A_Err,
8090    >,
8091    pub AEGP_GetStreamIndexInParent: ::std::option::Option<
8092        unsafe extern "C" fn(streamH: AEGP_StreamRefH, indexPL: *mut A_long) -> A_Err,
8093    >,
8094    pub AEGP_IsSeparationLeader: ::std::option::Option<
8095        unsafe extern "C" fn(streamH: AEGP_StreamRefH, leaderPB: *mut A_Boolean) -> A_Err,
8096    >,
8097    pub AEGP_AreDimensionsSeparated: ::std::option::Option<
8098        unsafe extern "C" fn(leader_streamH: AEGP_StreamRefH, separatedPB: *mut A_Boolean) -> A_Err,
8099    >,
8100    pub AEGP_SetDimensionsSeparated: ::std::option::Option<
8101        unsafe extern "C" fn(leader_streamH: AEGP_StreamRefH, separatedB: A_Boolean) -> A_Err,
8102    >,
8103    pub AEGP_GetSeparationFollower: ::std::option::Option<
8104        unsafe extern "C" fn(
8105            leader_streamH: AEGP_StreamRefH,
8106            dimS: A_short,
8107            follower_streamPH: *mut AEGP_StreamRefH,
8108        ) -> A_Err,
8109    >,
8110    pub AEGP_IsSeparationFollower: ::std::option::Option<
8111        unsafe extern "C" fn(streamH: AEGP_StreamRefH, followerPB: *mut A_Boolean) -> A_Err,
8112    >,
8113    pub AEGP_GetSeparationLeader: ::std::option::Option<
8114        unsafe extern "C" fn(
8115            follower_streamH: AEGP_StreamRefH,
8116            leader_streamPH: *mut AEGP_StreamRefH,
8117        ) -> A_Err,
8118    >,
8119    pub AEGP_GetSeparationDimension: ::std::option::Option<
8120        unsafe extern "C" fn(follower_streamH: AEGP_StreamRefH, dimPS: *mut A_short) -> A_Err,
8121    >,
8122}
8123pub type AEGP_KeyframeIndex = A_long;
8124pub const AEGP_KeyframeFlag_NONE: _bindgen_ty_133 = 0;
8125pub const AEGP_KeyframeFlag_TEMPORAL_CONTINUOUS: _bindgen_ty_133 = 1;
8126pub const AEGP_KeyframeFlag_TEMPORAL_AUTOBEZIER: _bindgen_ty_133 = 2;
8127pub const AEGP_KeyframeFlag_SPATIAL_CONTINUOUS: _bindgen_ty_133 = 4;
8128pub const AEGP_KeyframeFlag_SPATIAL_AUTOBEZIER: _bindgen_ty_133 = 8;
8129pub const AEGP_KeyframeFlag_ROVING: _bindgen_ty_133 = 16;
8130pub type _bindgen_ty_133 = ::std::os::raw::c_uint;
8131pub type AEGP_KeyframeFlags = A_long;
8132pub const AEGP_NumKF_NO_DATA: _bindgen_ty_134 = -1;
8133pub type _bindgen_ty_134 = ::std::os::raw::c_int;
8134#[repr(C)]
8135#[derive(Debug, Copy, Clone)]
8136pub struct AEGP_KeyframeSuite5 {
8137    pub AEGP_GetStreamNumKFs: ::std::option::Option<
8138        unsafe extern "C" fn(streamH: AEGP_StreamRefH, num_kfsPL: *mut A_long) -> A_Err,
8139    >,
8140    pub AEGP_GetKeyframeTime: ::std::option::Option<
8141        unsafe extern "C" fn(
8142            streamH: AEGP_StreamRefH,
8143            key_index: AEGP_KeyframeIndex,
8144            time_mode: AEGP_LTimeMode,
8145            timePT: *mut A_Time,
8146        ) -> A_Err,
8147    >,
8148    pub AEGP_InsertKeyframe: ::std::option::Option<
8149        unsafe extern "C" fn(
8150            streamH: AEGP_StreamRefH,
8151            time_mode: AEGP_LTimeMode,
8152            timePT: *const A_Time,
8153            key_indexP: *mut AEGP_KeyframeIndex,
8154        ) -> A_Err,
8155    >,
8156    pub AEGP_DeleteKeyframe: ::std::option::Option<
8157        unsafe extern "C" fn(streamH: AEGP_StreamRefH, key_index: AEGP_KeyframeIndex) -> A_Err,
8158    >,
8159    pub AEGP_GetNewKeyframeValue: ::std::option::Option<
8160        unsafe extern "C" fn(
8161            aegp_plugin_id: AEGP_PluginID,
8162            streamH: AEGP_StreamRefH,
8163            key_index: AEGP_KeyframeIndex,
8164            valueP: *mut AEGP_StreamValue2,
8165        ) -> A_Err,
8166    >,
8167    pub AEGP_SetKeyframeValue: ::std::option::Option<
8168        unsafe extern "C" fn(
8169            streamH: AEGP_StreamRefH,
8170            key_index: AEGP_KeyframeIndex,
8171            valueP: *const AEGP_StreamValue2,
8172        ) -> A_Err,
8173    >,
8174    pub AEGP_GetStreamValueDimensionality: ::std::option::Option<
8175        unsafe extern "C" fn(streamH: AEGP_StreamRefH, value_dimPS: *mut A_short) -> A_Err,
8176    >,
8177    pub AEGP_GetStreamTemporalDimensionality: ::std::option::Option<
8178        unsafe extern "C" fn(streamH: AEGP_StreamRefH, temporal_dimPS: *mut A_short) -> A_Err,
8179    >,
8180    pub AEGP_GetNewKeyframeSpatialTangents: ::std::option::Option<
8181        unsafe extern "C" fn(
8182            aegp_plugin_id: AEGP_PluginID,
8183            streamH: AEGP_StreamRefH,
8184            key_index: AEGP_KeyframeIndex,
8185            in_tanP0: *mut AEGP_StreamValue2,
8186            out_tanP0: *mut AEGP_StreamValue2,
8187        ) -> A_Err,
8188    >,
8189    pub AEGP_SetKeyframeSpatialTangents: ::std::option::Option<
8190        unsafe extern "C" fn(
8191            streamH: AEGP_StreamRefH,
8192            key_index: AEGP_KeyframeIndex,
8193            in_tanP0: *const AEGP_StreamValue2,
8194            out_tanP0: *const AEGP_StreamValue2,
8195        ) -> A_Err,
8196    >,
8197    pub AEGP_GetKeyframeTemporalEase: ::std::option::Option<
8198        unsafe extern "C" fn(
8199            streamH: AEGP_StreamRefH,
8200            key_index: AEGP_KeyframeIndex,
8201            dimensionL: A_long,
8202            in_easeP0: *mut AEGP_KeyframeEase,
8203            out_easeP0: *mut AEGP_KeyframeEase,
8204        ) -> A_Err,
8205    >,
8206    pub AEGP_SetKeyframeTemporalEase: ::std::option::Option<
8207        unsafe extern "C" fn(
8208            streamH: AEGP_StreamRefH,
8209            key_index: AEGP_KeyframeIndex,
8210            dimensionL: A_long,
8211            in_easeP0: *const AEGP_KeyframeEase,
8212            out_easeP0: *const AEGP_KeyframeEase,
8213        ) -> A_Err,
8214    >,
8215    pub AEGP_GetKeyframeFlags: ::std::option::Option<
8216        unsafe extern "C" fn(
8217            streamH: AEGP_StreamRefH,
8218            key_index: AEGP_KeyframeIndex,
8219            flagsP: *mut AEGP_KeyframeFlags,
8220        ) -> A_Err,
8221    >,
8222    pub AEGP_SetKeyframeFlag: ::std::option::Option<
8223        unsafe extern "C" fn(
8224            streamH: AEGP_StreamRefH,
8225            key_index: AEGP_KeyframeIndex,
8226            flag: AEGP_KeyframeFlags,
8227            true_falseB: A_Boolean,
8228        ) -> A_Err,
8229    >,
8230    pub AEGP_GetKeyframeInterpolation: ::std::option::Option<
8231        unsafe extern "C" fn(
8232            streamH: AEGP_StreamRefH,
8233            key_index: AEGP_KeyframeIndex,
8234            in_interpP0: *mut AEGP_KeyframeInterpolationType,
8235            out_interpP0: *mut AEGP_KeyframeInterpolationType,
8236        ) -> A_Err,
8237    >,
8238    pub AEGP_SetKeyframeInterpolation: ::std::option::Option<
8239        unsafe extern "C" fn(
8240            streamH: AEGP_StreamRefH,
8241            key_index: AEGP_KeyframeIndex,
8242            in_interp: AEGP_KeyframeInterpolationType,
8243            out_interp: AEGP_KeyframeInterpolationType,
8244        ) -> A_Err,
8245    >,
8246    pub AEGP_StartAddKeyframes: ::std::option::Option<
8247        unsafe extern "C" fn(streamH: AEGP_StreamRefH, akPH: *mut AEGP_AddKeyframesInfoH) -> A_Err,
8248    >,
8249    pub AEGP_AddKeyframes: ::std::option::Option<
8250        unsafe extern "C" fn(
8251            akH: AEGP_AddKeyframesInfoH,
8252            time_mode: AEGP_LTimeMode,
8253            timePT: *const A_Time,
8254            key_indexPL: *mut A_long,
8255        ) -> A_Err,
8256    >,
8257    pub AEGP_SetAddKeyframe: ::std::option::Option<
8258        unsafe extern "C" fn(
8259            akH: AEGP_AddKeyframesInfoH,
8260            key_indexL: A_long,
8261            valueP: *const AEGP_StreamValue2,
8262        ) -> A_Err,
8263    >,
8264    pub AEGP_EndAddKeyframes: ::std::option::Option<
8265        unsafe extern "C" fn(addB: A_Boolean, akH: AEGP_AddKeyframesInfoH) -> A_Err,
8266    >,
8267    pub AEGP_GetKeyframeLabelColorIndex: ::std::option::Option<
8268        unsafe extern "C" fn(
8269            streamH: AEGP_StreamRefH,
8270            key_index: AEGP_KeyframeIndex,
8271            key_labelP: *mut A_long,
8272        ) -> A_Err,
8273    >,
8274    pub AEGP_SetKeyframeLabelColorIndex: ::std::option::Option<
8275        unsafe extern "C" fn(
8276            streamH: AEGP_StreamRefH,
8277            key_index: AEGP_KeyframeIndex,
8278            key_label: A_long,
8279        ) -> A_Err,
8280    >,
8281}
8282#[repr(C)]
8283#[derive(Debug, Copy, Clone)]
8284pub struct AEGP_TextDocumentSuite1 {
8285    pub AEGP_GetNewText: ::std::option::Option<
8286        unsafe extern "C" fn(
8287            aegp_plugin_id: AEGP_PluginID,
8288            text_documentH: AEGP_TextDocumentH,
8289            unicodePH: *mut AEGP_MemHandle,
8290        ) -> A_Err,
8291    >,
8292    pub AEGP_SetText: ::std::option::Option<
8293        unsafe extern "C" fn(
8294            text_documentH: AEGP_TextDocumentH,
8295            unicodePS: *const A_u_short,
8296            lengthL: A_long,
8297        ) -> A_Err,
8298    >,
8299}
8300pub const AEGP_MarkerString_NONE: _bindgen_ty_135 = 0;
8301pub const AEGP_MarkerString_COMMENT: _bindgen_ty_135 = 1;
8302pub const AEGP_MarkerString_CHAPTER: _bindgen_ty_135 = 2;
8303pub const AEGP_MarkerString_URL: _bindgen_ty_135 = 3;
8304pub const AEGP_MarkerString_FRAME_TARGET: _bindgen_ty_135 = 4;
8305pub const AEGP_MarkerString_CUE_POINT_NAME: _bindgen_ty_135 = 5;
8306pub const AEGP_MarkerString_NUMTYPES: _bindgen_ty_135 = 6;
8307pub type _bindgen_ty_135 = ::std::os::raw::c_uint;
8308pub type AEGP_MarkerStringType = A_long;
8309pub const AEGP_MarkerFlag_NONE: _bindgen_ty_136 = 0;
8310pub const AEGP_MarkerFlag_NAVIGATION: _bindgen_ty_136 = 1;
8311pub const AEGP_MarkerFlag_PROTECT_REGION: _bindgen_ty_136 = 2;
8312pub type _bindgen_ty_136 = ::std::os::raw::c_uint;
8313pub type AEGP_MarkerFlagType = A_long;
8314#[repr(C)]
8315#[derive(Debug, Copy, Clone)]
8316pub struct AEGP_MarkerSuite3 {
8317    pub AEGP_NewMarker:
8318        ::std::option::Option<unsafe extern "C" fn(markerPP: *mut AEGP_MarkerValP) -> A_Err>,
8319    pub AEGP_DisposeMarker:
8320        ::std::option::Option<unsafe extern "C" fn(markerP: AEGP_MarkerValP) -> A_Err>,
8321    pub AEGP_DuplicateMarker: ::std::option::Option<
8322        unsafe extern "C" fn(markerP: AEGP_MarkerValP, new_markerP: *mut AEGP_MarkerValP) -> A_Err,
8323    >,
8324    pub AEGP_SetMarkerFlag: ::std::option::Option<
8325        unsafe extern "C" fn(
8326            markerP: AEGP_MarkerValP,
8327            flagType: AEGP_MarkerFlagType,
8328            valueB: A_Boolean,
8329        ) -> A_Err,
8330    >,
8331    pub AEGP_GetMarkerFlag: ::std::option::Option<
8332        unsafe extern "C" fn(
8333            markerP: AEGP_ConstMarkerValP,
8334            flagType: AEGP_MarkerFlagType,
8335            valueBP: *mut A_Boolean,
8336        ) -> A_Err,
8337    >,
8338    pub AEGP_GetMarkerString: ::std::option::Option<
8339        unsafe extern "C" fn(
8340            aegp_plugin_id: AEGP_PluginID,
8341            markerP: AEGP_ConstMarkerValP,
8342            strType: AEGP_MarkerStringType,
8343            unicodePH: *mut AEGP_MemHandle,
8344        ) -> A_Err,
8345    >,
8346    pub AEGP_SetMarkerString: ::std::option::Option<
8347        unsafe extern "C" fn(
8348            markerP: AEGP_MarkerValP,
8349            strType: AEGP_MarkerStringType,
8350            unicodeP: *const A_u_short,
8351            lengthL: A_long,
8352        ) -> A_Err,
8353    >,
8354    pub AEGP_CountCuePointParams: ::std::option::Option<
8355        unsafe extern "C" fn(markerP: AEGP_ConstMarkerValP, paramsLP: *mut A_long) -> A_Err,
8356    >,
8357    pub AEGP_GetIndCuePointParam: ::std::option::Option<
8358        unsafe extern "C" fn(
8359            aegp_plugin_id: AEGP_PluginID,
8360            markerP: AEGP_ConstMarkerValP,
8361            param_indexL: A_long,
8362            unicodeKeyPH: *mut AEGP_MemHandle,
8363            unicodeValuePH: *mut AEGP_MemHandle,
8364        ) -> A_Err,
8365    >,
8366    pub AEGP_SetIndCuePointParam: ::std::option::Option<
8367        unsafe extern "C" fn(
8368            markerP: AEGP_MarkerValP,
8369            param_indexL: A_long,
8370            unicodeKeyP: *const A_u_short,
8371            key_lengthL: A_long,
8372            unicodeValueP: *const A_u_short,
8373            value_lengthL: A_long,
8374        ) -> A_Err,
8375    >,
8376    pub AEGP_InsertCuePointParam: ::std::option::Option<
8377        unsafe extern "C" fn(markerP: AEGP_MarkerValP, param_indexL: A_long) -> A_Err,
8378    >,
8379    pub AEGP_DeleteIndCuePointParam: ::std::option::Option<
8380        unsafe extern "C" fn(markerP: AEGP_MarkerValP, param_indexL: A_long) -> A_Err,
8381    >,
8382    pub AEGP_SetMarkerDuration: ::std::option::Option<
8383        unsafe extern "C" fn(markerP: AEGP_MarkerValP, durationPT: *const A_Time) -> A_Err,
8384    >,
8385    pub AEGP_GetMarkerDuration: ::std::option::Option<
8386        unsafe extern "C" fn(markerP: AEGP_ConstMarkerValP, durationPT: *mut A_Time) -> A_Err,
8387    >,
8388    pub AEGP_SetMarkerLabel: ::std::option::Option<
8389        unsafe extern "C" fn(markerP: AEGP_MarkerValP, value: A_long) -> A_Err,
8390    >,
8391    pub AEGP_GetMarkerLabel: ::std::option::Option<
8392        unsafe extern "C" fn(markerP: AEGP_ConstMarkerValP, valueP: *mut A_long) -> A_Err,
8393    >,
8394}
8395#[repr(C)]
8396#[derive(Debug, Copy, Clone)]
8397pub struct AEGP_TextLayerSuite1 {
8398    pub AEGP_GetNewTextOutlines: ::std::option::Option<
8399        unsafe extern "C" fn(
8400            layerH: AEGP_LayerH,
8401            layer_timePT: *const A_Time,
8402            outlinesPH: *mut AEGP_TextOutlinesH,
8403        ) -> A_Err,
8404    >,
8405    pub AEGP_DisposeTextOutlines:
8406        ::std::option::Option<unsafe extern "C" fn(outlinesH: AEGP_TextOutlinesH) -> A_Err>,
8407    pub AEGP_GetNumTextOutlines: ::std::option::Option<
8408        unsafe extern "C" fn(outlinesH: AEGP_TextOutlinesH, num_outlinesPL: *mut A_long) -> A_Err,
8409    >,
8410    pub AEGP_GetIndexedTextOutline: ::std::option::Option<
8411        unsafe extern "C" fn(
8412            outlinesH: AEGP_TextOutlinesH,
8413            path_indexL: A_long,
8414            pathPP: *mut PF_PathOutlinePtr,
8415        ) -> A_Err,
8416    >,
8417}
8418pub type AEGP_InstalledEffectKey = A_long;
8419pub const AEGP_EffectFlags_NONE: _bindgen_ty_137 = 0;
8420pub const AEGP_EffectFlags_ACTIVE: _bindgen_ty_137 = 1;
8421pub const AEGP_EffectFlags_AUDIO_ONLY: _bindgen_ty_137 = 2;
8422pub const AEGP_EffectFlags_AUDIO_TOO: _bindgen_ty_137 = 4;
8423pub const AEGP_EffectFlags_MISSING: _bindgen_ty_137 = 8;
8424pub type _bindgen_ty_137 = ::std::os::raw::c_uint;
8425pub type AEGP_EffectFlags = A_long;
8426pub type AEGP_EffectIndex = A_long;
8427#[repr(C)]
8428#[derive(Debug, Copy, Clone)]
8429pub struct AEGP_EffectSuite5 {
8430    pub AEGP_GetLayerNumEffects: ::std::option::Option<
8431        unsafe extern "C" fn(layerH: AEGP_LayerH, num_effectsPL: *mut A_long) -> A_Err,
8432    >,
8433    pub AEGP_GetLayerEffectByIndex: ::std::option::Option<
8434        unsafe extern "C" fn(
8435            aegp_plugin_id: AEGP_PluginID,
8436            layerH: AEGP_LayerH,
8437            layer_effect_indexL: AEGP_EffectIndex,
8438            effectPH: *mut AEGP_EffectRefH,
8439        ) -> A_Err,
8440    >,
8441    pub AEGP_GetInstalledKeyFromLayerEffect: ::std::option::Option<
8442        unsafe extern "C" fn(
8443            effect_refH: AEGP_EffectRefH,
8444            installed_effect_keyP: *mut AEGP_InstalledEffectKey,
8445        ) -> A_Err,
8446    >,
8447    pub AEGP_GetEffectParamUnionByIndex: ::std::option::Option<
8448        unsafe extern "C" fn(
8449            aegp_plugin_id: AEGP_PluginID,
8450            effect_refH: AEGP_EffectRefH,
8451            param_index: PF_ParamIndex,
8452            param_typeP: *mut PF_ParamType,
8453            uP0: *mut PF_ParamDefUnion,
8454        ) -> A_Err,
8455    >,
8456    pub AEGP_GetEffectFlags: ::std::option::Option<
8457        unsafe extern "C" fn(
8458            effect_refH: AEGP_EffectRefH,
8459            effect_flagsP: *mut AEGP_EffectFlags,
8460        ) -> A_Err,
8461    >,
8462    pub AEGP_SetEffectFlags: ::std::option::Option<
8463        unsafe extern "C" fn(
8464            effect_refH: AEGP_EffectRefH,
8465            effect_flags_set_mask: AEGP_EffectFlags,
8466            effect_flags: AEGP_EffectFlags,
8467        ) -> A_Err,
8468    >,
8469    pub AEGP_ReorderEffect: ::std::option::Option<
8470        unsafe extern "C" fn(effect_refH: AEGP_EffectRefH, effect_indexL: A_long) -> A_Err,
8471    >,
8472    #[doc = " new command parameter addded. To get old behaviour pass in PF_Cmd_COMPLETELY_GENERAL for effect_command"]
8473    pub AEGP_EffectCallGeneric: ::std::option::Option<
8474        unsafe extern "C" fn(
8475            aegp_plugin_id: AEGP_PluginID,
8476            effect_refH: AEGP_EffectRefH,
8477            timePT: *const A_Time,
8478            effect_cmd: PF_Cmd,
8479            effect_extraPV: *mut ::std::os::raw::c_void,
8480        ) -> A_Err,
8481    >,
8482    pub AEGP_DisposeEffect:
8483        ::std::option::Option<unsafe extern "C" fn(effect_refH: AEGP_EffectRefH) -> A_Err>,
8484    pub AEGP_ApplyEffect: ::std::option::Option<
8485        unsafe extern "C" fn(
8486            aegp_plugin_id: AEGP_PluginID,
8487            layerH: AEGP_LayerH,
8488            installed_effect_key: AEGP_InstalledEffectKey,
8489            effect_refPH: *mut AEGP_EffectRefH,
8490        ) -> A_Err,
8491    >,
8492    pub AEGP_DeleteLayerEffect:
8493        ::std::option::Option<unsafe extern "C" fn(effect_refH: AEGP_EffectRefH) -> A_Err>,
8494    pub AEGP_GetNumInstalledEffects:
8495        ::std::option::Option<unsafe extern "C" fn(num_installed_effectsPL: *mut A_long) -> A_Err>,
8496    pub AEGP_GetNextInstalledEffect: ::std::option::Option<
8497        unsafe extern "C" fn(
8498            installed_effect_key: AEGP_InstalledEffectKey,
8499            next_effectPH: *mut AEGP_InstalledEffectKey,
8500        ) -> A_Err,
8501    >,
8502    pub AEGP_GetEffectName: ::std::option::Option<
8503        unsafe extern "C" fn(
8504            installed_effect_key: AEGP_InstalledEffectKey,
8505            nameZ: *mut A_char,
8506        ) -> A_Err,
8507    >,
8508    pub AEGP_GetEffectMatchName: ::std::option::Option<
8509        unsafe extern "C" fn(
8510            installed_effect_key: AEGP_InstalledEffectKey,
8511            utf8_match_nameZ: *mut A_char,
8512        ) -> A_Err,
8513    >,
8514    pub AEGP_GetEffectCategory: ::std::option::Option<
8515        unsafe extern "C" fn(
8516            installed_effect_key: AEGP_InstalledEffectKey,
8517            categoryZ: *mut A_char,
8518        ) -> A_Err,
8519    >,
8520    pub AEGP_DuplicateEffect: ::std::option::Option<
8521        unsafe extern "C" fn(
8522            original_effect_refH: AEGP_EffectRefH,
8523            duplicate_effect_refPH: *mut AEGP_EffectRefH,
8524        ) -> A_Err,
8525    >,
8526    #[doc = " new in AE 13.0: effect masks"]
8527    pub AEGP_NumEffectMask: ::std::option::Option<
8528        unsafe extern "C" fn(effect_refH: AEGP_EffectRefH, num_masksPL: *mut A_u_long) -> A_Err,
8529    >,
8530    pub AEGP_GetEffectMaskID: ::std::option::Option<
8531        unsafe extern "C" fn(
8532            effect_refH: AEGP_EffectRefH,
8533            mask_indexL: A_u_long,
8534            id_valP: *mut AEGP_MaskIDVal,
8535        ) -> A_Err,
8536    >,
8537    pub AEGP_AddEffectMask: ::std::option::Option<
8538        unsafe extern "C" fn(
8539            effect_refH: AEGP_EffectRefH,
8540            id_val: AEGP_MaskIDVal,
8541            streamPH0: *mut AEGP_StreamRefH,
8542        ) -> A_Err,
8543    >,
8544    pub AEGP_RemoveEffectMask: ::std::option::Option<
8545        unsafe extern "C" fn(effect_refH: AEGP_EffectRefH, id_val: AEGP_MaskIDVal) -> A_Err,
8546    >,
8547    pub AEGP_SetEffectMask: ::std::option::Option<
8548        unsafe extern "C" fn(
8549            effect_refH: AEGP_EffectRefH,
8550            mask_indexL: A_u_long,
8551            id_val: AEGP_MaskIDVal,
8552            streamPH0: *mut AEGP_StreamRefH,
8553        ) -> A_Err,
8554    >,
8555    pub AEGP_GetIsInternalEffect: ::std::option::Option<
8556        unsafe extern "C" fn(
8557            installed_effect_key: AEGP_InstalledEffectKey,
8558            isInternal: *mut A_Boolean,
8559        ) -> A_Err,
8560    >,
8561}
8562pub type AEGP_MaskIndex = A_long;
8563pub const AEGP_MaskMBlur_SAME_AS_LAYER: _bindgen_ty_138 = 0;
8564pub const AEGP_MaskMBlur_OFF: _bindgen_ty_138 = 1;
8565pub const AEGP_MaskMBlur_ON: _bindgen_ty_138 = 2;
8566pub type _bindgen_ty_138 = ::std::os::raw::c_uint;
8567pub type AEGP_MaskMBlur = A_u_char;
8568pub const AEGP_MaskFeatherFalloff_SMOOTH: _bindgen_ty_139 = 0;
8569pub const AEGP_MaskFeatherFalloff_LINEAR: _bindgen_ty_139 = 1;
8570pub type _bindgen_ty_139 = ::std::os::raw::c_uint;
8571pub type AEGP_MaskFeatherFalloff = A_u_char;
8572pub const AEGP_MaskFeatherInterp_NORMAL: _bindgen_ty_140 = 0;
8573pub const AEGP_MaskFeatherInterp_HOLD_CW: _bindgen_ty_140 = 1;
8574pub type _bindgen_ty_140 = ::std::os::raw::c_uint;
8575pub type AEGP_MaskFeatherInterp = A_u_char;
8576pub const AEGP_MaskFeatherType_OUTER: _bindgen_ty_141 = 0;
8577pub const AEGP_MaskFeatherType_INNER: _bindgen_ty_141 = 1;
8578pub type _bindgen_ty_141 = ::std::os::raw::c_uint;
8579pub type AEGP_MaskFeatherType = A_u_char;
8580#[repr(C)]
8581#[derive(Debug, Copy, Clone)]
8582pub struct AEGP_MaskSuite6 {
8583    pub AEGP_GetLayerNumMasks: ::std::option::Option<
8584        unsafe extern "C" fn(aegp_layerH: AEGP_LayerH, num_masksPL: *mut A_long) -> A_Err,
8585    >,
8586    pub AEGP_GetLayerMaskByIndex: ::std::option::Option<
8587        unsafe extern "C" fn(
8588            aegp_layerH: AEGP_LayerH,
8589            mask_indexL: AEGP_MaskIndex,
8590            maskPH: *mut AEGP_MaskRefH,
8591        ) -> A_Err,
8592    >,
8593    pub AEGP_DisposeMask:
8594        ::std::option::Option<unsafe extern "C" fn(mask_refH: AEGP_MaskRefH) -> A_Err>,
8595    pub AEGP_GetMaskInvert: ::std::option::Option<
8596        unsafe extern "C" fn(mask_refH: AEGP_MaskRefH, invertPB: *mut A_Boolean) -> A_Err,
8597    >,
8598    pub AEGP_SetMaskInvert: ::std::option::Option<
8599        unsafe extern "C" fn(mask_refH: AEGP_MaskRefH, invertB: A_Boolean) -> A_Err,
8600    >,
8601    pub AEGP_GetMaskMode: ::std::option::Option<
8602        unsafe extern "C" fn(mask_refH: AEGP_MaskRefH, modeP: *mut PF_MaskMode) -> A_Err,
8603    >,
8604    pub AEGP_SetMaskMode: ::std::option::Option<
8605        unsafe extern "C" fn(maskH: AEGP_MaskRefH, mode: PF_MaskMode) -> A_Err,
8606    >,
8607    pub AEGP_GetMaskMotionBlurState: ::std::option::Option<
8608        unsafe extern "C" fn(mask_refH: AEGP_MaskRefH, blur_stateP: *mut AEGP_MaskMBlur) -> A_Err,
8609    >,
8610    pub AEGP_SetMaskMotionBlurState: ::std::option::Option<
8611        unsafe extern "C" fn(mask_refH: AEGP_MaskRefH, blur_state: AEGP_MaskMBlur) -> A_Err,
8612    >,
8613    pub AEGP_GetMaskFeatherFalloff: ::std::option::Option<
8614        unsafe extern "C" fn(
8615            mask_refH: AEGP_MaskRefH,
8616            feather_falloffP: *mut AEGP_MaskFeatherFalloff,
8617        ) -> A_Err,
8618    >,
8619    pub AEGP_SetMaskFeatherFalloff: ::std::option::Option<
8620        unsafe extern "C" fn(
8621            mask_refH: AEGP_MaskRefH,
8622            feather_falloffP: AEGP_MaskFeatherFalloff,
8623        ) -> A_Err,
8624    >,
8625    pub AEGP_GetMaskID: ::std::option::Option<
8626        unsafe extern "C" fn(mask_refH: AEGP_MaskRefH, id_valP: *mut AEGP_MaskIDVal) -> A_Err,
8627    >,
8628    pub AEGP_CreateNewMask: ::std::option::Option<
8629        unsafe extern "C" fn(
8630            layerH: AEGP_LayerH,
8631            mask_refPH: *mut AEGP_MaskRefH,
8632            mask_indexPL0: *mut A_long,
8633        ) -> A_Err,
8634    >,
8635    pub AEGP_DeleteMaskFromLayer:
8636        ::std::option::Option<unsafe extern "C" fn(mask_refH: AEGP_MaskRefH) -> A_Err>,
8637    pub AEGP_GetMaskColor: ::std::option::Option<
8638        unsafe extern "C" fn(mask_refH: AEGP_MaskRefH, colorP: *mut AEGP_ColorVal) -> A_Err,
8639    >,
8640    pub AEGP_SetMaskColor: ::std::option::Option<
8641        unsafe extern "C" fn(mask_refH: AEGP_MaskRefH, colorP: *const AEGP_ColorVal) -> A_Err,
8642    >,
8643    pub AEGP_GetMaskLockState: ::std::option::Option<
8644        unsafe extern "C" fn(mask_refH: AEGP_MaskRefH, is_lockedPB: *mut A_Boolean) -> A_Err,
8645    >,
8646    pub AEGP_SetMaskLockState: ::std::option::Option<
8647        unsafe extern "C" fn(mask_refH: AEGP_MaskRefH, lockB: A_Boolean) -> A_Err,
8648    >,
8649    pub AEGP_GetMaskIsRotoBezier: ::std::option::Option<
8650        unsafe extern "C" fn(mask_refH: AEGP_MaskRefH, is_roto_bezierPB: *mut A_Boolean) -> A_Err,
8651    >,
8652    pub AEGP_SetMaskIsRotoBezier: ::std::option::Option<
8653        unsafe extern "C" fn(mask_refH: AEGP_MaskRefH, is_roto_bezierB: A_Boolean) -> A_Err,
8654    >,
8655    pub AEGP_DuplicateMask: ::std::option::Option<
8656        unsafe extern "C" fn(
8657            orig_mask_refH: AEGP_MaskRefH,
8658            duplicate_mask_refPH: *mut AEGP_MaskRefH,
8659        ) -> A_Err,
8660    >,
8661}
8662#[repr(C)]
8663#[derive(Debug, Copy, Clone)]
8664pub struct AEGP_MaskFeather {
8665    pub segment: A_long,
8666    pub segment_sF: PF_FpLong,
8667    pub radiusF: PF_FpLong,
8668    pub ui_corner_angleF: PF_FpShort,
8669    pub tensionF: PF_FpShort,
8670    pub interp: AEGP_MaskFeatherInterp,
8671    pub type_: AEGP_MaskFeatherType,
8672}
8673pub type AEGP_FeatherIndex = A_long;
8674pub type AEGP_MaskVertex = PF_PathVertex;
8675pub type AEGP_VertexIndex = A_long;
8676#[repr(C)]
8677#[derive(Debug, Copy, Clone)]
8678pub struct AEGP_MaskOutlineSuite3 {
8679    pub AEGP_IsMaskOutlineOpen: ::std::option::Option<
8680        unsafe extern "C" fn(mask_outlineH: AEGP_MaskOutlineValH, openPB: *mut A_Boolean) -> A_Err,
8681    >,
8682    pub AEGP_SetMaskOutlineOpen: ::std::option::Option<
8683        unsafe extern "C" fn(mask_outlineH: AEGP_MaskOutlineValH, openB: A_Boolean) -> A_Err,
8684    >,
8685    pub AEGP_GetMaskOutlineNumSegments: ::std::option::Option<
8686        unsafe extern "C" fn(
8687            mask_outlineH: AEGP_MaskOutlineValH,
8688            num_segmentsPL: *mut A_long,
8689        ) -> A_Err,
8690    >,
8691    pub AEGP_GetMaskOutlineVertexInfo: ::std::option::Option<
8692        unsafe extern "C" fn(
8693            mask_outlineH: AEGP_MaskOutlineValH,
8694            which_pointL: AEGP_VertexIndex,
8695            vertexP: *mut AEGP_MaskVertex,
8696        ) -> A_Err,
8697    >,
8698    pub AEGP_SetMaskOutlineVertexInfo: ::std::option::Option<
8699        unsafe extern "C" fn(
8700            mask_outlineH: AEGP_MaskOutlineValH,
8701            which_pointL: AEGP_VertexIndex,
8702            vertexP: *const AEGP_MaskVertex,
8703        ) -> A_Err,
8704    >,
8705    pub AEGP_CreateVertex: ::std::option::Option<
8706        unsafe extern "C" fn(
8707            mask_outlineH: AEGP_MaskOutlineValH,
8708            insert_position: AEGP_VertexIndex,
8709        ) -> A_Err,
8710    >,
8711    pub AEGP_DeleteVertex: ::std::option::Option<
8712        unsafe extern "C" fn(mask_outlineH: AEGP_MaskOutlineValH, index: AEGP_VertexIndex) -> A_Err,
8713    >,
8714    pub AEGP_GetMaskOutlineNumFeathers: ::std::option::Option<
8715        unsafe extern "C" fn(
8716            mask_outlineH: AEGP_MaskOutlineValH,
8717            num_feathersPL: *mut A_long,
8718        ) -> A_Err,
8719    >,
8720    pub AEGP_GetMaskOutlineFeatherInfo: ::std::option::Option<
8721        unsafe extern "C" fn(
8722            mask_outlineH: AEGP_MaskOutlineValH,
8723            which_featherL: AEGP_FeatherIndex,
8724            featherP: *mut AEGP_MaskFeather,
8725        ) -> A_Err,
8726    >,
8727    pub AEGP_SetMaskOutlineFeatherInfo: ::std::option::Option<
8728        unsafe extern "C" fn(
8729            mask_outlineH: AEGP_MaskOutlineValH,
8730            which_featherL: AEGP_VertexIndex,
8731            featherP: *const AEGP_MaskFeather,
8732        ) -> A_Err,
8733    >,
8734    pub AEGP_CreateMaskOutlineFeather: ::std::option::Option<
8735        unsafe extern "C" fn(
8736            mask_outlineH: AEGP_MaskOutlineValH,
8737            featherP0: *const AEGP_MaskFeather,
8738            insert_positionP: *mut AEGP_FeatherIndex,
8739        ) -> A_Err,
8740    >,
8741    pub AEGP_DeleteMaskOutlineFeather: ::std::option::Option<
8742        unsafe extern "C" fn(
8743            mask_outlineH: AEGP_MaskOutlineValH,
8744            index: AEGP_FeatherIndex,
8745        ) -> A_Err,
8746    >,
8747}
8748pub type AEGP_InterlaceLabel = FIEL_Label;
8749pub const AEGP_AlphaPremul: _bindgen_ty_142 = 1;
8750pub const AEGP_AlphaInverted: _bindgen_ty_142 = 2;
8751pub const AEGP_AlphaIgnore: _bindgen_ty_142 = 4;
8752pub type _bindgen_ty_142 = ::std::os::raw::c_uint;
8753pub type AEGP_AlphaFlags = A_u_long;
8754#[repr(C)]
8755#[derive(Debug, Copy, Clone)]
8756pub struct AEGP_AlphaLabel {
8757    pub flags: AEGP_AlphaFlags,
8758    pub redCu: A_u_char,
8759    pub greenCu: A_u_char,
8760    pub blueCu: A_u_char,
8761}
8762pub const AEGP_PulldownPhase_NO_PULLDOWN: _bindgen_ty_143 = 0;
8763pub const AEGP_PulldownPhase_WSSWW: _bindgen_ty_143 = 1;
8764pub const AEGP_PulldownPhase_SSWWW: _bindgen_ty_143 = 2;
8765pub const AEGP_PulldownPhase_SWWWS: _bindgen_ty_143 = 3;
8766pub const AEGP_PulldownPhase_WWWSS: _bindgen_ty_143 = 4;
8767pub const AEGP_PulldownPhase_WWSSW: _bindgen_ty_143 = 5;
8768pub const AEGP_PulldownPhase_WWWSW: _bindgen_ty_143 = 6;
8769pub const AEGP_PulldownPhase_WWSWW: _bindgen_ty_143 = 7;
8770pub const AEGP_PulldownPhase_WSWWW: _bindgen_ty_143 = 8;
8771pub const AEGP_PulldownPhase_SWWWW: _bindgen_ty_143 = 9;
8772pub const AEGP_PulldownPhase_WWWWS: _bindgen_ty_143 = 10;
8773pub type _bindgen_ty_143 = ::std::os::raw::c_uint;
8774pub type AEGP_PulldownPhase = A_long;
8775#[repr(C)]
8776#[derive(Debug, Copy, Clone)]
8777pub struct AEGP_LoopBehavior {
8778    pub loops: A_long,
8779    pub reserved: A_long,
8780}
8781#[repr(C)]
8782#[derive(Debug, Copy, Clone)]
8783pub struct AEGP_FootageInterp {
8784    pub il: AEGP_InterlaceLabel,
8785    pub al: AEGP_AlphaLabel,
8786    pub pd: AEGP_PulldownPhase,
8787    pub loop_: AEGP_LoopBehavior,
8788    pub pix_aspect_ratio: A_Ratio,
8789    pub native_fpsF: A_FpLong,
8790    pub conform_fpsF: A_FpLong,
8791    pub depthL: A_long,
8792    pub motion_dB: A_Boolean,
8793}
8794pub const AEGP_LayerDrawStyle_LAYER_BOUNDS: _bindgen_ty_144 = 0;
8795pub const AEGP_LayerDrawStyle_DOCUMENT_BOUNDS: _bindgen_ty_144 = 1;
8796pub type _bindgen_ty_144 = ::std::os::raw::c_uint;
8797pub type AEGP_LayerDrawStyle = A_long;
8798#[repr(C)]
8799#[derive(Debug, Copy, Clone)]
8800pub struct AEGP_FootageLayerKey {
8801    pub layer_idL: A_long,
8802    pub layer_indexL: A_long,
8803    pub nameAC: [A_char; 64usize],
8804    pub layer_draw_style: AEGP_LayerDrawStyle,
8805}
8806#[repr(C)]
8807#[derive(Debug, Copy, Clone)]
8808pub struct AEGP_FileSequenceImportOptions {
8809    pub all_in_folderB: A_Boolean,
8810    pub force_alphabeticalB: A_Boolean,
8811    pub start_frameL: A_long,
8812    pub end_frameL: A_long,
8813}
8814pub const AEGP_FootageSignature_NONE: _bindgen_ty_145 = -1;
8815pub const AEGP_FootageSignature_MISSING: _bindgen_ty_145 = 0;
8816pub const AEGP_FootageSignature_SOLID: _bindgen_ty_145 = 1399811177;
8817pub type _bindgen_ty_145 = ::std::os::raw::c_int;
8818pub type AEGP_FootageSignature = A_long;
8819pub const AEGP_InterpretationStyle_NO_DIALOG_GUESS: _bindgen_ty_146 = 0;
8820pub const AEGP_InterpretationStyle_DIALOG_OK: _bindgen_ty_146 = 1;
8821pub const AEGP_InterpretationStyle_NO_DIALOG_NO_GUESS: _bindgen_ty_146 = 2;
8822pub type _bindgen_ty_146 = ::std::os::raw::c_uint;
8823pub type AEGP_InterpretationStyle = A_u_char;
8824#[repr(C)]
8825#[derive(Debug, Copy, Clone)]
8826pub struct AEGP_FootageSuite5 {
8827    pub AEGP_GetMainFootageFromItem: ::std::option::Option<
8828        unsafe extern "C" fn(itemH: AEGP_ItemH, footagePH: *mut AEGP_FootageH) -> A_Err,
8829    >,
8830    pub AEGP_GetProxyFootageFromItem: ::std::option::Option<
8831        unsafe extern "C" fn(itemH: AEGP_ItemH, proxy_footagePH: *mut AEGP_FootageH) -> A_Err,
8832    >,
8833    pub AEGP_GetFootageNumFiles: ::std::option::Option<
8834        unsafe extern "C" fn(
8835            footageH: AEGP_FootageH,
8836            num_main_filesPL0: *mut A_long,
8837            files_per_framePL0: *mut A_long,
8838        ) -> A_Err,
8839    >,
8840    pub AEGP_GetFootagePath: ::std::option::Option<
8841        unsafe extern "C" fn(
8842            footageH: AEGP_FootageH,
8843            frame_numL: A_long,
8844            file_indexL: A_long,
8845            unicode_pathPH: *mut AEGP_MemHandle,
8846        ) -> A_Err,
8847    >,
8848    pub AEGP_GetFootageSignature: ::std::option::Option<
8849        unsafe extern "C" fn(footageH: AEGP_FootageH, sigP: *mut AEGP_FootageSignature) -> A_Err,
8850    >,
8851    pub AEGP_NewFootage: ::std::option::Option<
8852        unsafe extern "C" fn(
8853            aegp_plugin_id: AEGP_PluginID,
8854            pathZ: *const A_UTF16Char,
8855            layer_infoP0: *const AEGP_FootageLayerKey,
8856            sequence_optionsP0: *const AEGP_FileSequenceImportOptions,
8857            interp_style: AEGP_InterpretationStyle,
8858            reserved: *mut ::std::os::raw::c_void,
8859            footagePH: *mut AEGP_FootageH,
8860        ) -> A_Err,
8861    >,
8862    pub AEGP_AddFootageToProject: ::std::option::Option<
8863        unsafe extern "C" fn(
8864            footageH: AEGP_FootageH,
8865            folderH: AEGP_ItemH,
8866            added_itemPH0: *mut AEGP_ItemH,
8867        ) -> A_Err,
8868    >,
8869    pub AEGP_SetItemProxyFootage: ::std::option::Option<
8870        unsafe extern "C" fn(footageH: AEGP_FootageH, itemH: AEGP_ItemH) -> A_Err,
8871    >,
8872    pub AEGP_ReplaceItemMainFootage: ::std::option::Option<
8873        unsafe extern "C" fn(footageH: AEGP_FootageH, itemH: AEGP_ItemH) -> A_Err,
8874    >,
8875    pub AEGP_DisposeFootage:
8876        ::std::option::Option<unsafe extern "C" fn(footageH: AEGP_FootageH) -> A_Err>,
8877    pub AEGP_GetFootageInterpretation: ::std::option::Option<
8878        unsafe extern "C" fn(
8879            itemH: AEGP_ItemH,
8880            proxyB: A_Boolean,
8881            interpP: *mut AEGP_FootageInterp,
8882        ) -> A_Err,
8883    >,
8884    pub AEGP_SetFootageInterpretation: ::std::option::Option<
8885        unsafe extern "C" fn(
8886            itemH: AEGP_ItemH,
8887            proxyB: A_Boolean,
8888            interpP: *const AEGP_FootageInterp,
8889        ) -> A_Err,
8890    >,
8891    pub AEGP_GetFootageLayerKey: ::std::option::Option<
8892        unsafe extern "C" fn(
8893            footageH: AEGP_FootageH,
8894            layerKeyP: *mut AEGP_FootageLayerKey,
8895        ) -> A_Err,
8896    >,
8897    pub AEGP_NewPlaceholderFootage: ::std::option::Option<
8898        unsafe extern "C" fn(
8899            plugin_id: AEGP_PluginID,
8900            nameZ: *const A_char,
8901            width: A_long,
8902            height: A_long,
8903            durationPT: *const A_Time,
8904            footagePH: *mut AEGP_FootageH,
8905        ) -> A_Err,
8906    >,
8907    pub AEGP_NewPlaceholderFootageWithPath: ::std::option::Option<
8908        unsafe extern "C" fn(
8909            plugin_id: AEGP_PluginID,
8910            pathZ: *const A_UTF16Char,
8911            path_platform: AEGP_Platform,
8912            file_type: AEIO_FileType,
8913            widthL: A_long,
8914            heightL: A_long,
8915            durationPT: *const A_Time,
8916            footagePH: *mut AEGP_FootageH,
8917        ) -> A_Err,
8918    >,
8919    pub AEGP_NewSolidFootage: ::std::option::Option<
8920        unsafe extern "C" fn(
8921            nameZ: *const A_char,
8922            width: A_long,
8923            height: A_long,
8924            colorP: *const AEGP_ColorVal,
8925            footagePH: *mut AEGP_FootageH,
8926        ) -> A_Err,
8927    >,
8928    pub AEGP_GetSolidFootageColor: ::std::option::Option<
8929        unsafe extern "C" fn(
8930            itemH: AEGP_ItemH,
8931            proxyB: A_Boolean,
8932            colorP: *mut AEGP_ColorVal,
8933        ) -> A_Err,
8934    >,
8935    pub AEGP_SetSolidFootageColor: ::std::option::Option<
8936        unsafe extern "C" fn(
8937            itemH: AEGP_ItemH,
8938            proxyB: A_Boolean,
8939            colorP: *const AEGP_ColorVal,
8940        ) -> A_Err,
8941    >,
8942    pub AEGP_SetSolidFootageDimensions: ::std::option::Option<
8943        unsafe extern "C" fn(
8944            itemH: AEGP_ItemH,
8945            proxyB: A_Boolean,
8946            widthL: A_long,
8947            heightL: A_long,
8948        ) -> A_Err,
8949    >,
8950    pub AEGP_GetFootageSoundDataFormat: ::std::option::Option<
8951        unsafe extern "C" fn(
8952            footageH: AEGP_FootageH,
8953            sound_formatP: *mut AEGP_SoundDataFormat,
8954        ) -> A_Err,
8955    >,
8956    pub AEGP_GetFootageSequenceImportOptions: ::std::option::Option<
8957        unsafe extern "C" fn(
8958            footageH: AEGP_FootageH,
8959            optionsP: *mut AEGP_FileSequenceImportOptions,
8960        ) -> A_Err,
8961    >,
8962}
8963pub type AEGP_Command = A_long;
8964pub const AEGP_WindType_NONE: _bindgen_ty_147 = 0;
8965pub const AEGP_WindType_PROJECT: _bindgen_ty_147 = 1;
8966pub const AEGP_WindType_COMP: _bindgen_ty_147 = 2;
8967pub const AEGP_WindType_TIME_LAYOUT: _bindgen_ty_147 = 3;
8968pub const AEGP_WindType_LAYER: _bindgen_ty_147 = 4;
8969pub const AEGP_WindType_FOOTAGE: _bindgen_ty_147 = 5;
8970pub const AEGP_WindType_RENDER_QUEUE: _bindgen_ty_147 = 6;
8971pub const AEGP_WindType_QT: _bindgen_ty_147 = 7;
8972pub const AEGP_WindType_DIALOG: _bindgen_ty_147 = 8;
8973pub const AEGP_WindType_FLOWCHART: _bindgen_ty_147 = 9;
8974pub const AEGP_WindType_EFFECT: _bindgen_ty_147 = 10;
8975pub const AEGP_WindType_OTHER: _bindgen_ty_147 = 11;
8976pub type _bindgen_ty_147 = ::std::os::raw::c_uint;
8977pub type AEGP_WindowType = A_LegacyEnumType;
8978pub const AEGP_HP_BeforeAE: _bindgen_ty_148 = 1;
8979pub const AEGP_HP_AfterAE: _bindgen_ty_148 = 2;
8980pub type _bindgen_ty_148 = ::std::os::raw::c_uint;
8981pub type AEGP_HookPriority = A_u_long;
8982pub type AEGP_CommandHook = ::std::option::Option<
8983    unsafe extern "C" fn(
8984        plugin_refconP: AEGP_GlobalRefcon,
8985        refconP: AEGP_CommandRefcon,
8986        command: AEGP_Command,
8987        hook_priority: AEGP_HookPriority,
8988        already_handledB: A_Boolean,
8989        handledPB: *mut A_Boolean,
8990    ) -> A_Err,
8991>;
8992pub type AEGP_UpdateMenuHook = ::std::option::Option<
8993    unsafe extern "C" fn(
8994        plugin_refconP: AEGP_GlobalRefcon,
8995        refconP: AEGP_UpdateMenuRefcon,
8996        active_window: AEGP_WindowType,
8997    ) -> A_Err,
8998>;
8999pub type AEGP_DeathHook = ::std::option::Option<
9000    unsafe extern "C" fn(plugin_refconP: AEGP_GlobalRefcon, refconP: AEGP_DeathRefcon) -> A_Err,
9001>;
9002pub type AEGP_VersionHook = ::std::option::Option<
9003    unsafe extern "C" fn(
9004        plugin_refconP: AEGP_GlobalRefcon,
9005        refconP: AEGP_VersionRefcon,
9006        pf_versionPLu: *mut A_u_long,
9007    ) -> A_Err,
9008>;
9009pub type AEGP_AboutStringHook = ::std::option::Option<
9010    unsafe extern "C" fn(
9011        plugin_refconP: AEGP_GlobalRefcon,
9012        refconP: AEGP_AboutStringRefcon,
9013        aboutZ: *mut A_char,
9014    ) -> A_Err,
9015>;
9016pub type AEGP_AboutHook = ::std::option::Option<
9017    unsafe extern "C" fn(plugin_refconP: AEGP_GlobalRefcon, refconP: AEGP_AboutRefcon) -> A_Err,
9018>;
9019pub type AEGP_IdleHook = ::std::option::Option<
9020    unsafe extern "C" fn(
9021        plugin_refconP: AEGP_GlobalRefcon,
9022        refconP: AEGP_IdleRefcon,
9023        max_sleepPL: *mut A_long,
9024    ) -> A_Err,
9025>;
9026#[repr(C)]
9027#[derive(Debug, Copy, Clone)]
9028pub struct AEGP_RegisterSuite5 {
9029    pub AEGP_RegisterCommandHook: ::std::option::Option<
9030        unsafe extern "C" fn(
9031            aegp_plugin_id: AEGP_PluginID,
9032            hook_priority: AEGP_HookPriority,
9033            command: AEGP_Command,
9034            command_hook_func: AEGP_CommandHook,
9035            refconP: AEGP_CommandRefcon,
9036        ) -> A_Err,
9037    >,
9038    pub AEGP_RegisterUpdateMenuHook: ::std::option::Option<
9039        unsafe extern "C" fn(
9040            plugin_id: AEGP_PluginID,
9041            update_menu_hook_func: AEGP_UpdateMenuHook,
9042            refconP: AEGP_UpdateMenuRefcon,
9043        ) -> A_Err,
9044    >,
9045    pub AEGP_RegisterDeathHook: ::std::option::Option<
9046        unsafe extern "C" fn(
9047            aegp_plugin_id: AEGP_PluginID,
9048            death_hook_func: AEGP_DeathHook,
9049            refconP: AEGP_DeathRefcon,
9050        ) -> A_Err,
9051    >,
9052    pub AEGP_RegisterVersionHook: ::std::option::Option<
9053        unsafe extern "C" fn(
9054            aegp_plugin_id: AEGP_PluginID,
9055            version_hook_func: AEGP_VersionHook,
9056            refconP: AEGP_VersionRefcon,
9057        ) -> A_Err,
9058    >,
9059    pub AEGP_RegisterAboutStringHook: ::std::option::Option<
9060        unsafe extern "C" fn(
9061            aegp_plugin_id: AEGP_PluginID,
9062            about_string_hook_func: AEGP_AboutStringHook,
9063            refconP: AEGP_AboutStringRefcon,
9064        ) -> A_Err,
9065    >,
9066    pub AEGP_RegisterAboutHook: ::std::option::Option<
9067        unsafe extern "C" fn(
9068            aegp_plugin_id: AEGP_PluginID,
9069            about_hook_func: AEGP_AboutHook,
9070            refconP: AEGP_AboutRefcon,
9071        ) -> A_Err,
9072    >,
9073    pub AEGP_RegisterArtisan: ::std::option::Option<
9074        unsafe extern "C" fn(
9075            api_version: A_Version,
9076            artisan_version: A_Version,
9077            aegp_plugin_id: AEGP_PluginID,
9078            aegp_refconPV: *mut ::std::os::raw::c_void,
9079            utf8_match_nameZ: *const A_char,
9080            artisan_nameZ: *const A_char,
9081            entry_funcs: *mut PR_ArtisanEntryPoints,
9082        ) -> A_Err,
9083    >,
9084    pub AEGP_RegisterIO: ::std::option::Option<
9085        unsafe extern "C" fn(
9086            aegp_plugin_id: AEGP_PluginID,
9087            aegp_refconP: AEGP_IORefcon,
9088            io_infoP: *const AEIO_ModuleInfo,
9089            aeio_fcn_blockP: *const AEIO_FunctionBlock4,
9090        ) -> A_Err,
9091    >,
9092    pub AEGP_RegisterIdleHook: ::std::option::Option<
9093        unsafe extern "C" fn(
9094            aegp_plugin_id: AEGP_PluginID,
9095            idle_hook_func: AEGP_IdleHook,
9096            refconP: AEGP_IdleRefcon,
9097        ) -> A_Err,
9098    >,
9099    pub AEGP_RegisterTracker: ::std::option::Option<
9100        unsafe extern "C" fn(
9101            api_version: A_Version,
9102            tracker_version: A_Version,
9103            aegp_plugin_id: AEGP_PluginID,
9104            refconP: AEGP_GlobalRefcon,
9105            utf8_match_nameZ: *const A_char,
9106            tracker_nameZ: *const A_char,
9107            entry_pointsP: *const PT_TrackerEntryPoints,
9108        ) -> A_Err,
9109    >,
9110    pub AEGP_RegisterInteractiveArtisan: ::std::option::Option<
9111        unsafe extern "C" fn(
9112            api_version: A_Version,
9113            artisan_version: A_Version,
9114            aegp_plugin_id: AEGP_PluginID,
9115            aegp_refconPV: *mut ::std::os::raw::c_void,
9116            utf8_match_nameZ: *const A_char,
9117            artisan_nameZ: *const A_char,
9118            entry_funcs: *mut PR_ArtisanEntryPoints,
9119        ) -> A_Err,
9120    >,
9121    pub AEGP_RegisterPresetLocalizationString: ::std::option::Option<
9122        unsafe extern "C" fn(english_nameZ: *const A_char, localized_nameZ: *const A_char) -> A_Err,
9123    >,
9124}
9125pub const AEGP_Menu_NONE: _bindgen_ty_149 = 0;
9126pub const AEGP_Menu_APPLE: _bindgen_ty_149 = 1;
9127pub const AEGP_Menu_FILE: _bindgen_ty_149 = 2;
9128pub const AEGP_Menu_EDIT: _bindgen_ty_149 = 3;
9129pub const AEGP_Menu_COMPOSITION: _bindgen_ty_149 = 4;
9130pub const AEGP_Menu_LAYER: _bindgen_ty_149 = 5;
9131pub const AEGP_Menu_EFFECT: _bindgen_ty_149 = 6;
9132pub const AEGP_Menu_WINDOW: _bindgen_ty_149 = 7;
9133pub const AEGP_Menu_FLOATERS: _bindgen_ty_149 = 8;
9134pub const AEGP_Menu_KF_ASSIST: _bindgen_ty_149 = 9;
9135pub const AEGP_Menu_IMPORT: _bindgen_ty_149 = 10;
9136pub const AEGP_Menu_SAVE_FRAME_AS: _bindgen_ty_149 = 11;
9137pub const AEGP_Menu_PREFS: _bindgen_ty_149 = 12;
9138pub const AEGP_Menu_EXPORT: _bindgen_ty_149 = 13;
9139pub const AEGP_Menu_ANIMATION: _bindgen_ty_149 = 14;
9140pub const AEGP_Menu_PURGE: _bindgen_ty_149 = 15;
9141pub const AEGP_Menu_NEW: _bindgen_ty_149 = 16;
9142pub type _bindgen_ty_149 = ::std::os::raw::c_uint;
9143pub type AEGP_MenuID = A_LegacyEnumType;
9144#[repr(C)]
9145#[derive(Debug, Copy, Clone)]
9146pub struct AEGP_CommandSuite1 {
9147    pub AEGP_GetUniqueCommand:
9148        ::std::option::Option<unsafe extern "C" fn(unique_commandP: *mut AEGP_Command) -> A_Err>,
9149    pub AEGP_InsertMenuCommand: ::std::option::Option<
9150        unsafe extern "C" fn(
9151            command: AEGP_Command,
9152            nameZ: *const A_char,
9153            menu_id: AEGP_MenuID,
9154            after_itemL: A_long,
9155        ) -> A_Err,
9156    >,
9157    pub AEGP_RemoveMenuCommand:
9158        ::std::option::Option<unsafe extern "C" fn(command: AEGP_Command) -> A_Err>,
9159    pub AEGP_SetMenuCommandName: ::std::option::Option<
9160        unsafe extern "C" fn(command: AEGP_Command, nameZ: *const A_char) -> A_Err,
9161    >,
9162    pub AEGP_EnableCommand:
9163        ::std::option::Option<unsafe extern "C" fn(command: AEGP_Command) -> A_Err>,
9164    pub AEGP_DisableCommand:
9165        ::std::option::Option<unsafe extern "C" fn(command: AEGP_Command) -> A_Err>,
9166    pub AEGP_CheckMarkMenuCommand: ::std::option::Option<
9167        unsafe extern "C" fn(command: AEGP_Command, checkB: A_Boolean) -> A_Err,
9168    >,
9169    pub AEGP_DoCommand: ::std::option::Option<unsafe extern "C" fn(command: AEGP_Command) -> A_Err>,
9170}
9171#[repr(C)]
9172#[derive(Debug, Copy, Clone)]
9173pub struct AEGP_ErrReportState {
9174    pub reservedAL: [A_long; 12usize],
9175}
9176pub const AEGP_GetPathTypes_PLUGIN: _bindgen_ty_150 = 0;
9177pub const AEGP_GetPathTypes_USER_PLUGIN: _bindgen_ty_150 = 1;
9178pub const AEGP_GetPathTypes_ALLUSER_PLUGIN: _bindgen_ty_150 = 2;
9179pub const AEGP_GetPathTypes_APP: _bindgen_ty_150 = 3;
9180pub type _bindgen_ty_150 = ::std::os::raw::c_uint;
9181pub type AEGP_GetPathTypes = A_u_long;
9182#[repr(C)]
9183#[derive(Debug, Copy, Clone)]
9184pub struct AEGP_UtilitySuite6 {
9185    pub AEGP_ReportInfo: ::std::option::Option<
9186        unsafe extern "C" fn(aegp_plugin_id: AEGP_PluginID, info_stringZ: *const A_char) -> A_Err,
9187    >,
9188    pub AEGP_ReportInfoUnicode: ::std::option::Option<
9189        unsafe extern "C" fn(
9190            aegp_plugin_id: AEGP_PluginID,
9191            info_stringP: *const A_UTF16Char,
9192        ) -> A_Err,
9193    >,
9194    pub AEGP_GetDriverPluginInitFuncVersion: ::std::option::Option<
9195        unsafe extern "C" fn(major_versionPS: *mut A_short, minor_versionPS: *mut A_short) -> A_Err,
9196    >,
9197    pub AEGP_GetDriverImplementationVersion: ::std::option::Option<
9198        unsafe extern "C" fn(major_versionPS: *mut A_short, minor_versionPS: *mut A_short) -> A_Err,
9199    >,
9200    pub AEGP_StartQuietErrors:
9201        ::std::option::Option<unsafe extern "C" fn(err_stateP: *mut AEGP_ErrReportState) -> A_Err>,
9202    pub AEGP_EndQuietErrors: ::std::option::Option<
9203        unsafe extern "C" fn(
9204            report_quieted_errorsB: A_Boolean,
9205            err_stateP: *mut AEGP_ErrReportState,
9206        ) -> A_Err,
9207    >,
9208    pub AEGP_GetLastErrorMessage: ::std::option::Option<
9209        unsafe extern "C" fn(
9210            buffer_size: A_long,
9211            error_string: *mut A_char,
9212            error_num: *mut A_Err,
9213        ) -> A_Err,
9214    >,
9215    pub AEGP_StartUndoGroup:
9216        ::std::option::Option<unsafe extern "C" fn(undo_nameZ: *const A_char) -> A_Err>,
9217    pub AEGP_EndUndoGroup: ::std::option::Option<unsafe extern "C" fn() -> A_Err>,
9218    pub AEGP_RegisterWithAEGP: ::std::option::Option<
9219        unsafe extern "C" fn(
9220            global_refcon: AEGP_GlobalRefcon,
9221            plugin_nameZ: *const A_char,
9222            plugin_id: *mut AEGP_PluginID,
9223        ) -> A_Err,
9224    >,
9225    pub AEGP_GetMainHWND: ::std::option::Option<
9226        unsafe extern "C" fn(main_hwnd: *mut ::std::os::raw::c_void) -> A_Err,
9227    >,
9228    pub AEGP_ShowHideAllFloaters:
9229        ::std::option::Option<unsafe extern "C" fn(include_tool_palB: A_Boolean) -> A_Err>,
9230    pub AEGP_PaintPalGetForeColor:
9231        ::std::option::Option<unsafe extern "C" fn(fore_colorP: *mut AEGP_ColorVal) -> A_Err>,
9232    pub AEGP_PaintPalGetBackColor:
9233        ::std::option::Option<unsafe extern "C" fn(back_colorP: *mut AEGP_ColorVal) -> A_Err>,
9234    pub AEGP_PaintPalSetForeColor:
9235        ::std::option::Option<unsafe extern "C" fn(fore_colorP: *const AEGP_ColorVal) -> A_Err>,
9236    pub AEGP_PaintPalSetBackColor:
9237        ::std::option::Option<unsafe extern "C" fn(back_colorP: *const AEGP_ColorVal) -> A_Err>,
9238    pub AEGP_CharPalGetFillColor: ::std::option::Option<
9239        unsafe extern "C" fn(
9240            is_fill_color_definedPB: *mut A_Boolean,
9241            fill_colorP: *mut AEGP_ColorVal,
9242        ) -> A_Err,
9243    >,
9244    pub AEGP_CharPalGetStrokeColor: ::std::option::Option<
9245        unsafe extern "C" fn(
9246            is_stroke_color_definedPB: *mut A_Boolean,
9247            stroke_colorP: *mut AEGP_ColorVal,
9248        ) -> A_Err,
9249    >,
9250    pub AEGP_CharPalSetFillColor:
9251        ::std::option::Option<unsafe extern "C" fn(fill_colorP: *const AEGP_ColorVal) -> A_Err>,
9252    pub AEGP_CharPalSetStrokeColor:
9253        ::std::option::Option<unsafe extern "C" fn(stroke_colorP: *const AEGP_ColorVal) -> A_Err>,
9254    pub AEGP_CharPalIsFillColorUIFrontmost: ::std::option::Option<
9255        unsafe extern "C" fn(is_fill_color_selectedPB: *mut A_Boolean) -> A_Err,
9256    >,
9257    pub AEGP_ConvertFpLongToHSFRatio: ::std::option::Option<
9258        unsafe extern "C" fn(numberF: A_FpLong, ratioPR: *mut A_Ratio) -> A_Err,
9259    >,
9260    pub AEGP_ConvertHSFRatioToFpLong: ::std::option::Option<
9261        unsafe extern "C" fn(ratioR: A_Ratio, numberPF: *mut A_FpLong) -> A_Err,
9262    >,
9263    pub AEGP_CauseIdleRoutinesToBeCalled: ::std::option::Option<unsafe extern "C" fn() -> A_Err>,
9264    pub AEGP_GetSuppressInteractiveUI:
9265        ::std::option::Option<unsafe extern "C" fn(ui_is_suppressedPB: *mut A_Boolean) -> A_Err>,
9266    pub AEGP_WriteToOSConsole:
9267        ::std::option::Option<unsafe extern "C" fn(textZ: *const A_char) -> A_Err>,
9268    pub AEGP_WriteToDebugLog: ::std::option::Option<
9269        unsafe extern "C" fn(
9270            subsystemZ: *const A_char,
9271            event_typeZ: *const A_char,
9272            infoZ: *const A_char,
9273        ) -> A_Err,
9274    >,
9275    pub AEGP_IsScriptingAvailable:
9276        ::std::option::Option<unsafe extern "C" fn(outAvailablePB: *mut A_Boolean) -> A_Err>,
9277    pub AEGP_ExecuteScript: ::std::option::Option<
9278        unsafe extern "C" fn(
9279            inPlugin_id: AEGP_PluginID,
9280            inScriptZ: *const A_char,
9281            platform_encodingB: A_Boolean,
9282            outResultPH0: *mut AEGP_MemHandle,
9283            outErrorStringPH0: *mut AEGP_MemHandle,
9284        ) -> A_Err,
9285    >,
9286    pub AEGP_HostIsActivated:
9287        ::std::option::Option<unsafe extern "C" fn(is_activatedPB: *mut A_Boolean) -> A_Err>,
9288    pub AEGP_GetPluginPlatformRef: ::std::option::Option<
9289        unsafe extern "C" fn(
9290            plug_id: AEGP_PluginID,
9291            plat_refPPV: *mut *mut ::std::os::raw::c_void,
9292        ) -> A_Err,
9293    >,
9294    pub AEGP_UpdateFontList: ::std::option::Option<unsafe extern "C" fn() -> A_Err>,
9295    pub AEGP_GetPluginPaths: ::std::option::Option<
9296        unsafe extern "C" fn(
9297            aegp_plugin_id: AEGP_PluginID,
9298            path_type: AEGP_GetPathTypes,
9299            unicode_pathPH: *mut AEGP_MemHandle,
9300        ) -> A_Err,
9301    >,
9302}
9303#[repr(C)]
9304#[derive(Debug, Copy, Clone)]
9305pub struct AEGP_MathSuite1 {
9306    pub AEGP_IdentityMatrix4:
9307        ::std::option::Option<unsafe extern "C" fn(matrixP: *mut A_Matrix4) -> A_Err>,
9308    pub AEGP_MultiplyMatrix4: ::std::option::Option<
9309        unsafe extern "C" fn(
9310            A: *const A_Matrix4,
9311            B: *const A_Matrix4,
9312            resultP: *mut A_Matrix4,
9313        ) -> A_Err,
9314    >,
9315    pub AEGP_Matrix3ToMatrix4: ::std::option::Option<
9316        unsafe extern "C" fn(A: *const A_Matrix3, B: *mut A_Matrix4) -> A_Err,
9317    >,
9318    pub AEGP_MultiplyMatrix4by3: ::std::option::Option<
9319        unsafe extern "C" fn(
9320            A: *const A_Matrix4,
9321            B: *const A_Matrix3,
9322            resultP: *mut A_Matrix4,
9323        ) -> A_Err,
9324    >,
9325    pub AEGP_MatrixDecompose4: ::std::option::Option<
9326        unsafe extern "C" fn(
9327            A: *const A_Matrix4,
9328            posVP: *mut A_FloatPoint3,
9329            scaleVP: *mut A_FloatPoint3,
9330            shearVP: *mut A_FloatPoint3,
9331            rotVP: *mut A_FloatPoint3,
9332        ) -> A_Err,
9333    >,
9334}
9335#[repr(C)]
9336#[derive(Debug, Copy, Clone)]
9337pub struct _PF_OpaqueBlendingTables {
9338    _unused: [u8; 0],
9339}
9340pub type PF_EffectBlendingTables = *mut _PF_OpaqueBlendingTables;
9341#[repr(C)]
9342#[derive(Debug, Copy, Clone)]
9343pub struct AEGP_ColorSettingsSuite6 {
9344    pub AEGP_GetBlendingTables: ::std::option::Option<
9345        unsafe extern "C" fn(
9346            render_contextH: PR_RenderContextH,
9347            blending_tables: *mut PF_EffectBlendingTables,
9348        ) -> A_Err,
9349    >,
9350    pub AEGP_DoesViewHaveColorSpaceXform: ::std::option::Option<
9351        unsafe extern "C" fn(viewP: AEGP_ItemViewP, has_xformPB: *mut A_Boolean) -> A_Err,
9352    >,
9353    pub AEGP_XformWorkingToViewColorSpace: ::std::option::Option<
9354        unsafe extern "C" fn(viewP: AEGP_ItemViewP, srcH: AEGP_WorldH, dstH: AEGP_WorldH) -> A_Err,
9355    >,
9356    pub AEGP_GetNewWorkingSpaceColorProfile: ::std::option::Option<
9357        unsafe extern "C" fn(
9358            aegp_plugin_id: AEGP_PluginID,
9359            compH: AEGP_CompH,
9360            color_profilePP: *mut AEGP_ColorProfileP,
9361        ) -> A_Err,
9362    >,
9363    pub AEGP_GetNewColorProfileFromICCProfile: ::std::option::Option<
9364        unsafe extern "C" fn(
9365            aegp_plugin_id: AEGP_PluginID,
9366            icc_sizeL: A_long,
9367            icc_dataPV: *const ::std::os::raw::c_void,
9368            color_profilePP: *mut AEGP_ColorProfileP,
9369        ) -> A_Err,
9370    >,
9371    pub AEGP_GetNewICCProfileFromColorProfile: ::std::option::Option<
9372        unsafe extern "C" fn(
9373            aegp_plugin_id: AEGP_PluginID,
9374            color_profileP: AEGP_ConstColorProfileP,
9375            icc_profilePH: *mut AEGP_MemHandle,
9376        ) -> A_Err,
9377    >,
9378    pub AEGP_GetNewColorProfileDescription: ::std::option::Option<
9379        unsafe extern "C" fn(
9380            aegp_plugin_id: AEGP_PluginID,
9381            color_profileP: AEGP_ConstColorProfileP,
9382            unicode_descPH: *mut AEGP_MemHandle,
9383        ) -> A_Err,
9384    >,
9385    pub AEGP_DisposeColorProfile:
9386        ::std::option::Option<unsafe extern "C" fn(color_profileP: AEGP_ColorProfileP) -> A_Err>,
9387    pub AEGP_GetColorProfileApproximateGamma: ::std::option::Option<
9388        unsafe extern "C" fn(
9389            color_profileP: AEGP_ConstColorProfileP,
9390            approx_gammaP: *mut A_FpShort,
9391        ) -> A_Err,
9392    >,
9393    pub AEGP_IsRGBColorProfile: ::std::option::Option<
9394        unsafe extern "C" fn(
9395            color_profileP: AEGP_ConstColorProfileP,
9396            is_rgbPB: *mut A_Boolean,
9397        ) -> A_Err,
9398    >,
9399    pub AEGP_SetWorkingColorSpace: ::std::option::Option<
9400        unsafe extern "C" fn(
9401            aegp_plugin_id: AEGP_PluginID,
9402            compH: AEGP_CompH,
9403            color_profileP: AEGP_ConstColorProfileP,
9404        ) -> A_Err,
9405    >,
9406    pub AEGP_IsOCIOColorManagementUsed: ::std::option::Option<
9407        unsafe extern "C" fn(
9408            aegp_plugin_id: AEGP_PluginID,
9409            is_OCIOColorManagementUsedPB: *mut A_Boolean,
9410        ) -> A_Err,
9411    >,
9412    pub AEGP_GetOCIOConfigurationFile: ::std::option::Option<
9413        unsafe extern "C" fn(
9414            aegp_plugin_id: AEGP_PluginID,
9415            config_filePH: *mut AEGP_MemHandle,
9416        ) -> A_Err,
9417    >,
9418    pub AEGP_GetOCIOConfigurationFilePath: ::std::option::Option<
9419        unsafe extern "C" fn(
9420            aegp_plugin_id: AEGP_PluginID,
9421            config_filePH: *mut AEGP_MemHandle,
9422        ) -> A_Err,
9423    >,
9424    pub AEGPD_GetOCIOWorkingColorSpace: ::std::option::Option<
9425        unsafe extern "C" fn(
9426            aegp_plugin_id: AEGP_PluginID,
9427            ocio_working_colorspaceH: *mut AEGP_MemHandle,
9428        ) -> A_Err,
9429    >,
9430    pub AEGPD_GetOCIODisplayColorSpace: ::std::option::Option<
9431        unsafe extern "C" fn(
9432            aegp_plugin_id: AEGP_PluginID,
9433            ocio_displayH: *mut AEGP_MemHandle,
9434            ocio_viewH: *mut AEGP_MemHandle,
9435        ) -> A_Err,
9436    >,
9437    pub AEGPD_IsColorSpaceAwareEffectsEnabled: ::std::option::Option<
9438        unsafe extern "C" fn(
9439            aegp_plugin_id: AEGP_PluginID,
9440            outIsGetColorAwareEnabled: *mut A_Boolean,
9441        ) -> A_Err,
9442    >,
9443    pub AEGPD_GetLUTInterpolationMethod: ::std::option::Option<
9444        unsafe extern "C" fn(
9445            aegp_plugin_id: AEGP_PluginID,
9446            outLUTInterpolationMethod: *mut A_u_short,
9447        ) -> A_Err,
9448    >,
9449    pub AEGPD_GetGraphicsWhiteLuminance: ::std::option::Option<
9450        unsafe extern "C" fn(
9451            aegp_plugin_id: AEGP_PluginID,
9452            outGraphicsWhiteLuminance: *mut A_u_short,
9453        ) -> A_Err,
9454    >,
9455    pub AEGPD_GetWorkingColorSpaceId: ::std::option::Option<
9456        unsafe extern "C" fn(
9457            aegp_plugin_id: AEGP_PluginID,
9458            workingColorSpaceGuid: AEGP_GuidP,
9459        ) -> A_Err,
9460    >,
9461}
9462pub const AEGP_RenderQueueState_STOPPED: _bindgen_ty_151 = 0;
9463pub const AEGP_RenderQueueState_PAUSED: _bindgen_ty_151 = 1;
9464pub const AEGP_RenderQueueState_RENDERING: _bindgen_ty_151 = 2;
9465pub type _bindgen_ty_151 = ::std::os::raw::c_uint;
9466pub type AEGP_RenderQueueState = A_u_long;
9467pub const AEGP_RenderItemStatus_NONE: _bindgen_ty_152 = -2;
9468pub const AEGP_RenderItemStatus_WILL_CONTINUE: _bindgen_ty_152 = -1;
9469pub const AEGP_RenderItemStatus_NEEDS_OUTPUT: _bindgen_ty_152 = 0;
9470pub const AEGP_RenderItemStatus_UNQUEUED: _bindgen_ty_152 = 1;
9471pub const AEGP_RenderItemStatus_QUEUED: _bindgen_ty_152 = 2;
9472pub const AEGP_RenderItemStatus_RENDERING: _bindgen_ty_152 = 3;
9473pub const AEGP_RenderItemStatus_USER_STOPPED: _bindgen_ty_152 = 4;
9474pub const AEGP_RenderItemStatus_ERR_STOPPED: _bindgen_ty_152 = 5;
9475pub const AEGP_RenderItemStatus_DONE: _bindgen_ty_152 = 6;
9476pub const AEGP_RenderItemStatus_LAST_PLUS_ONE: _bindgen_ty_152 = 7;
9477pub type _bindgen_ty_152 = ::std::os::raw::c_int;
9478pub type AEGP_RenderItemStatusType = A_long;
9479#[repr(C)]
9480#[derive(Debug, Copy, Clone)]
9481pub struct AEGP_RenderQueueSuite1 {
9482    pub AEGP_AddCompToRenderQueue: ::std::option::Option<
9483        unsafe extern "C" fn(comp: AEGP_CompH, pathZ: *const A_char) -> A_Err,
9484    >,
9485    pub AEGP_SetRenderQueueState:
9486        ::std::option::Option<unsafe extern "C" fn(state: AEGP_RenderQueueState) -> A_Err>,
9487    pub AEGP_GetRenderQueueState:
9488        ::std::option::Option<unsafe extern "C" fn(stateP: *mut AEGP_RenderQueueState) -> A_Err>,
9489}
9490pub const AEGP_LogType_NONE: _bindgen_ty_153 = -1;
9491pub const AEGP_LogType_ERRORS_ONLY: _bindgen_ty_153 = 0;
9492pub const AEGP_LogType_PLUS_SETTINGS: _bindgen_ty_153 = 1;
9493pub const AEGP_LogType_PER_FRAME_INFO: _bindgen_ty_153 = 2;
9494pub const AEGP_LogType_NUM_TYPES: _bindgen_ty_153 = 3;
9495pub type _bindgen_ty_153 = ::std::os::raw::c_int;
9496pub type AEGP_LogType = A_long;
9497pub const AEGP_Embedding_NONE: _bindgen_ty_154 = -1;
9498pub const AEGP_Embedding_NOTHING: _bindgen_ty_154 = 0;
9499pub const AEGP_Embedding_LINK: _bindgen_ty_154 = 1;
9500pub const AEGP_Embedding_LINK_AND_COPY: _bindgen_ty_154 = 2;
9501pub const AEGP_Embedding_NUM_TYPES: _bindgen_ty_154 = 3;
9502pub type _bindgen_ty_154 = ::std::os::raw::c_int;
9503pub type AEGP_EmbeddingType = A_long;
9504pub const AEGP_PostRenderOptions_NONE: _bindgen_ty_155 = -1;
9505pub const AEGP_PostRenderOptions_IMPORT: _bindgen_ty_155 = 0;
9506pub const AEGP_PostRenderOptions_IMPORT_AND_REPLACE_USAGE: _bindgen_ty_155 = 1;
9507pub const AEGP_PostRenderOptions_SET_PROXY: _bindgen_ty_155 = 2;
9508pub const AEGP_PostRenderOptions_NUM_OPTIONS: _bindgen_ty_155 = 3;
9509pub type _bindgen_ty_155 = ::std::os::raw::c_int;
9510pub type AEGP_PostRenderAction = A_long;
9511pub const AEGP_OutputType_NONE: _bindgen_ty_156 = 0;
9512pub const AEGP_OutputType_VIDEO: _bindgen_ty_156 = 1;
9513pub const AEGP_OutputType_AUDIO: _bindgen_ty_156 = 2;
9514pub const AEGP_OutputType_NUM_TYPES: _bindgen_ty_156 = 3;
9515pub type _bindgen_ty_156 = ::std::os::raw::c_uint;
9516pub type AEGP_OutputTypes = A_long;
9517pub const AEGP_VideoChannels_NONE: _bindgen_ty_157 = -1;
9518pub const AEGP_VideoChannels_RGB: _bindgen_ty_157 = 0;
9519pub const AEGP_VideoChannels_RGBA: _bindgen_ty_157 = 1;
9520pub const AEGP_VideoChannels_ALPHA: _bindgen_ty_157 = 2;
9521pub const AEGP_VideoChannels_NUMTYPES: _bindgen_ty_157 = 3;
9522pub type _bindgen_ty_157 = ::std::os::raw::c_int;
9523pub type AEGP_VideoChannels = A_long;
9524pub const AEGP_StretchQual_NONE: _bindgen_ty_158 = -1;
9525pub const AEGP_StretchQual_LOW: _bindgen_ty_158 = 0;
9526pub const AEGP_StretchQual_HIGH: _bindgen_ty_158 = 1;
9527pub const AEGP_StretchQual_NUMTYPES: _bindgen_ty_158 = 2;
9528pub type _bindgen_ty_158 = ::std::os::raw::c_int;
9529pub type AEGP_StretchQuality = A_long;
9530pub const AEGP_OutputColorType_STRAIGHT: _bindgen_ty_159 = -1;
9531pub const AEGP_OutputColorType_PREMUL: _bindgen_ty_159 = 0;
9532pub type _bindgen_ty_159 = ::std::os::raw::c_int;
9533pub type AEGP_OutputColorType = A_long;
9534#[repr(C)]
9535#[derive(Debug, Copy, Clone)]
9536pub struct AEGP_RQItemSuite4 {
9537    pub AEGP_GetNumRQItems:
9538        ::std::option::Option<unsafe extern "C" fn(num_itemsPL: *mut A_long) -> A_Err>,
9539    pub AEGP_GetRQItemByIndex: ::std::option::Option<
9540        unsafe extern "C" fn(rq_item_index: A_long, rq_item_refPH: *mut AEGP_RQItemRefH) -> A_Err,
9541    >,
9542    pub AEGP_GetNextRQItem: ::std::option::Option<
9543        unsafe extern "C" fn(
9544            current_rq_itemH: AEGP_RQItemRefH,
9545            next_rq_itemH: *mut AEGP_RQItemRefH,
9546        ) -> A_Err,
9547    >,
9548    pub AEGP_GetNumOutputModulesForRQItem: ::std::option::Option<
9549        unsafe extern "C" fn(rq_itemH: AEGP_RQItemRefH, num_outmodsPL: *mut A_long) -> A_Err,
9550    >,
9551    pub AEGP_GetRenderState: ::std::option::Option<
9552        unsafe extern "C" fn(
9553            rq_itemH: AEGP_RQItemRefH,
9554            statusP: *mut AEGP_RenderItemStatusType,
9555        ) -> A_Err,
9556    >,
9557    pub AEGP_SetRenderState: ::std::option::Option<
9558        unsafe extern "C" fn(rq_itemH: AEGP_RQItemRefH, status: AEGP_RenderItemStatusType) -> A_Err,
9559    >,
9560    pub AEGP_GetStartedTime: ::std::option::Option<
9561        unsafe extern "C" fn(rq_itemH: AEGP_RQItemRefH, started_timePT: *mut A_Time) -> A_Err,
9562    >,
9563    pub AEGP_GetElapsedTime: ::std::option::Option<
9564        unsafe extern "C" fn(rq_itemH: AEGP_RQItemRefH, render_timePT: *mut A_Time) -> A_Err,
9565    >,
9566    pub AEGP_GetLogType: ::std::option::Option<
9567        unsafe extern "C" fn(rq_itemH: AEGP_RQItemRefH, logtypeP: *mut AEGP_LogType) -> A_Err,
9568    >,
9569    pub AEGP_SetLogType: ::std::option::Option<
9570        unsafe extern "C" fn(rq_itemH: AEGP_RQItemRefH, logtype: AEGP_LogType) -> A_Err,
9571    >,
9572    pub AEGP_RemoveOutputModule: ::std::option::Option<
9573        unsafe extern "C" fn(rq_itemH: AEGP_RQItemRefH, outmodH: AEGP_OutputModuleRefH) -> A_Err,
9574    >,
9575    pub AEGP_GetComment: ::std::option::Option<
9576        unsafe extern "C" fn(rq_itemH: AEGP_RQItemRefH, unicodeH: *mut AEGP_MemHandle) -> A_Err,
9577    >,
9578    pub AEGP_SetComment: ::std::option::Option<
9579        unsafe extern "C" fn(rq_itemH: AEGP_RQItemRefH, commentZ: *const A_UTF16Char) -> A_Err,
9580    >,
9581    pub AEGP_GetCompFromRQItem: ::std::option::Option<
9582        unsafe extern "C" fn(rq_itemH: AEGP_RQItemRefH, compPH: *mut AEGP_CompH) -> A_Err,
9583    >,
9584    pub AEGP_DeleteRQItem:
9585        ::std::option::Option<unsafe extern "C" fn(rq_itemH: AEGP_RQItemRefH) -> A_Err>,
9586}
9587#[repr(C)]
9588#[derive(Debug, Copy, Clone)]
9589pub struct AEGP_OutputModuleSuite4 {
9590    pub AEGP_GetOutputModuleByIndex: ::std::option::Option<
9591        unsafe extern "C" fn(
9592            rq_itemH: AEGP_RQItemRefH,
9593            outmod_indexL: A_long,
9594            outmodPH: *mut AEGP_OutputModuleRefH,
9595        ) -> A_Err,
9596    >,
9597    pub AEGP_GetEmbedOptions: ::std::option::Option<
9598        unsafe extern "C" fn(
9599            rq_itemH: AEGP_RQItemRefH,
9600            outmodH: AEGP_OutputModuleRefH,
9601            embed_optionsP: *mut AEGP_EmbeddingType,
9602        ) -> A_Err,
9603    >,
9604    pub AEGP_SetEmbedOptions: ::std::option::Option<
9605        unsafe extern "C" fn(
9606            rq_itemH: AEGP_RQItemRefH,
9607            outmodH: AEGP_OutputModuleRefH,
9608            embed_options: AEGP_EmbeddingType,
9609        ) -> A_Err,
9610    >,
9611    pub AEGP_GetPostRenderAction: ::std::option::Option<
9612        unsafe extern "C" fn(
9613            rq_itemH: AEGP_RQItemRefH,
9614            outmodH: AEGP_OutputModuleRefH,
9615            post_render_actionP: *mut AEGP_PostRenderAction,
9616        ) -> A_Err,
9617    >,
9618    pub AEGP_SetPostRenderAction: ::std::option::Option<
9619        unsafe extern "C" fn(
9620            rq_itemH: AEGP_RQItemRefH,
9621            outmodH: AEGP_OutputModuleRefH,
9622            post_render_action: AEGP_PostRenderAction,
9623        ) -> A_Err,
9624    >,
9625    pub AEGP_GetEnabledOutputs: ::std::option::Option<
9626        unsafe extern "C" fn(
9627            rq_itemH: AEGP_RQItemRefH,
9628            outmodH: AEGP_OutputModuleRefH,
9629            enabled_typesP: *mut AEGP_OutputTypes,
9630        ) -> A_Err,
9631    >,
9632    pub AEGP_SetEnabledOutputs: ::std::option::Option<
9633        unsafe extern "C" fn(
9634            rq_itemH: AEGP_RQItemRefH,
9635            outmodH: AEGP_OutputModuleRefH,
9636            enabled_types: AEGP_OutputTypes,
9637        ) -> A_Err,
9638    >,
9639    pub AEGP_GetOutputChannels: ::std::option::Option<
9640        unsafe extern "C" fn(
9641            rq_itemH: AEGP_RQItemRefH,
9642            outmodH: AEGP_OutputModuleRefH,
9643            output_channelsP: *mut AEGP_VideoChannels,
9644        ) -> A_Err,
9645    >,
9646    pub AEGP_SetOutputChannels: ::std::option::Option<
9647        unsafe extern "C" fn(
9648            rq_itemH: AEGP_RQItemRefH,
9649            outmodH: AEGP_OutputModuleRefH,
9650            output_channels: AEGP_VideoChannels,
9651        ) -> A_Err,
9652    >,
9653    pub AEGP_GetStretchInfo: ::std::option::Option<
9654        unsafe extern "C" fn(
9655            rq_itemH: AEGP_RQItemRefH,
9656            outmodH: AEGP_OutputModuleRefH,
9657            is_enabledPB: *mut A_Boolean,
9658            stretch_qualityP: *mut AEGP_StretchQuality,
9659            lockedPB: *mut A_Boolean,
9660        ) -> A_Err,
9661    >,
9662    pub AEGP_SetStretchInfo: ::std::option::Option<
9663        unsafe extern "C" fn(
9664            rq_itemH: AEGP_RQItemRefH,
9665            outmodH: AEGP_OutputModuleRefH,
9666            is_enabledB: A_Boolean,
9667            stretch_quality: AEGP_StretchQuality,
9668        ) -> A_Err,
9669    >,
9670    pub AEGP_GetCropInfo: ::std::option::Option<
9671        unsafe extern "C" fn(
9672            rq_itemH: AEGP_RQItemRefH,
9673            outmodH: AEGP_OutputModuleRefH,
9674            is_enabledBP: *mut A_Boolean,
9675            crop_rectP: *mut A_Rect,
9676        ) -> A_Err,
9677    >,
9678    pub AEGP_SetCropInfo: ::std::option::Option<
9679        unsafe extern "C" fn(
9680            rq_itemH: AEGP_RQItemRefH,
9681            outmodH: AEGP_OutputModuleRefH,
9682            enableB: A_Boolean,
9683            crop_rect: A_Rect,
9684        ) -> A_Err,
9685    >,
9686    pub AEGP_GetSoundFormatInfo: ::std::option::Option<
9687        unsafe extern "C" fn(
9688            rq_itemH: AEGP_RQItemRefH,
9689            outmodH: AEGP_OutputModuleRefH,
9690            sound_format_infoP: *mut AEGP_SoundDataFormat,
9691            audio_enabledPB: *mut A_Boolean,
9692        ) -> A_Err,
9693    >,
9694    pub AEGP_SetSoundFormatInfo: ::std::option::Option<
9695        unsafe extern "C" fn(
9696            rq_itemH: AEGP_RQItemRefH,
9697            outmodH: AEGP_OutputModuleRefH,
9698            sound_format_info: AEGP_SoundDataFormat,
9699            audio_enabledB: A_Boolean,
9700        ) -> A_Err,
9701    >,
9702    pub AEGP_GetOutputFilePath: ::std::option::Option<
9703        unsafe extern "C" fn(
9704            rq_itemH: AEGP_RQItemRefH,
9705            outmodH: AEGP_OutputModuleRefH,
9706            unicode_pathPH: *mut AEGP_MemHandle,
9707        ) -> A_Err,
9708    >,
9709    pub AEGP_SetOutputFilePath: ::std::option::Option<
9710        unsafe extern "C" fn(
9711            rq_itemH: AEGP_RQItemRefH,
9712            outmodH: AEGP_OutputModuleRefH,
9713            pathZ: *const A_UTF16Char,
9714        ) -> A_Err,
9715    >,
9716    pub AEGP_AddDefaultOutputModule: ::std::option::Option<
9717        unsafe extern "C" fn(
9718            rq_itemH: AEGP_RQItemRefH,
9719            outmodPH: *mut AEGP_OutputModuleRefH,
9720        ) -> A_Err,
9721    >,
9722    pub AEGP_GetExtraOutputModuleInfo: ::std::option::Option<
9723        unsafe extern "C" fn(
9724            rq_itemH: AEGP_RQItemRefH,
9725            outmodH: AEGP_OutputModuleRefH,
9726            format_unicodePH: *mut AEGP_MemHandle,
9727            info__unicodePH: *mut AEGP_MemHandle,
9728            is_sequenceBP: *mut A_Boolean,
9729            multi_frameBP: *mut A_Boolean,
9730        ) -> A_Err,
9731    >,
9732}
9733pub const AEGP_RenderHints_NONE: _bindgen_ty_160 = 0;
9734pub const AEGP_RenderHints_IGNORE_EXTENTS: _bindgen_ty_160 = 1;
9735pub const AEGP_RenderHints_NO_TRANSFER_MODE: _bindgen_ty_160 = 2;
9736pub type _bindgen_ty_160 = ::std::os::raw::c_uint;
9737pub type AEGP_RenderHints = A_u_long;
9738pub const AEGP_RenderReceiptStatus_INVALID: _bindgen_ty_161 = 0;
9739pub const AEGP_RenderReceiptStatus_VALID: _bindgen_ty_161 = 1;
9740pub const AEGP_RenderReceiptStatus_VALID_BUT_INCOMPLETE: _bindgen_ty_161 = 2;
9741pub type _bindgen_ty_161 = ::std::os::raw::c_uint;
9742pub type AEGP_RenderReceiptStatus = A_u_long;
9743pub const AEGP_BinType_NONE: _bindgen_ty_162 = -1;
9744pub const AEGP_BinType_2D: _bindgen_ty_162 = 0;
9745pub const AEGP_BinType_3D: _bindgen_ty_162 = 1;
9746pub type _bindgen_ty_162 = ::std::os::raw::c_int;
9747pub type AEGP_BinType = A_long;
9748pub type AEGP_PlatformWindowRef = *mut ::std::os::raw::c_void;
9749pub const AEGP_DisplayChannel_NONE: _bindgen_ty_163 = 0;
9750pub const AEGP_DisplayChannel_RED: _bindgen_ty_163 = 1;
9751pub const AEGP_DisplayChannel_GREEN: _bindgen_ty_163 = 2;
9752pub const AEGP_DisplayChannel_BLUE: _bindgen_ty_163 = 3;
9753pub const AEGP_DisplayChannel_ALPHA: _bindgen_ty_163 = 4;
9754pub const AEGP_DisplayChannel_RED_ALT: _bindgen_ty_163 = 5;
9755pub const AEGP_DisplayChannel_GREEN_ALT: _bindgen_ty_163 = 6;
9756pub const AEGP_DisplayChannel_BLUE_ALT: _bindgen_ty_163 = 7;
9757pub const AEGP_DisplayChannel_ALPHA_ALT: _bindgen_ty_163 = 8;
9758pub const AEGP_DisplayChannel_NUM_ITEMS: _bindgen_ty_163 = 9;
9759pub type _bindgen_ty_163 = ::std::os::raw::c_uint;
9760pub type AEGP_DisplayChannelType = A_long;
9761pub const AEGP_RenderNumEffects_ALL_EFFECTS: _bindgen_ty_164 = -1;
9762pub type _bindgen_ty_164 = ::std::os::raw::c_int;
9763pub type AEGP_NumEffectsToRenderType = A_short;
9764#[repr(C)]
9765#[derive(Debug, Copy, Clone)]
9766pub struct AEGP_CanvasSuite8 {
9767    pub AEGP_GetCompToRender: ::std::option::Option<
9768        unsafe extern "C" fn(render_contextH: PR_RenderContextH, compPH: *mut AEGP_CompH) -> A_Err,
9769    >,
9770    pub AEGP_GetNumLayersToRender: ::std::option::Option<
9771        unsafe extern "C" fn(
9772            render_contextH: PR_RenderContextH,
9773            num_to_renderPL: *mut A_long,
9774        ) -> A_Err,
9775    >,
9776    pub AEGP_GetNthLayerContextToRender: ::std::option::Option<
9777        unsafe extern "C" fn(
9778            render_contextH: PR_RenderContextH,
9779            n: A_long,
9780            layer_contextPH: *mut AEGP_RenderLayerContextH,
9781        ) -> A_Err,
9782    >,
9783    pub AEGP_GetLayerFromLayerContext: ::std::option::Option<
9784        unsafe extern "C" fn(
9785            render_contextH: PR_RenderContextH,
9786            layer_contextH: AEGP_RenderLayerContextH,
9787            layerPH: *mut AEGP_LayerH,
9788        ) -> A_Err,
9789    >,
9790    pub AEGP_GetLayerAndSubLayerFromLayerContext: ::std::option::Option<
9791        unsafe extern "C" fn(
9792            render_contextH: PR_RenderContextH,
9793            layer_contextH: AEGP_RenderLayerContextH,
9794            layerPH: *mut AEGP_LayerH,
9795            sublayerP: *mut AEGP_SubLayerIndex,
9796        ) -> A_Err,
9797    >,
9798    #[doc = " With collapsed geometrics \"on\" this gives the layer in the root comp\n contining the layer context. With collapsed geometrics off\n this is the same as AEGP_GetLayerFromLayerContext.\n"]
9799    pub AEGP_GetTopLayerFromLayerContext: ::std::option::Option<
9800        unsafe extern "C" fn(
9801            render_contextH: PR_RenderContextH,
9802            layer_contextH: AEGP_RenderLayerContextH,
9803            layerPH: *mut AEGP_LayerH,
9804        ) -> A_Err,
9805    >,
9806    pub AEGP_GetCompRenderTime: ::std::option::Option<
9807        unsafe extern "C" fn(
9808            render_contextH: PR_RenderContextH,
9809            time: *mut A_Time,
9810            time_step: *mut A_Time,
9811        ) -> A_Err,
9812    >,
9813    pub AEGP_GetCompDestinationBuffer: ::std::option::Option<
9814        unsafe extern "C" fn(
9815            render_contextH: PR_RenderContextH,
9816            compH: AEGP_CompH,
9817            dst: *mut AEGP_WorldH,
9818        ) -> A_Err,
9819    >,
9820    pub AEGP_GetROI: ::std::option::Option<
9821        unsafe extern "C" fn(render_contextH: PR_RenderContextH, roiPR: *mut A_LegacyRect) -> A_Err,
9822    >,
9823    pub AEGP_RenderTexture: ::std::option::Option<
9824        unsafe extern "C" fn(
9825            render_contextH: PR_RenderContextH,
9826            layer_contextH: AEGP_RenderLayerContextH,
9827            render_hints: AEGP_RenderHints,
9828            suggested_scaleP0: *mut A_FloatPoint,
9829            suggested_src_rectP0: *mut A_FloatRect,
9830            src_matrixP0: *mut A_Matrix3,
9831            dstPH: *mut AEGP_WorldH,
9832        ) -> A_Err,
9833    >,
9834    pub AEGP_DisposeTexture: ::std::option::Option<
9835        unsafe extern "C" fn(
9836            render_contextH: PR_RenderContextH,
9837            layer_contextH: AEGP_RenderLayerContextH,
9838            dstH0: AEGP_WorldH,
9839        ) -> A_Err,
9840    >,
9841    pub AEGP_GetFieldRender: ::std::option::Option<
9842        unsafe extern "C" fn(render_contextH: PR_RenderContextH, field: *mut PF_Field) -> A_Err,
9843    >,
9844    pub AEGP_ReportArtisanProgress: ::std::option::Option<
9845        unsafe extern "C" fn(
9846            render_contextH: PR_RenderContextH,
9847            countL: A_long,
9848            totalL: A_long,
9849        ) -> A_Err,
9850    >,
9851    pub AEGP_GetRenderDownsampleFactor: ::std::option::Option<
9852        unsafe extern "C" fn(
9853            render_contextH: PR_RenderContextH,
9854            dsfP: *mut AEGP_DownsampleFactor,
9855        ) -> A_Err,
9856    >,
9857    pub AEGP_SetRenderDownsampleFactor: ::std::option::Option<
9858        unsafe extern "C" fn(
9859            render_contextH: PR_RenderContextH,
9860            dsfP: *mut AEGP_DownsampleFactor,
9861        ) -> A_Err,
9862    >,
9863    pub AEGP_IsBlankCanvas: ::std::option::Option<
9864        unsafe extern "C" fn(
9865            render_contextH: PR_RenderContextH,
9866            is_blankPB: *mut A_Boolean,
9867        ) -> A_Err,
9868    >,
9869    pub AEGP_GetRenderLayerToWorldXform: ::std::option::Option<
9870        unsafe extern "C" fn(
9871            render_contextH: PR_RenderContextH,
9872            layer_contextH: AEGP_RenderLayerContextH,
9873            comp_timeP: *const A_Time,
9874            transform: *mut A_Matrix4,
9875        ) -> A_Err,
9876    >,
9877    pub AEGP_GetRenderLayerBounds: ::std::option::Option<
9878        unsafe extern "C" fn(
9879            render_contextH: PR_RenderContextH,
9880            layer_contextH: AEGP_RenderLayerContextH,
9881            comp_timeP: *const A_Time,
9882            boundsP: *mut A_LegacyRect,
9883        ) -> A_Err,
9884    >,
9885    pub AEGP_GetRenderOpacity: ::std::option::Option<
9886        unsafe extern "C" fn(
9887            render_contextH: PR_RenderContextH,
9888            layer_contextH: AEGP_RenderLayerContextH,
9889            comp_timePT: *const A_Time,
9890            opacityPF: *mut A_FpLong,
9891        ) -> A_Err,
9892    >,
9893    pub AEGP_IsRenderLayerActive: ::std::option::Option<
9894        unsafe extern "C" fn(
9895            render_contextH: PR_RenderContextH,
9896            layer_contextH: AEGP_RenderLayerContextH,
9897            comp_timePT: *const A_Time,
9898            activePB: *mut A_Boolean,
9899        ) -> A_Err,
9900    >,
9901    pub AEGP_SetArtisanLayerProgress: ::std::option::Option<
9902        unsafe extern "C" fn(
9903            render_contextH: PR_RenderContextH,
9904            countL: A_long,
9905            num_layersL: A_long,
9906        ) -> A_Err,
9907    >,
9908    pub AEGP_RenderLayerPlus: ::std::option::Option<
9909        unsafe extern "C" fn(
9910            render_contextH: PR_RenderContextH,
9911            layerH: AEGP_LayerH,
9912            layer_contextH: AEGP_RenderLayerContextH,
9913            render_hints: AEGP_RenderHints,
9914            render_bufferPH: *mut AEGP_WorldH,
9915        ) -> A_Err,
9916    >,
9917    pub AEGP_GetTrackMatteContext: ::std::option::Option<
9918        unsafe extern "C" fn(
9919            render_contextH: PR_RenderContextH,
9920            fill_contextH: AEGP_RenderLayerContextH,
9921            matte_contextPH: *mut AEGP_RenderLayerContextH,
9922        ) -> A_Err,
9923    >,
9924    pub AEGP_RenderTextureWithReceipt: ::std::option::Option<
9925        unsafe extern "C" fn(
9926            render_contextH: PR_RenderContextH,
9927            layer_contextH: AEGP_RenderLayerContextH,
9928            render_hints: AEGP_RenderHints,
9929            num_effectsS: AEGP_NumEffectsToRenderType,
9930            suggested_scaleP0: *mut A_FloatPoint,
9931            suggested_src_rectP0: *mut A_FloatRect,
9932            src_matrixP0: *mut A_Matrix3,
9933            render_receiptPH: *mut AEGP_RenderReceiptH,
9934            dstPH: *mut AEGP_WorldH,
9935        ) -> A_Err,
9936    >,
9937    pub AEGP_GetNumberOfSoftwareEffects: ::std::option::Option<
9938        unsafe extern "C" fn(
9939            render_contextH: PR_RenderContextH,
9940            layer_contextH: AEGP_RenderLayerContextH,
9941            num_software_effectsPS: *mut A_short,
9942        ) -> A_Err,
9943    >,
9944    pub AEGP_RenderLayerPlusWithReceipt: ::std::option::Option<
9945        unsafe extern "C" fn(
9946            render_contextH: PR_RenderContextH,
9947            layerH: AEGP_LayerH,
9948            layer_contextH: AEGP_RenderLayerContextH,
9949            render_hints: AEGP_RenderHints,
9950            render_receiptPH: *mut AEGP_RenderReceiptH,
9951            render_bufferPH: *mut AEGP_WorldH,
9952        ) -> A_Err,
9953    >,
9954    pub AEGP_DisposeRenderReceipt:
9955        ::std::option::Option<unsafe extern "C" fn(render_receiptH: AEGP_RenderReceiptH) -> A_Err>,
9956    pub AEGP_CheckRenderReceipt: ::std::option::Option<
9957        unsafe extern "C" fn(
9958            current_render_contextH: PR_RenderContextH,
9959            current_layer_contextH: AEGP_RenderLayerContextH,
9960            old_render_receiptH: AEGP_RenderReceiptH,
9961            check_geometricsB: A_Boolean,
9962            num_effectsS: AEGP_NumEffectsToRenderType,
9963            receipt_statusP: *mut AEGP_RenderReceiptStatus,
9964        ) -> A_Err,
9965    >,
9966    pub AEGP_GenerateRenderReceipt: ::std::option::Option<
9967        unsafe extern "C" fn(
9968            current_render_contextH: PR_RenderContextH,
9969            current_layer_contextH: AEGP_RenderLayerContextH,
9970            num_effectsS: AEGP_NumEffectsToRenderType,
9971            render_receiptPH: *mut AEGP_RenderReceiptH,
9972        ) -> A_Err,
9973    >,
9974    pub AEGP_GetNumBinsToRender: ::std::option::Option<
9975        unsafe extern "C" fn(
9976            render_contextH: PR_RenderContextH,
9977            num_bins_to_renderPL: *mut A_long,
9978        ) -> A_Err,
9979    >,
9980    pub AEGP_SetNthBin: ::std::option::Option<
9981        unsafe extern "C" fn(render_contextH: PR_RenderContextH, n: A_long) -> A_Err,
9982    >,
9983    pub AEGP_GetBinType: ::std::option::Option<
9984        unsafe extern "C" fn(
9985            render_contextH: PR_RenderContextH,
9986            bin_typeP: *mut AEGP_BinType,
9987        ) -> A_Err,
9988    >,
9989    pub AEGP_GetRenderLayerToWorldXform2D3D: ::std::option::Option<
9990        unsafe extern "C" fn(
9991            render_contextH: PR_RenderContextH,
9992            layer_contextH: AEGP_RenderLayerContextH,
9993            comp_timeP: *const A_Time,
9994            only_2dB: A_Boolean,
9995            transform: *mut A_Matrix4,
9996        ) -> A_Err,
9997    >,
9998    pub AEGP_GetPlatformWindowRef: ::std::option::Option<
9999        unsafe extern "C" fn(
10000            render_contextH: PR_RenderContextH,
10001            window_refP: *mut AEGP_PlatformWindowRef,
10002        ) -> A_Err,
10003    >,
10004    pub AEGP_GetViewportScale: ::std::option::Option<
10005        unsafe extern "C" fn(
10006            render_contextH: PR_RenderContextH,
10007            scale_xPF: *mut A_FpLong,
10008            scale_yPF: *mut A_FpLong,
10009        ) -> A_Err,
10010    >,
10011    pub AEGP_GetViewportOrigin: ::std::option::Option<
10012        unsafe extern "C" fn(
10013            render_contextH: PR_RenderContextH,
10014            origin_xPL: *mut A_long,
10015            origin_yPL: *mut A_long,
10016        ) -> A_Err,
10017    >,
10018    pub AEGP_GetViewportRect: ::std::option::Option<
10019        unsafe extern "C" fn(
10020            render_contextH: PR_RenderContextH,
10021            viewport_rectPR: *mut A_LegacyRect,
10022        ) -> A_Err,
10023    >,
10024    pub AEGP_GetFallowColor: ::std::option::Option<
10025        unsafe extern "C" fn(
10026            render_contextH: PR_RenderContextH,
10027            fallow_colorP: *mut PF_Pixel8,
10028        ) -> A_Err,
10029    >,
10030    pub AEGP_GetInteractiveBuffer: ::std::option::Option<
10031        unsafe extern "C" fn(render_contextH: PR_RenderContextH, buffer: *mut AEGP_WorldH) -> A_Err,
10032    >,
10033    pub AEGP_GetInteractiveCheckerboard: ::std::option::Option<
10034        unsafe extern "C" fn(
10035            render_contextH: PR_RenderContextH,
10036            checkerboard_onPB: *mut A_Boolean,
10037        ) -> A_Err,
10038    >,
10039    pub AEGP_GetInteractiveCheckerboardColors: ::std::option::Option<
10040        unsafe extern "C" fn(
10041            render_contextH: PR_RenderContextH,
10042            checkerboard_color1P: *mut PF_Pixel,
10043            checkerboard_color2P: *mut PF_Pixel,
10044        ) -> A_Err,
10045    >,
10046    pub AEGP_GetInteractiveCheckerboardSize: ::std::option::Option<
10047        unsafe extern "C" fn(
10048            render_contextH: PR_RenderContextH,
10049            checkerboard_widthPLu: *mut A_u_long,
10050            checkerboard_heightPLu: *mut A_u_long,
10051        ) -> A_Err,
10052    >,
10053    pub AEGP_GetInteractiveCachedBuffer: ::std::option::Option<
10054        unsafe extern "C" fn(render_contextH: PR_RenderContextH, buffer: *mut AEGP_WorldH) -> A_Err,
10055    >,
10056    pub AEGP_ArtisanMustRenderAsLayer: ::std::option::Option<
10057        unsafe extern "C" fn(
10058            render_contextH: PR_RenderContextH,
10059            layer_contextH: AEGP_RenderLayerContextH,
10060            use_render_texturePB: *mut A_Boolean,
10061        ) -> A_Err,
10062    >,
10063    pub AEGP_GetInteractiveDisplayChannel: ::std::option::Option<
10064        unsafe extern "C" fn(
10065            render_contextH: PR_RenderContextH,
10066            display_channelP: *mut AEGP_DisplayChannelType,
10067        ) -> A_Err,
10068    >,
10069    pub AEGP_GetInteractiveExposure: ::std::option::Option<
10070        unsafe extern "C" fn(
10071            render_contextH: PR_RenderContextH,
10072            exposurePF: *mut A_FpLong,
10073        ) -> A_Err,
10074    >,
10075    pub AEGP_GetColorTransform: ::std::option::Option<
10076        unsafe extern "C" fn(
10077            render_contextH: PR_RenderContextH,
10078            cms_onB: *mut A_Boolean,
10079            xform_keyLu: *mut A_u_long,
10080            xformP: *mut ::std::os::raw::c_void,
10081        ) -> A_Err,
10082    >,
10083    pub AEGP_GetCompShutterTime: ::std::option::Option<
10084        unsafe extern "C" fn(
10085            render_contextH: PR_RenderContextH,
10086            shutter_time: *mut A_Time,
10087            shutter_dur: *mut A_Time,
10088        ) -> A_Err,
10089    >,
10090    pub AEGP_MapCompToLayerTime: ::std::option::Option<
10091        unsafe extern "C" fn(
10092            render_contextH: PR_RenderContextH,
10093            layer_contextH: AEGP_RenderLayerContextH,
10094            comp_timePT: *const A_Time,
10095            layer_timePT: *mut A_Time,
10096        ) -> A_Err,
10097    >,
10098}
10099#[repr(C)]
10100#[derive(Debug, Copy, Clone)]
10101pub struct AEGP_ArtisanUtilSuite1 {
10102    pub AEGP_GetGlobalContextFromInstanceContext: ::std::option::Option<
10103        unsafe extern "C" fn(
10104            instance_contextH: PR_InstanceContextH,
10105            global_contextPH: *mut PR_GlobalContextH,
10106        ) -> A_Err,
10107    >,
10108    pub AEGP_GetInstanceContextFromRenderContext: ::std::option::Option<
10109        unsafe extern "C" fn(
10110            render_contextH: PR_RenderContextH,
10111            instance_contextPH: *mut PR_InstanceContextH,
10112        ) -> A_Err,
10113    >,
10114    pub AEGP_GetInstanceContextFromQueryContext: ::std::option::Option<
10115        unsafe extern "C" fn(
10116            query_contextH: PR_QueryContextH,
10117            instance_contextPH: *mut PR_InstanceContextH,
10118        ) -> A_Err,
10119    >,
10120    pub AEGP_GetGlobalData: ::std::option::Option<
10121        unsafe extern "C" fn(
10122            global_contextH: PR_GlobalContextH,
10123            global_dataPH: *mut PR_GlobalDataH,
10124        ) -> A_Err,
10125    >,
10126    pub AEGP_GetInstanceData: ::std::option::Option<
10127        unsafe extern "C" fn(
10128            instance_contextH: PR_InstanceContextH,
10129            instance_dataPH: *mut PR_InstanceDataH,
10130        ) -> A_Err,
10131    >,
10132    pub AEGP_GetRenderData: ::std::option::Option<
10133        unsafe extern "C" fn(
10134            render_contextH: PR_RenderContextH,
10135            render_dataPH: *mut PR_RenderDataH,
10136        ) -> A_Err,
10137    >,
10138}
10139#[repr(C)]
10140#[derive(Debug, Copy, Clone)]
10141pub struct AEGP_CameraSuite2 {
10142    pub AEGP_GetCamera: ::std::option::Option<
10143        unsafe extern "C" fn(
10144            render_contextH: PR_RenderContextH,
10145            comp_timeP: *const A_Time,
10146            camera_layerPH: *mut AEGP_LayerH,
10147        ) -> A_Err,
10148    >,
10149    pub AEGP_GetCameraType: ::std::option::Option<
10150        unsafe extern "C" fn(
10151            camera_layerH: AEGP_LayerH,
10152            camera_typeP: *mut AEGP_CameraType,
10153        ) -> A_Err,
10154    >,
10155    pub AEGP_GetDefaultCameraDistanceToImagePlane: ::std::option::Option<
10156        unsafe extern "C" fn(compH: AEGP_CompH, dist_to_planePF: *mut A_FpLong) -> A_Err,
10157    >,
10158    pub AEGP_GetCameraFilmSize: ::std::option::Option<
10159        unsafe extern "C" fn(
10160            camera_layerH: AEGP_LayerH,
10161            film_size_unitsP: *mut AEGP_FilmSizeUnits,
10162            film_sizePF0: *mut A_FpLong,
10163        ) -> A_Err,
10164    >,
10165    pub AEGP_SetCameraFilmSize: ::std::option::Option<
10166        unsafe extern "C" fn(
10167            camera_layerH: AEGP_LayerH,
10168            film_size_units: AEGP_FilmSizeUnits,
10169            film_sizePF0: *mut A_FpLong,
10170        ) -> A_Err,
10171    >,
10172}
10173#[repr(C)]
10174#[derive(Debug, Copy, Clone)]
10175pub struct AEGP_LightSuite2 {
10176    pub AEGP_GetLightType: ::std::option::Option<
10177        unsafe extern "C" fn(light_layerH: AEGP_LayerH, light_typeP: *mut AEGP_LightType) -> A_Err,
10178    >,
10179    pub AEGP_SetLightType: ::std::option::Option<
10180        unsafe extern "C" fn(light_layerH: AEGP_LayerH, light_type: AEGP_LightType) -> A_Err,
10181    >,
10182}
10183#[repr(C)]
10184#[derive(Debug, Copy, Clone)]
10185pub struct AEGP_LightSuite3 {
10186    pub AEGP_GetLightType: ::std::option::Option<
10187        unsafe extern "C" fn(light_layerH: AEGP_LayerH, light_typeP: *mut AEGP_LightType) -> A_Err,
10188    >,
10189    pub AEGP_SetLightType: ::std::option::Option<
10190        unsafe extern "C" fn(light_layerH: AEGP_LayerH, light_type: AEGP_LightType) -> A_Err,
10191    >,
10192    pub AEGP_GetLightSource: ::std::option::Option<
10193        unsafe extern "C" fn(light_layerH: AEGP_LayerH, light_sourcePH: *mut AEGP_LayerH) -> A_Err,
10194    >,
10195    pub AEGP_SetLightSource: ::std::option::Option<
10196        unsafe extern "C" fn(light_layerH: AEGP_LayerH, light_sourceH: AEGP_LayerH) -> A_Err,
10197    >,
10198}
10199pub const AEGP_Query_Xform_LAYER: _bindgen_ty_165 = 0;
10200pub const AEGP_Query_Xform_WORLD: _bindgen_ty_165 = 1;
10201pub const AEGP_Query_Xform_VIEW: _bindgen_ty_165 = 2;
10202pub const AEGP_Query_Xform_SCREEN: _bindgen_ty_165 = 3;
10203#[doc = " the type of source or dst transformation wanted"]
10204pub type _bindgen_ty_165 = ::std::os::raw::c_uint;
10205pub type AEGP_QueryXformType = A_u_long;
10206#[repr(C)]
10207#[derive(Debug, Copy, Clone)]
10208pub struct AEGP_QueryXformSuite2 {
10209    pub AEGP_QueryXformGetSrcType: ::std::option::Option<
10210        unsafe extern "C" fn(
10211            query_contextH: PR_QueryContextH,
10212            src_type: *mut AEGP_QueryXformType,
10213        ) -> A_Err,
10214    >,
10215    pub AEGP_QueryXformGetDstType: ::std::option::Option<
10216        unsafe extern "C" fn(
10217            query_contextH: PR_QueryContextH,
10218            dst_type: *mut AEGP_QueryXformType,
10219        ) -> A_Err,
10220    >,
10221    pub AEGP_QueryXformGetLayer: ::std::option::Option<
10222        unsafe extern "C" fn(query_contextH: PR_QueryContextH, layerPH: *mut AEGP_LayerH) -> A_Err,
10223    >,
10224    pub AEGP_QueryXformGetComp: ::std::option::Option<
10225        unsafe extern "C" fn(query_contextH: PR_QueryContextH, compPH: *mut AEGP_CompH) -> A_Err,
10226    >,
10227    pub AEGP_QueryXformGetTransformTime: ::std::option::Option<
10228        unsafe extern "C" fn(query_contextH: PR_QueryContextH, time: *mut A_Time) -> A_Err,
10229    >,
10230    pub AEGP_QueryXformGetViewTime: ::std::option::Option<
10231        unsafe extern "C" fn(query_contextH: PR_QueryContextH, time: *mut A_Time) -> A_Err,
10232    >,
10233    pub AEGP_QueryXformGetCamera: ::std::option::Option<
10234        unsafe extern "C" fn(
10235            query_contextH: PR_QueryContextH,
10236            camera_layerPH: *mut AEGP_LayerH,
10237        ) -> A_Err,
10238    >,
10239    pub AEGP_QueryXformGetXform: ::std::option::Option<
10240        unsafe extern "C" fn(query_contextH: PR_QueryContextH, xform: *mut A_Matrix4) -> A_Err,
10241    >,
10242    pub AEGP_QueryXformSetXform: ::std::option::Option<
10243        unsafe extern "C" fn(query_contextH: PR_QueryContextH, xform: *mut A_Matrix4) -> A_Err,
10244    >,
10245    pub AEGP_QueryWindowRef: ::std::option::Option<
10246        unsafe extern "C" fn(
10247            query_contextH: PR_QueryContextH,
10248            window_refP: *mut AEGP_PlatformWindowRef,
10249        ) -> A_Err,
10250    >,
10251    pub AEGP_QueryWindowClear: ::std::option::Option<
10252        unsafe extern "C" fn(
10253            query_contextH: PR_QueryContextH,
10254            window_refP: *mut AEGP_PlatformWindowRef,
10255            boundsPR: *mut A_LegacyRect,
10256        ) -> A_Err,
10257    >,
10258    pub AEGP_QueryFrozenProxy: ::std::option::Option<
10259        unsafe extern "C" fn(query_contextH: PR_QueryContextH, onPB: *mut A_Boolean) -> A_Err,
10260    >,
10261    pub AEGP_QuerySwapBuffer: ::std::option::Option<
10262        unsafe extern "C" fn(
10263            query_contextH: PR_QueryContextH,
10264            window_refP: *mut AEGP_PlatformWindowRef,
10265            dest_bufferp: *mut AEGP_WorldH,
10266        ) -> A_Err,
10267    >,
10268    pub AEGP_QueryDrawProcs: ::std::option::Option<
10269        unsafe extern "C" fn(
10270            query_contextH: PR_QueryContextH,
10271            window_refP: *mut PR_InteractiveDrawProcs,
10272        ) -> A_Err,
10273    >,
10274    pub AEGP_QueryPrepareForLineDrawing: ::std::option::Option<
10275        unsafe extern "C" fn(
10276            query_contextH: PR_QueryContextH,
10277            window_refP: *mut AEGP_PlatformWindowRef,
10278            viewportP: *mut A_LegacyRect,
10279            originP: *mut A_LPoint,
10280            scaleP: *mut A_FloatPoint,
10281        ) -> A_Err,
10282    >,
10283    pub AEGP_QueryUnprepareForLineDrawing: ::std::option::Option<
10284        unsafe extern "C" fn(
10285            query_contextH: PR_QueryContextH,
10286            window_refP: *mut AEGP_PlatformWindowRef,
10287        ) -> A_Err,
10288    >,
10289    pub AEGP_QueryGetData: ::std::option::Option<
10290        unsafe extern "C" fn(
10291            query_contextH: PR_QueryContextH,
10292            i: A_long,
10293            dataPP: *mut *mut ::std::os::raw::c_void,
10294        ) -> A_Err,
10295    >,
10296    pub AEGP_QuerySetData: ::std::option::Option<
10297        unsafe extern "C" fn(
10298            query_contextH: PR_QueryContextH,
10299            i: A_long,
10300            dataP: *mut ::std::os::raw::c_void,
10301        ) -> A_Err,
10302    >,
10303}
10304#[repr(C)]
10305#[derive(Debug, Copy, Clone)]
10306pub struct AEGP_CompositeSuite2 {
10307    pub AEGP_ClearAlphaExceptRect: ::std::option::Option<
10308        unsafe extern "C" fn(clipped_dest_rectPR: *mut A_Rect, dstP: *mut PF_EffectWorld) -> A_Err,
10309    >,
10310    pub AEGP_PrepTrackMatte: ::std::option::Option<
10311        unsafe extern "C" fn(
10312            num_pix: A_long,
10313            deepB: A_Boolean,
10314            src_mask: *const PF_Pixel,
10315            mask_flags: PF_MaskFlags,
10316            dst_mask: *mut PF_Pixel,
10317        ) -> A_Err,
10318    >,
10319    pub AEGP_TransferRect: ::std::option::Option<
10320        unsafe extern "C" fn(
10321            quality: PF_Quality,
10322            m_flags: PF_ModeFlags,
10323            field: PF_Field,
10324            src_rec: *const A_Rect,
10325            src_world: *const PF_EffectWorld,
10326            comp_mode: *const PF_CompositeMode,
10327            blend_tablesP0: PF_EffectBlendingTables,
10328            mask_world0: *const PF_MaskWorld,
10329            dest_x: A_long,
10330            dest_y: A_long,
10331            dst_world: *mut PF_EffectWorld,
10332        ) -> A_Err,
10333    >,
10334    pub AEGP_CopyBits_LQ: ::std::option::Option<
10335        unsafe extern "C" fn(
10336            src_worldP: *mut PF_EffectWorld,
10337            src_r: *mut A_Rect,
10338            dst_r: *mut A_Rect,
10339            dst_worldP: *mut PF_EffectWorld,
10340        ) -> A_Err,
10341    >,
10342    pub AEGP_CopyBits_HQ_Straight: ::std::option::Option<
10343        unsafe extern "C" fn(
10344            src: *mut PF_EffectWorld,
10345            src_r: *mut A_Rect,
10346            dst_r: *mut A_Rect,
10347            dst: *mut PF_EffectWorld,
10348        ) -> A_Err,
10349    >,
10350    pub AEGP_CopyBits_HQ_Premul: ::std::option::Option<
10351        unsafe extern "C" fn(
10352            src: *mut PF_EffectWorld,
10353            src_r: *mut A_Rect,
10354            dst_r: *mut A_Rect,
10355            dst: *mut PF_EffectWorld,
10356        ) -> A_Err,
10357    >,
10358}
10359#[repr(C)]
10360#[derive(Debug, Copy, Clone)]
10361pub struct AEGP_IterateSuite2 {
10362    pub AEGP_GetNumThreads:
10363        ::std::option::Option<unsafe extern "C" fn(num_threadsPL: *mut A_long) -> A_Err>,
10364    pub AEGP_IterateGeneric: ::std::option::Option<
10365        unsafe extern "C" fn(
10366            iterationsL: A_long,
10367            refconPV: *mut ::std::os::raw::c_void,
10368            fn_func: ::std::option::Option<
10369                unsafe extern "C" fn(
10370                    refconPV: *mut ::std::os::raw::c_void,
10371                    thread_indexL: A_long,
10372                    i: A_long,
10373                    iterationsL: A_long,
10374                ) -> A_Err,
10375            >,
10376        ) -> A_Err,
10377    >,
10378}
10379pub type AEGP_PluginInitFuncPrototype = ::std::option::Option<
10380    unsafe extern "C" fn(
10381        pica_basicP: *mut SPBasicSuite,
10382        driver_major_versionL: A_long,
10383        driver_minor_versionL: A_long,
10384        aegp_plugin_id: AEGP_PluginID,
10385        plugin_refconP: *mut AEGP_GlobalRefcon,
10386    ) -> A_Err,
10387>;
10388pub type AEGP_PluginInitFunc = AEGP_PluginInitFuncPrototype;
10389#[repr(C)]
10390#[derive(Debug, Copy, Clone)]
10391pub struct AEGP_PFInterfaceSuite1 {
10392    pub AEGP_GetEffectLayer: ::std::option::Option<
10393        unsafe extern "C" fn(effect_pp_ref: PF_ProgPtr, layerPH: *mut AEGP_LayerH) -> A_Err,
10394    >,
10395    pub AEGP_GetNewEffectForEffect: ::std::option::Option<
10396        unsafe extern "C" fn(
10397            aegp_plugin_id: AEGP_PluginID,
10398            effect_pp_ref: PF_ProgPtr,
10399            effect_refPH: *mut AEGP_EffectRefH,
10400        ) -> A_Err,
10401    >,
10402    pub AEGP_ConvertEffectToCompTime: ::std::option::Option<
10403        unsafe extern "C" fn(
10404            effect_pp_ref: PF_ProgPtr,
10405            what_timeL: A_long,
10406            time_scaleLu: A_u_long,
10407            comp_timePT: *mut A_Time,
10408        ) -> A_Err,
10409    >,
10410    pub AEGP_GetEffectCamera: ::std::option::Option<
10411        unsafe extern "C" fn(
10412            effect_pp_ref: PF_ProgPtr,
10413            comp_timePT: *const A_Time,
10414            camera_layerPH: *mut AEGP_LayerH,
10415        ) -> A_Err,
10416    >,
10417    pub AEGP_GetEffectCameraMatrix: ::std::option::Option<
10418        unsafe extern "C" fn(
10419            effect_pp_ref: PF_ProgPtr,
10420            comp_timePT: *const A_Time,
10421            camera_matrixP: *mut A_Matrix4,
10422            dist_to_image_planePF: *mut A_FpLong,
10423            image_plane_widthPL: *mut A_short,
10424            image_plane_heightPL: *mut A_short,
10425        ) -> A_Err,
10426    >,
10427}
10428pub type AEIO_FileSize = A_u_longlong;
10429pub type AEIO_DataRange = A_long;
10430pub type AEIO_ColorModel = A_long;
10431pub type AEIO_Colorimetry = A_long;
10432#[repr(C)]
10433#[derive(Debug, Copy, Clone)]
10434pub struct AEGP_IOInSuite7 {
10435    pub AEGP_GetInSpecOptionsHandle: ::std::option::Option<
10436        unsafe extern "C" fn(
10437            inH: AEIO_InSpecH,
10438            optionsPPV: *mut *mut ::std::os::raw::c_void,
10439        ) -> A_Err,
10440    >,
10441    pub AEGP_SetInSpecOptionsHandle: ::std::option::Option<
10442        unsafe extern "C" fn(
10443            inH: AEIO_InSpecH,
10444            optionsPV: *mut ::std::os::raw::c_void,
10445            old_optionsPPV: *mut *mut ::std::os::raw::c_void,
10446        ) -> A_Err,
10447    >,
10448    pub AEGP_GetInSpecFilePath: ::std::option::Option<
10449        unsafe extern "C" fn(inH: AEIO_InSpecH, unicode_pathPH: *mut AEGP_MemHandle) -> A_Err,
10450    >,
10451    pub AEGP_GetInSpecNativeFPS: ::std::option::Option<
10452        unsafe extern "C" fn(inH: AEIO_InSpecH, native_fpsP: *mut A_Fixed) -> A_Err,
10453    >,
10454    pub AEGP_SetInSpecNativeFPS: ::std::option::Option<
10455        unsafe extern "C" fn(inH: AEIO_InSpecH, native_fps: A_Fixed) -> A_Err,
10456    >,
10457    pub AEGP_GetInSpecDepth: ::std::option::Option<
10458        unsafe extern "C" fn(inH: AEIO_InSpecH, depthPS: *mut A_short) -> A_Err,
10459    >,
10460    pub AEGP_SetInSpecDepth:
10461        ::std::option::Option<unsafe extern "C" fn(inH: AEIO_InSpecH, depthS: A_short) -> A_Err>,
10462    pub AEGP_GetInSpecSize: ::std::option::Option<
10463        unsafe extern "C" fn(inH: AEIO_InSpecH, sizePL: *mut AEIO_FileSize) -> A_Err,
10464    >,
10465    pub AEGP_SetInSpecSize: ::std::option::Option<
10466        unsafe extern "C" fn(inH: AEIO_InSpecH, sizeL: AEIO_FileSize) -> A_Err,
10467    >,
10468    pub AEGP_GetInSpecInterlaceLabel: ::std::option::Option<
10469        unsafe extern "C" fn(inH: AEIO_InSpecH, interlaceP: *mut FIEL_Label) -> A_Err,
10470    >,
10471    pub AEGP_SetInSpecInterlaceLabel: ::std::option::Option<
10472        unsafe extern "C" fn(inH: AEIO_InSpecH, interlaceP: *const FIEL_Label) -> A_Err,
10473    >,
10474    pub AEGP_GetInSpecAlphaLabel: ::std::option::Option<
10475        unsafe extern "C" fn(inH: AEIO_InSpecH, alphaP: *mut AEIO_AlphaLabel) -> A_Err,
10476    >,
10477    pub AEGP_SetInSpecAlphaLabel: ::std::option::Option<
10478        unsafe extern "C" fn(inH: AEIO_InSpecH, alphaP: *const AEIO_AlphaLabel) -> A_Err,
10479    >,
10480    pub AEGP_GetInSpecDuration: ::std::option::Option<
10481        unsafe extern "C" fn(inH: AEIO_InSpecH, durationP: *mut A_Time) -> A_Err,
10482    >,
10483    pub AEGP_SetInSpecDuration: ::std::option::Option<
10484        unsafe extern "C" fn(inH: AEIO_InSpecH, durationP: *const A_Time) -> A_Err,
10485    >,
10486    pub AEGP_GetInSpecDimensions: ::std::option::Option<
10487        unsafe extern "C" fn(
10488            inH: AEIO_InSpecH,
10489            widthPL0: *mut A_long,
10490            heightPL0: *mut A_long,
10491        ) -> A_Err,
10492    >,
10493    pub AEGP_SetInSpecDimensions: ::std::option::Option<
10494        unsafe extern "C" fn(inH: AEIO_InSpecH, widthL: A_long, heightL: A_long) -> A_Err,
10495    >,
10496    pub AEGP_InSpecGetRationalDimensions: ::std::option::Option<
10497        unsafe extern "C" fn(
10498            inH: AEIO_InSpecH,
10499            rs0: *const AEIO_RationalScale,
10500            width0: *mut A_long,
10501            height0: *mut A_long,
10502            r0: *mut A_Rect,
10503        ) -> A_Err,
10504    >,
10505    pub AEGP_GetInSpecHSF:
10506        ::std::option::Option<unsafe extern "C" fn(inH: AEIO_InSpecH, hsfP: *mut A_Ratio) -> A_Err>,
10507    pub AEGP_SetInSpecHSF: ::std::option::Option<
10508        unsafe extern "C" fn(inH: AEIO_InSpecH, hsfP: *const A_Ratio) -> A_Err,
10509    >,
10510    pub AEGP_GetInSpecSoundRate: ::std::option::Option<
10511        unsafe extern "C" fn(inH: AEIO_InSpecH, ratePF: *mut A_FpLong) -> A_Err,
10512    >,
10513    pub AEGP_SetInSpecSoundRate:
10514        ::std::option::Option<unsafe extern "C" fn(inH: AEIO_InSpecH, rateF: A_FpLong) -> A_Err>,
10515    pub AEGP_GetInSpecSoundEncoding: ::std::option::Option<
10516        unsafe extern "C" fn(inH: AEIO_InSpecH, encodingP: *mut AEIO_SndEncoding) -> A_Err,
10517    >,
10518    pub AEGP_SetInSpecSoundEncoding: ::std::option::Option<
10519        unsafe extern "C" fn(inH: AEIO_InSpecH, encoding: AEIO_SndEncoding) -> A_Err,
10520    >,
10521    pub AEGP_GetInSpecSoundSampleSize: ::std::option::Option<
10522        unsafe extern "C" fn(
10523            inH: AEIO_InSpecH,
10524            bytes_per_sampleP: *mut AEIO_SndSampleSize,
10525        ) -> A_Err,
10526    >,
10527    pub AEGP_SetInSpecSoundSampleSize: ::std::option::Option<
10528        unsafe extern "C" fn(inH: AEIO_InSpecH, bytes_per_sample: AEIO_SndSampleSize) -> A_Err,
10529    >,
10530    pub AEGP_GetInSpecSoundChannels: ::std::option::Option<
10531        unsafe extern "C" fn(inH: AEIO_InSpecH, num_channelsP: *mut AEIO_SndChannels) -> A_Err,
10532    >,
10533    pub AEGP_SetInSpecSoundChannels: ::std::option::Option<
10534        unsafe extern "C" fn(inH: AEIO_InSpecH, num_channels: AEIO_SndChannels) -> A_Err,
10535    >,
10536    pub AEGP_AddAuxExtMap: ::std::option::Option<
10537        unsafe extern "C" fn(extension: *const A_char, file_type: A_long, creator: A_long) -> A_Err,
10538    >,
10539    pub AEGP_SetInSpecEmbeddedColorProfile: ::std::option::Option<
10540        unsafe extern "C" fn(
10541            inH: AEIO_InSpecH,
10542            color_profileP0: AEGP_ConstColorProfileP,
10543            profile_descP0: *const A_UTF16Char,
10544        ) -> A_Err,
10545    >,
10546    pub AEGP_SetInSpecAssignedColorProfile: ::std::option::Option<
10547        unsafe extern "C" fn(inH: AEIO_InSpecH, color_profileP: AEGP_ConstColorProfileP) -> A_Err,
10548    >,
10549    pub AEGP_GetInSpecNativeStartTime: ::std::option::Option<
10550        unsafe extern "C" fn(inH: AEIO_InSpecH, startTimeP: *mut A_Time) -> A_Err,
10551    >,
10552    pub AEGP_SetInSpecNativeStartTime: ::std::option::Option<
10553        unsafe extern "C" fn(inH: AEIO_InSpecH, startTimeP: *const A_Time) -> A_Err,
10554    >,
10555    pub AEGP_ClearInSpecNativeStartTime:
10556        ::std::option::Option<unsafe extern "C" fn(inH: AEIO_InSpecH) -> A_Err>,
10557    pub AEGP_GetInSpecNativeDisplayDropFrame: ::std::option::Option<
10558        unsafe extern "C" fn(inH: AEIO_InSpecH, displayDropFrameBP: *mut A_Boolean) -> A_Err,
10559    >,
10560    pub AEGP_SetInSpecNativeDisplayDropFrame: ::std::option::Option<
10561        unsafe extern "C" fn(inH: AEIO_InSpecH, displayDropFrameB: A_Boolean) -> A_Err,
10562    >,
10563    pub AEGP_SetInSpecStillSequenceNativeFPS: ::std::option::Option<
10564        unsafe extern "C" fn(inH: AEIO_InSpecH, native_still_seq_fps: A_Fixed) -> A_Err,
10565    >,
10566    pub AEGP_SetInSpecColorSpaceFromCICP: ::std::option::Option<
10567        unsafe extern "C" fn(
10568            inH: AEIO_InSpecH,
10569            inColorPrimariesCode: A_long,
10570            inTransferCharacteristicsCode: A_long,
10571            inMatrixCoefficientsCode: A_long,
10572            inFullRangeVideoFlag: A_long,
10573            inBitDepthL: A_long,
10574            inIsRGB: A_Boolean,
10575        ) -> A_Err,
10576    >,
10577    pub AEGP_SetInSpecColorSpaceFromCICP2: ::std::option::Option<
10578        unsafe extern "C" fn(
10579            inH: AEIO_InSpecH,
10580            inColorPrimariesCode: A_long,
10581            inTransferCharacteristicsCode: A_long,
10582            inMatrixCoefficientsCode: A_long,
10583            inFullRangeVideoFlag: A_long,
10584            inBitDepthL: A_long,
10585            inColorModelL: A_long,
10586            inColorimetryL: A_long,
10587        ) -> A_Err,
10588    >,
10589}
10590#[repr(C)]
10591#[derive(Debug, Copy, Clone)]
10592pub struct AEGP_IOOutSuite6 {
10593    pub AEGP_GetOutSpecOptionsHandle: ::std::option::Option<
10594        unsafe extern "C" fn(
10595            outH: AEIO_OutSpecH,
10596            optionsPPV: *mut *mut ::std::os::raw::c_void,
10597        ) -> A_Err,
10598    >,
10599    pub AEGP_SetOutSpecOptionsHandle: ::std::option::Option<
10600        unsafe extern "C" fn(
10601            outH: AEIO_OutSpecH,
10602            optionsPV: *mut ::std::os::raw::c_void,
10603            old_optionsPPVO: *mut *mut ::std::os::raw::c_void,
10604        ) -> A_Err,
10605    >,
10606    pub AEGP_GetOutSpecFilePath: ::std::option::Option<
10607        unsafe extern "C" fn(
10608            outH: AEIO_OutSpecH,
10609            unicode_pathPH: *mut AEGP_MemHandle,
10610            file_reservedPB: *mut A_Boolean,
10611        ) -> A_Err,
10612    >,
10613    pub AEGP_GetOutSpecFPS: ::std::option::Option<
10614        unsafe extern "C" fn(outH: AEIO_OutSpecH, native_fpsP: *mut A_Fixed) -> A_Err,
10615    >,
10616    pub AEGP_SetOutSpecNativeFPS: ::std::option::Option<
10617        unsafe extern "C" fn(outH: AEIO_OutSpecH, native_fpsP: A_Fixed) -> A_Err,
10618    >,
10619    pub AEGP_GetOutSpecDepth: ::std::option::Option<
10620        unsafe extern "C" fn(outH: AEIO_OutSpecH, depthPS: *mut A_short) -> A_Err,
10621    >,
10622    pub AEGP_SetOutSpecDepth:
10623        ::std::option::Option<unsafe extern "C" fn(outH: AEIO_OutSpecH, depthPS: A_short) -> A_Err>,
10624    pub AEGP_GetOutSpecInterlaceLabel: ::std::option::Option<
10625        unsafe extern "C" fn(outH: AEIO_OutSpecH, interlaceP: *mut FIEL_Label) -> A_Err,
10626    >,
10627    pub AEGP_SetOutSpecInterlaceLabel: ::std::option::Option<
10628        unsafe extern "C" fn(outH: AEIO_OutSpecH, interlaceP: *const FIEL_Label) -> A_Err,
10629    >,
10630    pub AEGP_GetOutSpecAlphaLabel: ::std::option::Option<
10631        unsafe extern "C" fn(outH: AEIO_OutSpecH, alphaP: *mut AEIO_AlphaLabel) -> A_Err,
10632    >,
10633    pub AEGP_SetOutSpecAlphaLabel: ::std::option::Option<
10634        unsafe extern "C" fn(outH: AEIO_OutSpecH, alphaP: *const AEIO_AlphaLabel) -> A_Err,
10635    >,
10636    pub AEGP_GetOutSpecDuration: ::std::option::Option<
10637        unsafe extern "C" fn(outH: AEIO_OutSpecH, durationP: *mut A_Time) -> A_Err,
10638    >,
10639    pub AEGP_SetOutSpecDuration: ::std::option::Option<
10640        unsafe extern "C" fn(outH: AEIO_OutSpecH, durationP: *const A_Time) -> A_Err,
10641    >,
10642    pub AEGP_GetOutSpecDimensions: ::std::option::Option<
10643        unsafe extern "C" fn(
10644            outH: AEIO_OutSpecH,
10645            widthPL: *mut A_long,
10646            heightPL: *mut A_long,
10647        ) -> A_Err,
10648    >,
10649    pub AEGP_GetOutSpecHSF: ::std::option::Option<
10650        unsafe extern "C" fn(outH: AEIO_OutSpecH, hsfP: *mut A_Ratio) -> A_Err,
10651    >,
10652    pub AEGP_SetOutSpecHSF: ::std::option::Option<
10653        unsafe extern "C" fn(outH: AEIO_OutSpecH, hsfP: *const A_Ratio) -> A_Err,
10654    >,
10655    pub AEGP_GetOutSpecSoundRate: ::std::option::Option<
10656        unsafe extern "C" fn(outH: AEIO_OutSpecH, ratePF: *mut A_FpLong) -> A_Err,
10657    >,
10658    pub AEGP_SetOutSpecSoundRate:
10659        ::std::option::Option<unsafe extern "C" fn(outH: AEIO_OutSpecH, rateF: A_FpLong) -> A_Err>,
10660    pub AEGP_GetOutSpecSoundEncoding: ::std::option::Option<
10661        unsafe extern "C" fn(outH: AEIO_OutSpecH, encodingP: *mut AEIO_SndEncoding) -> A_Err,
10662    >,
10663    pub AEGP_SetOutSpecSoundEncoding: ::std::option::Option<
10664        unsafe extern "C" fn(outH: AEIO_OutSpecH, encoding: AEIO_SndEncoding) -> A_Err,
10665    >,
10666    pub AEGP_GetOutSpecSoundSampleSize: ::std::option::Option<
10667        unsafe extern "C" fn(
10668            outH: AEIO_OutSpecH,
10669            bytes_per_sampleP: *mut AEIO_SndSampleSize,
10670        ) -> A_Err,
10671    >,
10672    pub AEGP_SetOutSpecSoundSampleSize: ::std::option::Option<
10673        unsafe extern "C" fn(outH: AEIO_OutSpecH, bytes_per_sample: AEIO_SndSampleSize) -> A_Err,
10674    >,
10675    pub AEGP_GetOutSpecSoundChannels: ::std::option::Option<
10676        unsafe extern "C" fn(outH: AEIO_OutSpecH, num_channelsP: *mut AEIO_SndChannels) -> A_Err,
10677    >,
10678    pub AEGP_SetOutSpecSoundChannels: ::std::option::Option<
10679        unsafe extern "C" fn(outH: AEIO_OutSpecH, num_channels: AEIO_SndChannels) -> A_Err,
10680    >,
10681    pub AEGP_GetOutSpecIsStill: ::std::option::Option<
10682        unsafe extern "C" fn(outH: AEIO_OutSpecH, is_stillPB: *mut A_Boolean) -> A_Err,
10683    >,
10684    pub AEGP_GetOutSpecPosterTime: ::std::option::Option<
10685        unsafe extern "C" fn(outH: AEIO_OutSpecH, poster_timeP: *mut A_Time) -> A_Err,
10686    >,
10687    pub AEGP_GetOutSpecStartFrame: ::std::option::Option<
10688        unsafe extern "C" fn(outH: AEIO_OutSpecH, start_frameP: *mut A_long) -> A_Err,
10689    >,
10690    pub AEGP_GetOutSpecPullDown: ::std::option::Option<
10691        unsafe extern "C" fn(outH: AEIO_OutSpecH, pulldownP: *mut AEIO_Pulldown) -> A_Err,
10692    >,
10693    pub AEGP_GetOutSpecIsMissing: ::std::option::Option<
10694        unsafe extern "C" fn(outH: AEIO_OutSpecH, missingPB: *mut A_Boolean) -> A_Err,
10695    >,
10696    pub AEGP_GetOutSpecShouldEmbedICCProfile: ::std::option::Option<
10697        unsafe extern "C" fn(outH: AEIO_OutSpecH, embedPB: *mut A_Boolean) -> A_Err,
10698    >,
10699    pub AEGP_GetNewOutSpecColorProfile: ::std::option::Option<
10700        unsafe extern "C" fn(
10701            aegp_plugin_id: AEGP_PluginID,
10702            outH: AEIO_OutSpecH,
10703            color_profilePP: *mut AEGP_ColorProfileP,
10704        ) -> A_Err,
10705    >,
10706    pub AEGP_GetOutSpecOutputModule: ::std::option::Option<
10707        unsafe extern "C" fn(
10708            outH: AEIO_OutSpecH,
10709            rq_itemP: *mut AEGP_RQItemRefH,
10710            om_refP: *mut AEGP_OutputModuleRefH,
10711        ) -> A_Err,
10712    >,
10713    pub AEGP_GetOutSpecStartTime: ::std::option::Option<
10714        unsafe extern "C" fn(outH: AEIO_OutSpecH, outStartTimePT: *mut A_Time) -> A_Err,
10715    >,
10716    pub AEGP_GetOutSpecFrameTime: ::std::option::Option<
10717        unsafe extern "C" fn(outH: AEIO_OutSpecH, outFrameTimePT: *mut A_Time) -> A_Err,
10718    >,
10719    pub AEGP_GetOutSpecIsDropFrame: ::std::option::Option<
10720        unsafe extern "C" fn(outH: AEIO_OutSpecH, outIsDropFramePB: *mut A_Boolean) -> A_Err,
10721    >,
10722    pub AEGP_GetOutSpecColorSpaceAsCICPIfCompatible: ::std::option::Option<
10723        unsafe extern "C" fn(
10724            outH: AEIO_OutSpecH,
10725            outColorPrimariesCodePL: *mut A_long,
10726            outTransferCharacteristicsCodePL: *mut A_long,
10727            outMatrixCoefficientsCodePL: *mut A_long,
10728            outIsFullRangePL: *mut A_long,
10729            outIsSuccesPB: *mut A_Boolean,
10730        ) -> A_Err,
10731    >,
10732}
10733pub type AE_FIM_ImportFlavorRef = A_long;
10734pub type AE_FIM_ImportFlags = A_long;
10735pub type AE_FIM_SpecialAction = A_long;
10736#[repr(C)]
10737#[derive(Debug, Copy, Clone)]
10738pub struct AE_FIM_RefconTag {
10739    _unused: [u8; 0],
10740}
10741pub type AE_FIM_Refcon = *mut AE_FIM_RefconTag;
10742#[repr(C)]
10743#[derive(Debug, Copy, Clone)]
10744pub struct AE_FIM_ImportOptionsTag {
10745    _unused: [u8; 0],
10746}
10747pub type AE_FIM_ImportOptions = *mut AE_FIM_ImportOptionsTag;
10748pub type AE_FIM_ImportFileCB = ::std::option::Option<
10749    unsafe extern "C" fn(
10750        pathZ: *const A_UTF16Char,
10751        imp_options: AE_FIM_ImportOptions,
10752        action: AE_FIM_SpecialAction,
10753        itemH: AEGP_ItemH,
10754        refcon: AE_FIM_Refcon,
10755    ) -> A_Err,
10756>;
10757pub type AE_FIM_VerifyImportableCB = ::std::option::Option<
10758    unsafe extern "C" fn(
10759        pathZ: *const A_UTF16Char,
10760        refcon: AE_FIM_Refcon,
10761        importablePB: *mut A_Boolean,
10762    ) -> A_Err,
10763>;
10764#[repr(C)]
10765#[derive(Debug, Copy, Clone)]
10766pub struct AE_FIM_ImportCallbacks {
10767    pub refcon: AE_FIM_Refcon,
10768    pub import_cb: AE_FIM_ImportFileCB,
10769    pub verify_cb: AE_FIM_VerifyImportableCB,
10770}
10771#[repr(C)]
10772#[derive(Debug, Copy, Clone)]
10773pub struct AEGP_FIMSuite4 {
10774    pub AEGP_RegisterImportFlavor: ::std::option::Option<
10775        unsafe extern "C" fn(nameZ: *const A_char, imp_refP: *mut AE_FIM_ImportFlavorRef) -> A_Err,
10776    >,
10777    pub AEGP_RegisterImportFlavorFileTypes: ::std::option::Option<
10778        unsafe extern "C" fn(
10779            imp_ref: AE_FIM_ImportFlavorRef,
10780            num_filekindsL: A_long,
10781            kindsAP: *const AEIO_FileKind,
10782            num_fileextsL: A_long,
10783            extsAP: *const AEIO_FileKind,
10784        ) -> A_Err,
10785    >,
10786    pub AEGP_RegisterImportFlavorImportCallbacks: ::std::option::Option<
10787        unsafe extern "C" fn(
10788            imp_ref: AE_FIM_ImportFlavorRef,
10789            single_flag: AE_FIM_ImportFlags,
10790            imp_cbsP: *const AE_FIM_ImportCallbacks,
10791        ) -> A_Err,
10792    >,
10793    pub AEGP_SetImportedItem: ::std::option::Option<
10794        unsafe extern "C" fn(
10795            imp_options: AE_FIM_ImportOptions,
10796            imported_itemH: AEGP_ItemH,
10797        ) -> A_Err,
10798    >,
10799    pub AEGP_FileSequenceImportOptionsFromFIMImportOptions: ::std::option::Option<
10800        unsafe extern "C" fn(
10801            imp_options: AE_FIM_ImportOptions,
10802            seq_import_optionsP: *mut AEGP_FileSequenceImportOptions,
10803        ) -> A_Err,
10804    >,
10805}
10806#[repr(C)]
10807#[derive(Debug, Copy, Clone)]
10808pub struct AEGP_PersistentDataSuite4 {
10809    pub AEGP_GetApplicationBlob: ::std::option::Option<
10810        unsafe extern "C" fn(
10811            blob_type: AEGP_PersistentType,
10812            blobPH: *mut AEGP_PersistentBlobH,
10813        ) -> A_Err,
10814    >,
10815    pub AEGP_GetNumSections: ::std::option::Option<
10816        unsafe extern "C" fn(blobH: AEGP_PersistentBlobH, num_sectionPL: *mut A_long) -> A_Err,
10817    >,
10818    pub AEGP_GetSectionKeyByIndex: ::std::option::Option<
10819        unsafe extern "C" fn(
10820            blobH: AEGP_PersistentBlobH,
10821            section_index: A_long,
10822            max_section_size: A_long,
10823            section_keyZ: *mut A_char,
10824        ) -> A_Err,
10825    >,
10826    pub AEGP_DoesKeyExist: ::std::option::Option<
10827        unsafe extern "C" fn(
10828            blobH: AEGP_PersistentBlobH,
10829            section_keyZ: *const A_char,
10830            value_keyZ: *const A_char,
10831            existsPB: *mut A_Boolean,
10832        ) -> A_Err,
10833    >,
10834    pub AEGP_GetNumKeys: ::std::option::Option<
10835        unsafe extern "C" fn(
10836            blobH: AEGP_PersistentBlobH,
10837            section_keyZ: *const A_char,
10838            num_keysPL: *mut A_long,
10839        ) -> A_Err,
10840    >,
10841    pub AEGP_GetValueKeyByIndex: ::std::option::Option<
10842        unsafe extern "C" fn(
10843            blobH: AEGP_PersistentBlobH,
10844            section_keyZ: *const A_char,
10845            key_index: A_long,
10846            max_key_size: A_long,
10847            value_keyZ: *mut A_char,
10848        ) -> A_Err,
10849    >,
10850    pub AEGP_GetDataHandle: ::std::option::Option<
10851        unsafe extern "C" fn(
10852            plugin_id: AEGP_PluginID,
10853            blobH: AEGP_PersistentBlobH,
10854            section_keyZ: *const A_char,
10855            value_keyZ: *const A_char,
10856            defaultH0: AEGP_MemHandle,
10857            valuePH: *mut AEGP_MemHandle,
10858        ) -> A_Err,
10859    >,
10860    pub AEGP_GetData: ::std::option::Option<
10861        unsafe extern "C" fn(
10862            blobH: AEGP_PersistentBlobH,
10863            section_keyZ: *const A_char,
10864            value_keyZ: *const A_char,
10865            data_sizeLu: A_u_long,
10866            defaultPV0: *const ::std::os::raw::c_void,
10867            bufPV: *mut ::std::os::raw::c_void,
10868        ) -> A_Err,
10869    >,
10870    pub AEGP_GetString: ::std::option::Option<
10871        unsafe extern "C" fn(
10872            blobH: AEGP_PersistentBlobH,
10873            section_keyZ: *const A_char,
10874            value_keyZ: *const A_char,
10875            defaultZ0: *const A_char,
10876            buf_sizeLu: A_u_long,
10877            bufZ: *mut A_char,
10878            actual_buf_sizeLu0: *mut A_u_long,
10879        ) -> A_Err,
10880    >,
10881    pub AEGP_GetLong: ::std::option::Option<
10882        unsafe extern "C" fn(
10883            blobH: AEGP_PersistentBlobH,
10884            section_keyZ: *const A_char,
10885            value_keyZ: *const A_char,
10886            defaultL: A_long,
10887            valuePL: *mut A_long,
10888        ) -> A_Err,
10889    >,
10890    pub AEGP_GetFpLong: ::std::option::Option<
10891        unsafe extern "C" fn(
10892            blobH: AEGP_PersistentBlobH,
10893            section_keyZ: *const A_char,
10894            value_keyZ: *const A_char,
10895            defaultF: A_FpLong,
10896            valuePF: *mut A_FpLong,
10897        ) -> A_Err,
10898    >,
10899    pub AEGP_GetTime: ::std::option::Option<
10900        unsafe extern "C" fn(
10901            blobH: AEGP_PersistentBlobH,
10902            section_keyZ: *const A_char,
10903            value_keyZ: *const A_char,
10904            defaultPT0: *const A_Time,
10905            valuePT: *mut A_Time,
10906        ) -> A_Err,
10907    >,
10908    pub AEGP_GetARGB: ::std::option::Option<
10909        unsafe extern "C" fn(
10910            blobH: AEGP_PersistentBlobH,
10911            section_keyZ: *const A_char,
10912            value_keyZ: *const A_char,
10913            defaultP0: *const PF_PixelFloat,
10914            valueP: *mut PF_PixelFloat,
10915        ) -> A_Err,
10916    >,
10917    pub AEGP_SetDataHandle: ::std::option::Option<
10918        unsafe extern "C" fn(
10919            blobH: AEGP_PersistentBlobH,
10920            section_keyZ: *const A_char,
10921            value_keyZ: *const A_char,
10922            valueH: AEGP_MemHandle,
10923        ) -> A_Err,
10924    >,
10925    pub AEGP_SetData: ::std::option::Option<
10926        unsafe extern "C" fn(
10927            blobH: AEGP_PersistentBlobH,
10928            section_keyZ: *const A_char,
10929            value_keyZ: *const A_char,
10930            data_sizeLu: A_u_long,
10931            dataPV: *const ::std::os::raw::c_void,
10932        ) -> A_Err,
10933    >,
10934    pub AEGP_SetString: ::std::option::Option<
10935        unsafe extern "C" fn(
10936            blobH: AEGP_PersistentBlobH,
10937            section_keyZ: *const A_char,
10938            value_keyZ: *const A_char,
10939            strZ: *const A_char,
10940        ) -> A_Err,
10941    >,
10942    pub AEGP_SetLong: ::std::option::Option<
10943        unsafe extern "C" fn(
10944            blobH: AEGP_PersistentBlobH,
10945            section_keyZ: *const A_char,
10946            value_keyZ: *const A_char,
10947            valueL: A_long,
10948        ) -> A_Err,
10949    >,
10950    pub AEGP_SetFpLong: ::std::option::Option<
10951        unsafe extern "C" fn(
10952            blobH: AEGP_PersistentBlobH,
10953            section_keyZ: *const A_char,
10954            value_keyZ: *const A_char,
10955            valueF: A_FpLong,
10956        ) -> A_Err,
10957    >,
10958    pub AEGP_SetTime: ::std::option::Option<
10959        unsafe extern "C" fn(
10960            blobH: AEGP_PersistentBlobH,
10961            section_keyZ: *const A_char,
10962            value_keyZ: *const A_char,
10963            valuePT: *const A_Time,
10964        ) -> A_Err,
10965    >,
10966    pub AEGP_SetARGB: ::std::option::Option<
10967        unsafe extern "C" fn(
10968            blobH: AEGP_PersistentBlobH,
10969            section_keyZ: *const A_char,
10970            value_keyZ: *const A_char,
10971            valueP: *const PF_PixelFloat,
10972        ) -> A_Err,
10973    >,
10974    pub AEGP_DeleteEntry: ::std::option::Option<
10975        unsafe extern "C" fn(
10976            blobH: AEGP_PersistentBlobH,
10977            section_keyZ: *const A_char,
10978            value_keyZ: *const A_char,
10979        ) -> A_Err,
10980    >,
10981    pub AEGP_GetPrefsDirectory:
10982        ::std::option::Option<unsafe extern "C" fn(unicode_pathPH: *mut AEGP_MemHandle) -> A_Err>,
10983}
10984pub const AEGP_CollectionItemType_NONE: _bindgen_ty_171 = 0;
10985pub const AEGP_CollectionItemType_LAYER: _bindgen_ty_171 = 1;
10986pub const AEGP_CollectionItemType_MASK: _bindgen_ty_171 = 2;
10987pub const AEGP_CollectionItemType_EFFECT: _bindgen_ty_171 = 3;
10988pub const AEGP_CollectionItemType_STREAM: _bindgen_ty_171 = 4;
10989pub const AEGP_CollectionItemType_KEYFRAME: _bindgen_ty_171 = 5;
10990pub const AEGP_CollectionItemType_MASK_VERTEX: _bindgen_ty_171 = 6;
10991pub const AEGP_CollectionItemType_STREAMREF: _bindgen_ty_171 = 7;
10992pub const AEGP_CollectionItemType_END: _bindgen_ty_171 = 8;
10993pub const AEGP_CollectionItemType_BEGIN: _bindgen_ty_171 = 1;
10994pub type _bindgen_ty_171 = ::std::os::raw::c_uint;
10995pub type AEGP_CollectionItemType = A_LegacyEnumType;
10996#[repr(C)]
10997#[derive(Debug, Copy, Clone)]
10998pub struct AEGP_LayerCollectionItem {
10999    pub layerH: AEGP_LayerH,
11000}
11001#[repr(C)]
11002#[derive(Debug, Copy, Clone)]
11003pub struct AEGP_MaskCollectionItem {
11004    pub layerH: AEGP_LayerH,
11005    pub index: AEGP_MaskIndex,
11006}
11007#[repr(C)]
11008#[derive(Debug, Copy, Clone)]
11009pub struct AEGP_EffectCollectionItem {
11010    pub layerH: AEGP_LayerH,
11011    pub index: AEGP_EffectIndex,
11012}
11013pub const AEGP_StreamCollectionItemType_NONE: _bindgen_ty_172 = 0;
11014pub const AEGP_StreamCollectionItemType_LAYER: _bindgen_ty_172 = 1;
11015pub const AEGP_StreamCollectionItemType_MASK: _bindgen_ty_172 = 2;
11016pub const AEGP_StreamCollectionItemType_EFFECT: _bindgen_ty_172 = 3;
11017pub const AEGP_StreamCollectionItemType_END: _bindgen_ty_172 = 4;
11018pub const AEGP_StreamCollectionItemType_BEGIN: _bindgen_ty_172 = 1;
11019pub type _bindgen_ty_172 = ::std::os::raw::c_uint;
11020pub type AEGP_StreamCollectionItemType = A_LegacyEnumType;
11021#[repr(C)]
11022#[derive(Debug, Copy, Clone)]
11023pub struct AEGP_MaskStreamCollectionItem {
11024    pub mask: AEGP_MaskCollectionItem,
11025    pub mask_stream: AEGP_MaskStream,
11026}
11027#[repr(C)]
11028#[derive(Debug, Copy, Clone)]
11029pub struct AEGP_EffectStreamCollectionItem {
11030    pub effect: AEGP_EffectCollectionItem,
11031    pub param_index: A_long,
11032}
11033#[repr(C)]
11034#[derive(Debug, Copy, Clone)]
11035pub struct AEGP_LayerStreamCollectionItem {
11036    pub layerH: AEGP_LayerH,
11037    pub layer_stream: AEGP_LayerStream,
11038}
11039#[repr(C)]
11040#[derive(Copy, Clone)]
11041pub struct AEGP_StreamCollectionItem {
11042    pub type_: AEGP_StreamCollectionItemType,
11043    pub u: AEGP_StreamCollectionItem__bindgen_ty_1,
11044}
11045#[repr(C)]
11046#[derive(Copy, Clone)]
11047pub union AEGP_StreamCollectionItem__bindgen_ty_1 {
11048    pub layer_stream: AEGP_LayerStreamCollectionItem,
11049    pub mask_stream: AEGP_MaskStreamCollectionItem,
11050    pub effect_stream: AEGP_EffectStreamCollectionItem,
11051}
11052#[repr(C)]
11053#[derive(Debug, Copy, Clone)]
11054pub struct AEGP_MaskVertexCollectionItem {
11055    pub mask_sel: AEGP_MaskCollectionItem,
11056    pub index: AEGP_VertexIndex,
11057}
11058#[repr(C)]
11059#[derive(Copy, Clone)]
11060pub struct AEGP_KeyframeCollectionItem {
11061    pub stream_coll: AEGP_StreamCollectionItem,
11062    pub index: AEGP_KeyframeIndex,
11063}
11064#[repr(C)]
11065#[derive(Copy, Clone)]
11066pub struct AEGP_CollectionItemV2 {
11067    pub type_: AEGP_CollectionItemType,
11068    pub u: AEGP_CollectionItemV2__bindgen_ty_1,
11069    pub stream_refH: AEGP_StreamRefH,
11070}
11071#[repr(C)]
11072#[derive(Copy, Clone)]
11073pub union AEGP_CollectionItemV2__bindgen_ty_1 {
11074    pub layer: AEGP_LayerCollectionItem,
11075    pub mask: AEGP_MaskCollectionItem,
11076    pub effect: AEGP_EffectCollectionItem,
11077    pub stream: AEGP_StreamCollectionItem,
11078    pub mask_vertex: AEGP_MaskVertexCollectionItem,
11079    pub keyframe: AEGP_KeyframeCollectionItem,
11080}
11081#[repr(C)]
11082#[derive(Debug, Copy, Clone)]
11083pub struct AEGP_CollectionSuite2 {
11084    pub AEGP_NewCollection: ::std::option::Option<
11085        unsafe extern "C" fn(
11086            plugin_id: AEGP_PluginID,
11087            collectionPH: *mut AEGP_Collection2H,
11088        ) -> A_Err,
11089    >,
11090    pub AEGP_DisposeCollection:
11091        ::std::option::Option<unsafe extern "C" fn(collectionH: AEGP_Collection2H) -> A_Err>,
11092    pub AEGP_GetCollectionNumItems: ::std::option::Option<
11093        unsafe extern "C" fn(collectionH: AEGP_Collection2H, num_itemsPL: *mut A_u_long) -> A_Err,
11094    >,
11095    pub AEGP_GetCollectionItemByIndex: ::std::option::Option<
11096        unsafe extern "C" fn(
11097            collectionH: AEGP_Collection2H,
11098            indexL: A_u_long,
11099            collection_itemP: *mut AEGP_CollectionItemV2,
11100        ) -> A_Err,
11101    >,
11102    pub AEGP_CollectionPushBack: ::std::option::Option<
11103        unsafe extern "C" fn(
11104            collectionH: AEGP_Collection2H,
11105            collection_itemP: *const AEGP_CollectionItemV2,
11106        ) -> A_Err,
11107    >,
11108    pub AEGP_CollectionErase: ::std::option::Option<
11109        unsafe extern "C" fn(
11110            collectionH: AEGP_Collection2H,
11111            index_firstL: A_u_long,
11112            index_lastL: A_u_long,
11113        ) -> A_Err,
11114    >,
11115}
11116pub const AEGP_WorldType_NONE: _bindgen_ty_173 = 0;
11117pub const AEGP_WorldType_8: _bindgen_ty_173 = 1;
11118pub const AEGP_WorldType_16: _bindgen_ty_173 = 2;
11119pub const AEGP_WorldType_32: _bindgen_ty_173 = 3;
11120pub type _bindgen_ty_173 = ::std::os::raw::c_uint;
11121pub type AEGP_WorldType = A_long;
11122#[repr(C)]
11123#[derive(Debug, Copy, Clone)]
11124pub struct AEGP_WorldSuite3 {
11125    pub AEGP_New: ::std::option::Option<
11126        unsafe extern "C" fn(
11127            plugin_id: AEGP_PluginID,
11128            type_: AEGP_WorldType,
11129            widthL: A_long,
11130            heightL: A_long,
11131            worldPH: *mut AEGP_WorldH,
11132        ) -> A_Err,
11133    >,
11134    pub AEGP_Dispose: ::std::option::Option<unsafe extern "C" fn(worldH: AEGP_WorldH) -> A_Err>,
11135    pub AEGP_GetType: ::std::option::Option<
11136        unsafe extern "C" fn(worldH: AEGP_WorldH, typeP: *mut AEGP_WorldType) -> A_Err,
11137    >,
11138    pub AEGP_GetSize: ::std::option::Option<
11139        unsafe extern "C" fn(
11140            worldH: AEGP_WorldH,
11141            widthPL: *mut A_long,
11142            heightPL: *mut A_long,
11143        ) -> A_Err,
11144    >,
11145    pub AEGP_GetRowBytes: ::std::option::Option<
11146        unsafe extern "C" fn(worldH: AEGP_WorldH, row_bytesPL: *mut A_u_long) -> A_Err,
11147    >,
11148    pub AEGP_GetBaseAddr8: ::std::option::Option<
11149        unsafe extern "C" fn(worldH: AEGP_WorldH, base_addrP: *mut *mut PF_Pixel8) -> A_Err,
11150    >,
11151    pub AEGP_GetBaseAddr16: ::std::option::Option<
11152        unsafe extern "C" fn(worldH: AEGP_WorldH, base_addrP: *mut *mut PF_Pixel16) -> A_Err,
11153    >,
11154    pub AEGP_GetBaseAddr32: ::std::option::Option<
11155        unsafe extern "C" fn(worldH: AEGP_WorldH, base_addrP: *mut *mut PF_PixelFloat) -> A_Err,
11156    >,
11157    pub AEGP_FillOutPFEffectWorld: ::std::option::Option<
11158        unsafe extern "C" fn(worldH: AEGP_WorldH, pf_worldP: *mut PF_EffectWorld) -> A_Err,
11159    >,
11160    pub AEGP_FastBlur: ::std::option::Option<
11161        unsafe extern "C" fn(
11162            radiusF: A_FpLong,
11163            mode: PF_ModeFlags,
11164            quality: PF_Quality,
11165            worldH: AEGP_WorldH,
11166        ) -> A_Err,
11167    >,
11168    pub AEGP_NewPlatformWorld: ::std::option::Option<
11169        unsafe extern "C" fn(
11170            plugin_id: AEGP_PluginID,
11171            type_: AEGP_WorldType,
11172            widthL: A_long,
11173            heightL: A_long,
11174            worldPH: *mut AEGP_PlatformWorldH,
11175        ) -> A_Err,
11176    >,
11177    pub AEGP_DisposePlatformWorld:
11178        ::std::option::Option<unsafe extern "C" fn(worldH: AEGP_PlatformWorldH) -> A_Err>,
11179    pub AEGP_NewReferenceFromPlatformWorld: ::std::option::Option<
11180        unsafe extern "C" fn(
11181            plugin_id: AEGP_PluginID,
11182            platform_worldH: AEGP_PlatformWorldH,
11183            worldPH: *mut AEGP_WorldH,
11184        ) -> A_Err,
11185    >,
11186}
11187pub const AEGP_MatteMode_STRAIGHT: _bindgen_ty_174 = 0;
11188pub const AEGP_MatteMode_PREMUL_BLACK: _bindgen_ty_174 = 1;
11189pub const AEGP_MatteMode_PREMUL_BG_COLOR: _bindgen_ty_174 = 2;
11190pub type _bindgen_ty_174 = ::std::os::raw::c_uint;
11191pub type AEGP_MatteMode = A_long;
11192pub const AEGP_ChannelOrder_ARGB: _bindgen_ty_175 = 0;
11193pub const AEGP_ChannelOrder_BGRA: _bindgen_ty_175 = 1;
11194pub type _bindgen_ty_175 = ::std::os::raw::c_uint;
11195pub type AEGP_ChannelOrder = A_char;
11196pub const AEGP_ItemQuality_DRAFT: _bindgen_ty_176 = 0;
11197pub const AEGP_ItemQuality_BEST: _bindgen_ty_176 = 1;
11198pub type _bindgen_ty_176 = ::std::os::raw::c_uint;
11199pub type AEGP_ItemQuality = A_char;
11200#[repr(C)]
11201#[derive(Debug, Copy, Clone)]
11202pub struct AEGP_RenderOptionsSuite4 {
11203    pub AEGP_NewFromItem: ::std::option::Option<
11204        unsafe extern "C" fn(
11205            plugin_id: AEGP_PluginID,
11206            itemH: AEGP_ItemH,
11207            optionsPH: *mut AEGP_RenderOptionsH,
11208        ) -> A_Err,
11209    >,
11210    pub AEGP_Duplicate: ::std::option::Option<
11211        unsafe extern "C" fn(
11212            plugin_id: AEGP_PluginID,
11213            optionsH: AEGP_RenderOptionsH,
11214            copyPH: *mut AEGP_RenderOptionsH,
11215        ) -> A_Err,
11216    >,
11217    pub AEGP_Dispose:
11218        ::std::option::Option<unsafe extern "C" fn(optionsH: AEGP_RenderOptionsH) -> A_Err>,
11219    pub AEGP_SetTime: ::std::option::Option<
11220        unsafe extern "C" fn(optionsH: AEGP_RenderOptionsH, time: A_Time) -> A_Err,
11221    >,
11222    pub AEGP_GetTime: ::std::option::Option<
11223        unsafe extern "C" fn(optionsH: AEGP_RenderOptionsH, timeP: *mut A_Time) -> A_Err,
11224    >,
11225    pub AEGP_SetTimeStep: ::std::option::Option<
11226        unsafe extern "C" fn(optionsH: AEGP_RenderOptionsH, time_step: A_Time) -> A_Err,
11227    >,
11228    pub AEGP_GetTimeStep: ::std::option::Option<
11229        unsafe extern "C" fn(optionsH: AEGP_RenderOptionsH, timePT: *mut A_Time) -> A_Err,
11230    >,
11231    pub AEGP_SetFieldRender: ::std::option::Option<
11232        unsafe extern "C" fn(optionsH: AEGP_RenderOptionsH, field_render: PF_Field) -> A_Err,
11233    >,
11234    pub AEGP_GetFieldRender: ::std::option::Option<
11235        unsafe extern "C" fn(optionsH: AEGP_RenderOptionsH, field_renderP: *mut PF_Field) -> A_Err,
11236    >,
11237    pub AEGP_SetWorldType: ::std::option::Option<
11238        unsafe extern "C" fn(optionsH: AEGP_RenderOptionsH, type_: AEGP_WorldType) -> A_Err,
11239    >,
11240    pub AEGP_GetWorldType: ::std::option::Option<
11241        unsafe extern "C" fn(optionsH: AEGP_RenderOptionsH, typeP: *mut AEGP_WorldType) -> A_Err,
11242    >,
11243    pub AEGP_SetDownsampleFactor: ::std::option::Option<
11244        unsafe extern "C" fn(optionsH: AEGP_RenderOptionsH, x: A_short, y: A_short) -> A_Err,
11245    >,
11246    pub AEGP_GetDownsampleFactor: ::std::option::Option<
11247        unsafe extern "C" fn(
11248            optionsH: AEGP_RenderOptionsH,
11249            xP: *mut A_short,
11250            yP: *mut A_short,
11251        ) -> A_Err,
11252    >,
11253    pub AEGP_SetRegionOfInterest: ::std::option::Option<
11254        unsafe extern "C" fn(optionsH: AEGP_RenderOptionsH, roiP: *const A_LRect) -> A_Err,
11255    >,
11256    pub AEGP_GetRegionOfInterest: ::std::option::Option<
11257        unsafe extern "C" fn(optionsH: AEGP_RenderOptionsH, roiP: *mut A_LRect) -> A_Err,
11258    >,
11259    pub AEGP_SetMatteMode: ::std::option::Option<
11260        unsafe extern "C" fn(optionsH: AEGP_RenderOptionsH, mode: AEGP_MatteMode) -> A_Err,
11261    >,
11262    pub AEGP_GetMatteMode: ::std::option::Option<
11263        unsafe extern "C" fn(optionsH: AEGP_RenderOptionsH, modeP: *mut AEGP_MatteMode) -> A_Err,
11264    >,
11265    pub AEGP_SetChannelOrder: ::std::option::Option<
11266        unsafe extern "C" fn(
11267            optionsH: AEGP_RenderOptionsH,
11268            channel_order: AEGP_ChannelOrder,
11269        ) -> A_Err,
11270    >,
11271    pub AEGP_GetChannelOrder: ::std::option::Option<
11272        unsafe extern "C" fn(
11273            optionsH: AEGP_RenderOptionsH,
11274            channelP: *mut AEGP_ChannelOrder,
11275        ) -> A_Err,
11276    >,
11277    pub AEGP_GetRenderGuideLayers: ::std::option::Option<
11278        unsafe extern "C" fn(optionsH: AEGP_RenderOptionsH, will_renderPB: *mut A_Boolean) -> A_Err,
11279    >,
11280    pub AEGP_SetRenderGuideLayers: ::std::option::Option<
11281        unsafe extern "C" fn(optionsH: AEGP_RenderOptionsH, render_themB: A_Boolean) -> A_Err,
11282    >,
11283    pub AEGP_GetRenderQuality: ::std::option::Option<
11284        unsafe extern "C" fn(
11285            optionsH: AEGP_RenderOptionsH,
11286            qualityP: *mut AEGP_ItemQuality,
11287        ) -> A_Err,
11288    >,
11289    pub AEGP_SetRenderQuality: ::std::option::Option<
11290        unsafe extern "C" fn(optionsH: AEGP_RenderOptionsH, quality: AEGP_ItemQuality) -> A_Err,
11291    >,
11292}
11293#[repr(C)]
11294#[derive(Debug, Copy, Clone)]
11295pub struct AEGP_LayerRenderOptionsSuite2 {
11296    pub AEGP_NewFromLayer: ::std::option::Option<
11297        unsafe extern "C" fn(
11298            plugin_id: AEGP_PluginID,
11299            layerH: AEGP_LayerH,
11300            optionsPH: *mut AEGP_LayerRenderOptionsH,
11301        ) -> A_Err,
11302    >,
11303    pub AEGP_NewFromUpstreamOfEffect: ::std::option::Option<
11304        unsafe extern "C" fn(
11305            plugin_id: AEGP_PluginID,
11306            effectH: AEGP_EffectRefH,
11307            optionsPH: *mut AEGP_LayerRenderOptionsH,
11308        ) -> A_Err,
11309    >,
11310    pub AEGP_NewFromDownstreamOfEffect: ::std::option::Option<
11311        unsafe extern "C" fn(
11312            plugin_id: AEGP_PluginID,
11313            effectH: AEGP_EffectRefH,
11314            optionsPH: *mut AEGP_LayerRenderOptionsH,
11315        ) -> A_Err,
11316    >,
11317    pub AEGP_Duplicate: ::std::option::Option<
11318        unsafe extern "C" fn(
11319            plugin_id: AEGP_PluginID,
11320            optionsH: AEGP_LayerRenderOptionsH,
11321            copyPH: *mut AEGP_LayerRenderOptionsH,
11322        ) -> A_Err,
11323    >,
11324    pub AEGP_Dispose:
11325        ::std::option::Option<unsafe extern "C" fn(optionsH: AEGP_LayerRenderOptionsH) -> A_Err>,
11326    pub AEGP_SetTime: ::std::option::Option<
11327        unsafe extern "C" fn(optionsH: AEGP_LayerRenderOptionsH, time: A_Time) -> A_Err,
11328    >,
11329    pub AEGP_GetTime: ::std::option::Option<
11330        unsafe extern "C" fn(optionsH: AEGP_LayerRenderOptionsH, timeP: *mut A_Time) -> A_Err,
11331    >,
11332    pub AEGP_SetTimeStep: ::std::option::Option<
11333        unsafe extern "C" fn(optionsH: AEGP_LayerRenderOptionsH, time_step: A_Time) -> A_Err,
11334    >,
11335    pub AEGP_GetTimeStep: ::std::option::Option<
11336        unsafe extern "C" fn(optionsH: AEGP_LayerRenderOptionsH, timePT: *mut A_Time) -> A_Err,
11337    >,
11338    pub AEGP_SetWorldType: ::std::option::Option<
11339        unsafe extern "C" fn(optionsH: AEGP_LayerRenderOptionsH, type_: AEGP_WorldType) -> A_Err,
11340    >,
11341    pub AEGP_GetWorldType: ::std::option::Option<
11342        unsafe extern "C" fn(
11343            optionsH: AEGP_LayerRenderOptionsH,
11344            typeP: *mut AEGP_WorldType,
11345        ) -> A_Err,
11346    >,
11347    pub AEGP_SetDownsampleFactor: ::std::option::Option<
11348        unsafe extern "C" fn(optionsH: AEGP_LayerRenderOptionsH, x: A_short, y: A_short) -> A_Err,
11349    >,
11350    pub AEGP_GetDownsampleFactor: ::std::option::Option<
11351        unsafe extern "C" fn(
11352            optionsH: AEGP_LayerRenderOptionsH,
11353            xP: *mut A_short,
11354            yP: *mut A_short,
11355        ) -> A_Err,
11356    >,
11357    pub AEGP_SetMatteMode: ::std::option::Option<
11358        unsafe extern "C" fn(optionsH: AEGP_LayerRenderOptionsH, mode: AEGP_MatteMode) -> A_Err,
11359    >,
11360    pub AEGP_GetMatteMode: ::std::option::Option<
11361        unsafe extern "C" fn(
11362            optionsH: AEGP_LayerRenderOptionsH,
11363            modeP: *mut AEGP_MatteMode,
11364        ) -> A_Err,
11365    >,
11366}
11367pub type AEGP_AsyncRequestId = A_u_longlong;
11368pub type AEGP_RenderSuiteCheckForCancel = ::std::option::Option<
11369    unsafe extern "C" fn(refcon: *mut ::std::os::raw::c_void, cancelPB: *mut A_Boolean) -> A_Err,
11370>;
11371pub type AEGP_AsyncFrameReadyCallback = ::std::option::Option<
11372    unsafe extern "C" fn(
11373        request_id: AEGP_AsyncRequestId,
11374        was_canceled: A_Boolean,
11375        error: A_Err,
11376        receiptH: AEGP_FrameReceiptH,
11377        refconP0: AEGP_AsyncFrameRequestRefcon,
11378    ) -> A_Err,
11379>;
11380#[repr(C)]
11381#[derive(Debug, Copy, Clone)]
11382pub struct AEGP_RenderSuite5 {
11383    pub AEGP_RenderAndCheckoutFrame: ::std::option::Option<
11384        unsafe extern "C" fn(
11385            optionsH: AEGP_RenderOptionsH,
11386            cancel_functionP0: AEGP_RenderSuiteCheckForCancel,
11387            cancel_function_refconP0: AEGP_CancelRefcon,
11388            receiptPH: *mut AEGP_FrameReceiptH,
11389        ) -> A_Err,
11390    >,
11391    pub AEGP_RenderAndCheckoutLayerFrame: ::std::option::Option<
11392        unsafe extern "C" fn(
11393            optionsH: AEGP_LayerRenderOptionsH,
11394            cancel_functionP0: AEGP_RenderSuiteCheckForCancel,
11395            cancel_function_refconP0: AEGP_CancelRefcon,
11396            receiptPH: *mut AEGP_FrameReceiptH,
11397        ) -> A_Err,
11398    >,
11399    pub AEGP_RenderAndCheckoutLayerFrame_Async: ::std::option::Option<
11400        unsafe extern "C" fn(
11401            optionsH: AEGP_LayerRenderOptionsH,
11402            callback: AEGP_AsyncFrameReadyCallback,
11403            request_completion_refconP0: AEGP_AsyncFrameRequestRefcon,
11404            asyncRequestIdP: *mut AEGP_AsyncRequestId,
11405        ) -> A_Err,
11406    >,
11407    pub AEGP_CancelAsyncRequest:
11408        ::std::option::Option<unsafe extern "C" fn(asyncRequestId: AEGP_AsyncRequestId) -> A_Err>,
11409    pub AEGP_CheckinFrame:
11410        ::std::option::Option<unsafe extern "C" fn(receiptH: AEGP_FrameReceiptH) -> A_Err>,
11411    pub AEGP_GetReceiptWorld: ::std::option::Option<
11412        unsafe extern "C" fn(receiptH: AEGP_FrameReceiptH, worldPH: *mut AEGP_WorldH) -> A_Err,
11413    >,
11414    pub AEGP_GetRenderedRegion: ::std::option::Option<
11415        unsafe extern "C" fn(receiptH: AEGP_FrameReceiptH, rendered_regionP: *mut A_LRect) -> A_Err,
11416    >,
11417    pub AEGP_IsRenderedFrameSufficient: ::std::option::Option<
11418        unsafe extern "C" fn(
11419            rendered_optionsH: AEGP_RenderOptionsH,
11420            proposed_optionsH: AEGP_RenderOptionsH,
11421            rendered_is_sufficientPB: *mut A_Boolean,
11422        ) -> A_Err,
11423    >,
11424    pub AEGP_RenderNewItemSoundData: ::std::option::Option<
11425        unsafe extern "C" fn(
11426            itemH: AEGP_ItemH,
11427            start_timePT: *const A_Time,
11428            durationPT: *const A_Time,
11429            sound_formatP: *const AEGP_SoundDataFormat,
11430            cancel_functionP0: AEGP_RenderSuiteCheckForCancel,
11431            cancel_function_refconP0: AEGP_CancelRefcon,
11432            new_sound_dataPH: *mut AEGP_SoundDataH,
11433        ) -> A_Err,
11434    >,
11435    pub AEGP_GetCurrentTimestamp:
11436        ::std::option::Option<unsafe extern "C" fn(time_stampP: *mut AEGP_TimeStamp) -> A_Err>,
11437    pub AEGP_HasItemChangedSinceTimestamp: ::std::option::Option<
11438        unsafe extern "C" fn(
11439            itemH: AEGP_ItemH,
11440            start_timeP: *const A_Time,
11441            durationP: *const A_Time,
11442            time_stampP: *const AEGP_TimeStamp,
11443            item_has_changedPB: *mut A_Boolean,
11444        ) -> A_Err,
11445    >,
11446    pub AEGP_IsItemWorthwhileToRender: ::std::option::Option<
11447        unsafe extern "C" fn(
11448            roH: AEGP_RenderOptionsH,
11449            time_stampP: *const AEGP_TimeStamp,
11450            worthwhile_to_renderPB: *mut A_Boolean,
11451        ) -> A_Err,
11452    >,
11453    pub AEGP_CheckinRenderedFrame: ::std::option::Option<
11454        unsafe extern "C" fn(
11455            roH: AEGP_RenderOptionsH,
11456            time_stampP: *const AEGP_TimeStamp,
11457            ticks_to_renderL: A_u_long,
11458            imageH: AEGP_PlatformWorldH,
11459        ) -> A_Err,
11460    >,
11461    pub AEGP_GetReceiptGuid: ::std::option::Option<
11462        unsafe extern "C" fn(receiptH: AEGP_FrameReceiptH, guidMH: *mut AEGP_MemHandle) -> A_Err,
11463    >,
11464}
11465#[repr(C)]
11466#[derive(Debug, Copy, Clone)]
11467pub struct AEGP_RenderAsyncManagerSuite1 {
11468    pub AEGP_CheckoutOrRender_ItemFrame_AsyncManager: ::std::option::Option<
11469        unsafe extern "C" fn(
11470            async_managerP: PF_AsyncManagerP,
11471            purpose_id: A_u_long,
11472            ro: AEGP_RenderOptionsH,
11473            out_receiptPH: *mut AEGP_FrameReceiptH,
11474        ) -> A_Err,
11475    >,
11476    pub AEGP_CheckoutOrRender_LayerFrame_AsyncManager: ::std::option::Option<
11477        unsafe extern "C" fn(
11478            async_managerP: PF_AsyncManagerP,
11479            purpose_id: A_u_long,
11480            lro: AEGP_LayerRenderOptionsH,
11481            out_receiptPH: *mut AEGP_FrameReceiptH,
11482        ) -> A_Err,
11483    >,
11484}
11485#[repr(C)]
11486#[derive(Debug, Copy, Clone)]
11487pub struct AEGP_TrackerSuite1 {
11488    pub AEGP_GetNumFeatures: ::std::option::Option<
11489        unsafe extern "C" fn(contextP: PT_TrackingContextPtr, num_featuresPL: *mut A_long) -> A_Err,
11490    >,
11491    pub AEGP_GetFeatureRegionByIndex: ::std::option::Option<
11492        unsafe extern "C" fn(
11493            contextP: PT_TrackingContextPtr,
11494            index: PT_Index,
11495            rectP: *mut A_FloatRect,
11496        ) -> A_Err,
11497    >,
11498    pub AEGP_GetSearchRegionByIndex: ::std::option::Option<
11499        unsafe extern "C" fn(
11500            contextP: PT_TrackingContextPtr,
11501            index: PT_Index,
11502            rectP: *mut A_FloatRect,
11503        ) -> A_Err,
11504    >,
11505    pub AEGP_GetFeatureWorldByIndex: ::std::option::Option<
11506        unsafe extern "C" fn(
11507            contextP: PT_TrackingContextPtr,
11508            index: PT_Index,
11509            feature_worldPH: *mut AEGP_WorldH,
11510        ) -> A_Err,
11511    >,
11512    pub AEGP_GetFrameWorld: ::std::option::Option<
11513        unsafe extern "C" fn(
11514            contextP: PT_TrackingContextPtr,
11515            frame_worldPH: *mut AEGP_WorldH,
11516        ) -> A_Err,
11517    >,
11518    pub AEGP_GetTrackerSourceDimensions: ::std::option::Option<
11519        unsafe extern "C" fn(
11520            contextP: PT_TrackingContextPtr,
11521            widthPL: *mut A_long,
11522            heightPL: *mut A_long,
11523        ) -> A_Err,
11524    >,
11525    pub AEGP_SetFeatureRegionByIndex: ::std::option::Option<
11526        unsafe extern "C" fn(
11527            contextP: PT_TrackingContextPtr,
11528            index: PT_Index,
11529            rectP: *const A_FloatRect,
11530        ) -> A_Err,
11531    >,
11532    pub AEGP_SetAccuracyByIndex: ::std::option::Option<
11533        unsafe extern "C" fn(
11534            contextP: PT_TrackingContextPtr,
11535            index: PT_Index,
11536            accuracyF: A_FpLong,
11537        ) -> A_Err,
11538    >,
11539    pub AEGP_ShouldTrackFeature: ::std::option::Option<
11540        unsafe extern "C" fn(
11541            contextP: PT_TrackingContextPtr,
11542            index: PT_Index,
11543            trackPB: *mut A_Boolean,
11544        ) -> A_Err,
11545    >,
11546}
11547#[repr(C)]
11548#[derive(Debug, Copy, Clone)]
11549pub struct AEGP_TrackerUtilitySuite1 {
11550    pub AEGP_HasUserCancelled: ::std::option::Option<
11551        unsafe extern "C" fn(
11552            contextP: PT_TrackingContextPtr,
11553            user_cancelledPB: *mut A_Boolean,
11554        ) -> A_Err,
11555    >,
11556    pub AEGP_GetTrackerFromTrackerInstance: ::std::option::Option<
11557        unsafe extern "C" fn(
11558            tracker_instanceP: PT_TrackerInstancePtr,
11559            trackerPP: *mut PT_TrackerPtr,
11560        ) -> A_Err,
11561    >,
11562    pub AEGP_GetTrackerInstanceFromTrackingContext: ::std::option::Option<
11563        unsafe extern "C" fn(
11564            contextP: PT_TrackingContextPtr,
11565            tracker_instancePP: *mut PT_TrackerInstancePtr,
11566        ) -> A_Err,
11567    >,
11568    pub AEGP_GetGlobalData: ::std::option::Option<
11569        unsafe extern "C" fn(trackerP: PT_TrackerPtr, global_dataPH: *mut AEGP_MemHandle) -> A_Err,
11570    >,
11571    pub AEGP_GetInstanceData: ::std::option::Option<
11572        unsafe extern "C" fn(
11573            tracker_instanceP: PT_TrackerInstancePtr,
11574            instance_dataPH: *mut AEGP_MemHandle,
11575        ) -> A_Err,
11576    >,
11577    pub AEGP_GetTrackData: ::std::option::Option<
11578        unsafe extern "C" fn(
11579            contextP: PT_TrackingContextPtr,
11580            track_dataPH: *mut AEGP_MemHandle,
11581        ) -> A_Err,
11582    >,
11583}
11584#[repr(C)]
11585#[derive(Debug, Copy, Clone)]
11586pub struct _AEGP_RQM_Refcon {
11587    _unused: [u8; 0],
11588}
11589pub type AEGP_RQM_Refcon = *mut _AEGP_RQM_Refcon;
11590pub type AEGP_RQM_SessionId = A_u_longlong;
11591pub type AEGP_RQM_ItemId = A_u_longlong;
11592pub type AEGP_RQM_FrameId = A_u_longlong;
11593pub const AEGP_RQM_FinishedStatus_AEGP_RQM_FinishedStatus_UNKNOWN: AEGP_RQM_FinishedStatus = 0;
11594pub const AEGP_RQM_FinishedStatus_AEGP_RQM_FinishedStatus_SUCCEEDED: AEGP_RQM_FinishedStatus = 1;
11595pub const AEGP_RQM_FinishedStatus_AEGP_RQM_FinishedStatus_ABORTED: AEGP_RQM_FinishedStatus = 2;
11596pub const AEGP_RQM_FinishedStatus_AEGP_RQM_FinishedStatus_ERRED: AEGP_RQM_FinishedStatus = 3;
11597pub type AEGP_RQM_FinishedStatus = ::std::os::raw::c_uint;
11598#[repr(C)]
11599#[derive(Debug, Copy, Clone)]
11600pub struct _AEGP_RQM_BasicData {
11601    pub pica_basicP: *const SPBasicSuite,
11602    pub aegp_plug_id: A_long,
11603    pub aegp_refconPV: AEGP_RQM_Refcon,
11604}
11605pub type AEGP_RQM_BasicData = _AEGP_RQM_BasicData;
11606#[repr(C)]
11607#[derive(Debug, Copy, Clone)]
11608pub struct _AEGP_RQM_FunctionBlock1 {
11609    pub AEGP_RQM_RenderJobStarted: ::std::option::Option<
11610        unsafe extern "C" fn(
11611            basic_dataP: *mut AEGP_RQM_BasicData,
11612            jobid: AEGP_RQM_SessionId,
11613        ) -> A_Err,
11614    >,
11615    pub AEGP_RQM_RenderJobEnded: ::std::option::Option<
11616        unsafe extern "C" fn(
11617            basic_dataP: *mut AEGP_RQM_BasicData,
11618            jobid: AEGP_RQM_SessionId,
11619        ) -> A_Err,
11620    >,
11621    pub AEGP_RQM_RenderJobItemStarted: ::std::option::Option<
11622        unsafe extern "C" fn(
11623            basic_dataP: *mut AEGP_RQM_BasicData,
11624            jobid: AEGP_RQM_SessionId,
11625            itemid: AEGP_RQM_ItemId,
11626        ) -> A_Err,
11627    >,
11628    pub AEGP_RQM_RenderJobItemUpdated: ::std::option::Option<
11629        unsafe extern "C" fn(
11630            basic_dataP: *mut AEGP_RQM_BasicData,
11631            jobid: AEGP_RQM_SessionId,
11632            itemid: AEGP_RQM_ItemId,
11633            frameid: AEGP_RQM_FrameId,
11634        ) -> A_Err,
11635    >,
11636    pub AEGP_RQM_RenderJobItemEnded: ::std::option::Option<
11637        unsafe extern "C" fn(
11638            basic_dataP: *mut AEGP_RQM_BasicData,
11639            jobid: AEGP_RQM_SessionId,
11640            itemid: AEGP_RQM_ItemId,
11641            fstatus: AEGP_RQM_FinishedStatus,
11642        ) -> A_Err,
11643    >,
11644    pub AEGP_RQM_RenderJobItemReportLog: ::std::option::Option<
11645        unsafe extern "C" fn(
11646            basic_dataP: *mut AEGP_RQM_BasicData,
11647            jobid: AEGP_RQM_SessionId,
11648            itemid: AEGP_RQM_ItemId,
11649            isError: A_Boolean,
11650            logbuf: AEGP_MemHandle,
11651        ) -> A_Err,
11652    >,
11653}
11654pub type AEGP_RQM_FunctionBlock1 = _AEGP_RQM_FunctionBlock1;
11655#[repr(C)]
11656#[derive(Debug, Copy, Clone)]
11657pub struct AEGP_RenderQueueMonitorSuite1 {
11658    pub AEGP_RegisterListener: ::std::option::Option<
11659        unsafe extern "C" fn(
11660            aegp_plugin_id: AEGP_PluginID,
11661            aegp_refconP: AEGP_RQM_Refcon,
11662            fcn_blockP: *const AEGP_RQM_FunctionBlock1,
11663        ) -> A_Err,
11664    >,
11665    pub AEGP_DeregisterListener: ::std::option::Option<
11666        unsafe extern "C" fn(aegp_plugin_id: AEGP_PluginID, aegp_refconP: AEGP_RQM_Refcon) -> A_Err,
11667    >,
11668    pub AEGP_GetProjectName: ::std::option::Option<
11669        unsafe extern "C" fn(
11670            sessid: AEGP_RQM_SessionId,
11671            utf_project_namePH0: *mut AEGP_MemHandle,
11672        ) -> A_Err,
11673    >,
11674    pub AEGP_GetAppVersion: ::std::option::Option<
11675        unsafe extern "C" fn(
11676            sessid: AEGP_RQM_SessionId,
11677            utf_app_versionPH0: *mut AEGP_MemHandle,
11678        ) -> A_Err,
11679    >,
11680    pub AEGP_GetNumJobItems: ::std::option::Option<
11681        unsafe extern "C" fn(sessid: AEGP_RQM_SessionId, num_jobitemsPL: *mut A_long) -> A_Err,
11682    >,
11683    pub AEGP_GetJobItemID: ::std::option::Option<
11684        unsafe extern "C" fn(
11685            sessid: AEGP_RQM_SessionId,
11686            jobItemIndex: A_long,
11687            jobItemID: *mut AEGP_RQM_ItemId,
11688        ) -> A_Err,
11689    >,
11690    pub AEGP_GetNumJobItemRenderSettings: ::std::option::Option<
11691        unsafe extern "C" fn(
11692            sessid: AEGP_RQM_SessionId,
11693            itemid: AEGP_RQM_ItemId,
11694            num_settingsPL: *mut A_long,
11695        ) -> A_Err,
11696    >,
11697    pub AEGP_GetJobItemRenderSetting: ::std::option::Option<
11698        unsafe extern "C" fn(
11699            sessid: AEGP_RQM_SessionId,
11700            itemid: AEGP_RQM_ItemId,
11701            settingIndex: A_long,
11702            utf_setting_namePH0: *mut AEGP_MemHandle,
11703            utf_setting_valuePH0: *mut AEGP_MemHandle,
11704        ) -> A_Err,
11705    >,
11706    pub AEGP_GetNumJobItemOutputModules: ::std::option::Option<
11707        unsafe extern "C" fn(
11708            sessid: AEGP_RQM_SessionId,
11709            itemid: AEGP_RQM_ItemId,
11710            num_outputmodulesPL: *mut A_long,
11711        ) -> A_Err,
11712    >,
11713    pub AEGP_GetNumJobItemOutputModuleSettings: ::std::option::Option<
11714        unsafe extern "C" fn(
11715            sessid: AEGP_RQM_SessionId,
11716            itemid: AEGP_RQM_ItemId,
11717            outputModuleIndex: A_long,
11718            num_settingsPL: *mut A_long,
11719        ) -> A_Err,
11720    >,
11721    pub AEGP_GetJobItemOutputModuleSetting: ::std::option::Option<
11722        unsafe extern "C" fn(
11723            sessid: AEGP_RQM_SessionId,
11724            itemid: AEGP_RQM_ItemId,
11725            outputModuleIndex: A_long,
11726            settingIndex: A_long,
11727            utf_setting_namePH0: *mut AEGP_MemHandle,
11728            utf_setting_valuePH0: *mut AEGP_MemHandle,
11729        ) -> A_Err,
11730    >,
11731    pub AEGP_GetNumJobItemOutputModuleWarnings: ::std::option::Option<
11732        unsafe extern "C" fn(
11733            sessid: AEGP_RQM_SessionId,
11734            itemid: AEGP_RQM_ItemId,
11735            outputModuleIndex: A_long,
11736            num_warningsPL: *mut A_long,
11737        ) -> A_Err,
11738    >,
11739    pub AEGP_GetJobItemOutputModuleWarning: ::std::option::Option<
11740        unsafe extern "C" fn(
11741            sessid: AEGP_RQM_SessionId,
11742            itemid: AEGP_RQM_ItemId,
11743            outputModuleIndex: A_long,
11744            warningIndex: A_long,
11745            utf_warning_valuePH0: *mut AEGP_MemHandle,
11746        ) -> A_Err,
11747    >,
11748    pub AEGP_GetNumJobItemFrameProperties: ::std::option::Option<
11749        unsafe extern "C" fn(
11750            sessid: AEGP_RQM_SessionId,
11751            itemid: AEGP_RQM_ItemId,
11752            frameid: AEGP_RQM_FrameId,
11753            num_propertiesPL: *mut A_long,
11754        ) -> A_Err,
11755    >,
11756    pub AEGP_GetJobItemFrameProperty: ::std::option::Option<
11757        unsafe extern "C" fn(
11758            sessid: AEGP_RQM_SessionId,
11759            itemid: AEGP_RQM_ItemId,
11760            frameid: AEGP_RQM_FrameId,
11761            propertyIndex: A_long,
11762            utf_property_namePH0: *mut AEGP_MemHandle,
11763            utf_property_valuePH0: *mut AEGP_MemHandle,
11764        ) -> A_Err,
11765    >,
11766    pub AEGP_GetNumJobItemOutputModuleProperties: ::std::option::Option<
11767        unsafe extern "C" fn(
11768            sessid: AEGP_RQM_SessionId,
11769            itemid: AEGP_RQM_ItemId,
11770            outputModuleIndex: A_long,
11771            num_propertiesPL: *mut A_long,
11772        ) -> A_Err,
11773    >,
11774    pub AEGP_GetJobItemOutputModuleProperty: ::std::option::Option<
11775        unsafe extern "C" fn(
11776            sessid: AEGP_RQM_SessionId,
11777            itemid: AEGP_RQM_ItemId,
11778            outputModuleIndex: A_long,
11779            propertyIndex: A_long,
11780            utf_property_namePH0: *mut AEGP_MemHandle,
11781            utf_property_valuePH0: *mut AEGP_MemHandle,
11782        ) -> A_Err,
11783    >,
11784    pub AEGP_GetJobItemFrameThumbnail: ::std::option::Option<
11785        unsafe extern "C" fn(
11786            sessid: AEGP_RQM_SessionId,
11787            itemid: AEGP_RQM_ItemId,
11788            frameid: AEGP_RQM_FrameId,
11789            widthPL: *mut A_long,
11790            heightPL: *mut A_long,
11791            thumbnailPH0: *mut AEGP_MemHandle,
11792        ) -> A_Err,
11793    >,
11794}
11795pub type PF_ConstPtr = *const ::std::os::raw::c_void;
11796pub type PF_ConstHandle = *const PF_ConstPtr;
11797#[repr(C)]
11798#[derive(Debug, Copy, Clone)]
11799pub struct PF_EffectSequenceDataSuite1 {
11800    pub PF_GetConstSequenceData: ::std::option::Option<
11801        unsafe extern "C" fn(effect_ref: PF_ProgPtr, sequence_data: *mut PF_ConstHandle) -> PF_Err,
11802    >,
11803}
11804#[repr(C)]
11805#[derive(Debug, Copy, Clone)]
11806pub struct AEGP_TimeDisplay {
11807    pub time_display_type: AEGP_TimeDisplayType,
11808    pub timebaseC: A_char,
11809    pub non_drop_30B: A_Boolean,
11810    pub frames_per_footC: A_char,
11811    pub starting_frameL: A_long,
11812}
11813#[repr(C)]
11814#[derive(Debug, Copy, Clone)]
11815pub struct AEGP_CanvasSuite1 {
11816    pub AEGP_GetCompToRender: ::std::option::Option<
11817        unsafe extern "C" fn(render_contextH: PR_RenderContextH, compPH: *mut AEGP_CompH) -> A_Err,
11818    >,
11819    pub AEGP_GetNumLayersToRender: ::std::option::Option<
11820        unsafe extern "C" fn(
11821            render_contextH: PR_RenderContextH,
11822            num_to_renderPL: *mut A_long,
11823        ) -> A_Err,
11824    >,
11825    pub AEGP_GetNthLayerContextToRender: ::std::option::Option<
11826        unsafe extern "C" fn(
11827            render_contextH: PR_RenderContextH,
11828            n: A_long,
11829            layer_contextPH: *mut AEGP_RenderLayerContextH,
11830        ) -> A_Err,
11831    >,
11832    pub AEGP_GetLayerFromLayerContext: ::std::option::Option<
11833        unsafe extern "C" fn(
11834            render_contextH: PR_RenderContextH,
11835            layer_contextH: AEGP_RenderLayerContextH,
11836            layerPH: *mut AEGP_LayerH,
11837        ) -> A_Err,
11838    >,
11839    pub AEGP_GetCompRenderTime: ::std::option::Option<
11840        unsafe extern "C" fn(
11841            render_contextH: PR_RenderContextH,
11842            time: *mut A_Time,
11843            time_step: *mut A_Time,
11844        ) -> A_Err,
11845    >,
11846    pub AEGP_GetCompDestinationBuffer: ::std::option::Option<
11847        unsafe extern "C" fn(
11848            render_contextH: PR_RenderContextH,
11849            compH: AEGP_CompH,
11850            dst: *mut PF_EffectWorld,
11851        ) -> A_Err,
11852    >,
11853    pub AEGP_GetROI: ::std::option::Option<
11854        unsafe extern "C" fn(render_contextH: PR_RenderContextH, roiPR: *mut A_LegacyRect) -> A_Err,
11855    >,
11856    #[doc = " for rendering track mattes"]
11857    pub AEGP_RenderLayer: ::std::option::Option<
11858        unsafe extern "C" fn(
11859            render_contextH: PR_RenderContextH,
11860            layerH: AEGP_LayerH,
11861            render_hints: AEGP_RenderHints,
11862            render_bufferP: *mut PF_EffectWorld,
11863        ) -> A_Err,
11864    >,
11865    pub AEGP_RenderTexture: ::std::option::Option<
11866        unsafe extern "C" fn(
11867            render_contextH: PR_RenderContextH,
11868            layer_contextH: AEGP_RenderLayerContextH,
11869            render_hints: AEGP_RenderHints,
11870            suggested_scaleP0: *mut A_FloatPoint,
11871            suggested_src_rectP0: *mut A_FloatRect,
11872            src_matrixP0: *mut A_Matrix3,
11873            dst: *mut PF_EffectWorld,
11874        ) -> A_Err,
11875    >,
11876    pub AEGP_DisposeTexture: ::std::option::Option<
11877        unsafe extern "C" fn(
11878            render_contextH: PR_RenderContextH,
11879            layer_contextH: AEGP_RenderLayerContextH,
11880            dst0: *mut PF_EffectWorld,
11881        ) -> A_Err,
11882    >,
11883    pub AEGP_GetFieldRender: ::std::option::Option<
11884        unsafe extern "C" fn(render_contextH: PR_RenderContextH, field: *mut PF_Field) -> A_Err,
11885    >,
11886    pub AEGP_ReportArtisanProgress: ::std::option::Option<
11887        unsafe extern "C" fn(
11888            render_contextH: PR_RenderContextH,
11889            countL: A_long,
11890            totalL: A_long,
11891        ) -> A_Err,
11892    >,
11893    pub AEGP_GetRenderDownsampleFactor: ::std::option::Option<
11894        unsafe extern "C" fn(
11895            render_contextH: PR_RenderContextH,
11896            dsfP: *mut AEGP_DownsampleFactor,
11897        ) -> A_Err,
11898    >,
11899    pub AEGP_IsBlankCanvas: ::std::option::Option<
11900        unsafe extern "C" fn(
11901            render_contextH: PR_RenderContextH,
11902            is_blankPB: *mut A_Boolean,
11903        ) -> A_Err,
11904    >,
11905    pub AEGP_GetRenderLayerToWorldXform: ::std::option::Option<
11906        unsafe extern "C" fn(
11907            render_contextH: PR_RenderContextH,
11908            layer_contextH: AEGP_RenderLayerContextH,
11909            comp_timeP: *const A_Time,
11910            transform: *mut A_Matrix4,
11911        ) -> A_Err,
11912    >,
11913    pub AEGP_GetRenderLayerBounds: ::std::option::Option<
11914        unsafe extern "C" fn(
11915            render_contextH: PR_RenderContextH,
11916            layer_contextH: AEGP_RenderLayerContextH,
11917            comp_timeP: *const A_Time,
11918            boundsP: *mut A_LegacyRect,
11919        ) -> A_Err,
11920    >,
11921    pub AEGP_GetRenderOpacity: ::std::option::Option<
11922        unsafe extern "C" fn(
11923            render_contextH: PR_RenderContextH,
11924            layer_contextH: AEGP_RenderLayerContextH,
11925            comp_timePT: *const A_Time,
11926            opacityPF: *mut A_FpLong,
11927        ) -> A_Err,
11928    >,
11929    pub AEGP_IsRenderLayerActive: ::std::option::Option<
11930        unsafe extern "C" fn(
11931            render_contextH: PR_RenderContextH,
11932            layer_contextH: AEGP_RenderLayerContextH,
11933            comp_timePT: *const A_Time,
11934            activePB: *mut A_Boolean,
11935        ) -> A_Err,
11936    >,
11937    pub AEGP_SetArtisanLayerProgress: ::std::option::Option<
11938        unsafe extern "C" fn(
11939            render_contextH: PR_RenderContextH,
11940            countL: A_long,
11941            num_layersL: A_long,
11942        ) -> A_Err,
11943    >,
11944}
11945#[repr(C)]
11946#[derive(Debug, Copy, Clone)]
11947pub struct AEGP_RQItemSuite3 {
11948    pub AEGP_GetNumRQItems:
11949        ::std::option::Option<unsafe extern "C" fn(num_itemsPL: *mut A_long) -> A_Err>,
11950    pub AEGP_GetRQItemByIndex: ::std::option::Option<
11951        unsafe extern "C" fn(rq_item_index: A_long, rq_item_refPH: *mut AEGP_RQItemRefH) -> A_Err,
11952    >,
11953    pub AEGP_GetNextRQItem: ::std::option::Option<
11954        unsafe extern "C" fn(
11955            current_rq_itemH: AEGP_RQItemRefH,
11956            next_rq_itemH: *mut AEGP_RQItemRefH,
11957        ) -> A_Err,
11958    >,
11959    pub AEGP_GetNumOutputModulesForRQItem: ::std::option::Option<
11960        unsafe extern "C" fn(rq_itemH: AEGP_RQItemRefH, num_outmodsPL: *mut A_long) -> A_Err,
11961    >,
11962    pub AEGP_GetRenderState: ::std::option::Option<
11963        unsafe extern "C" fn(
11964            rq_itemH: AEGP_RQItemRefH,
11965            statusP: *mut AEGP_RenderItemStatusType,
11966        ) -> A_Err,
11967    >,
11968    pub AEGP_SetRenderState: ::std::option::Option<
11969        unsafe extern "C" fn(rq_itemH: AEGP_RQItemRefH, status: AEGP_RenderItemStatusType) -> A_Err,
11970    >,
11971    pub AEGP_GetStartedTime: ::std::option::Option<
11972        unsafe extern "C" fn(rq_itemH: AEGP_RQItemRefH, started_timePT: *mut A_Time) -> A_Err,
11973    >,
11974    pub AEGP_GetElapsedTime: ::std::option::Option<
11975        unsafe extern "C" fn(rq_itemH: AEGP_RQItemRefH, render_timePT: *mut A_Time) -> A_Err,
11976    >,
11977    pub AEGP_GetLogType: ::std::option::Option<
11978        unsafe extern "C" fn(rq_itemH: AEGP_RQItemRefH, logtypeP: *mut AEGP_LogType) -> A_Err,
11979    >,
11980    pub AEGP_SetLogType: ::std::option::Option<
11981        unsafe extern "C" fn(rq_itemH: AEGP_RQItemRefH, logtype: AEGP_LogType) -> A_Err,
11982    >,
11983    pub AEGP_RemoveOutputModule: ::std::option::Option<
11984        unsafe extern "C" fn(rq_itemH: AEGP_RQItemRefH, outmodH: AEGP_OutputModuleRefH) -> A_Err,
11985    >,
11986    pub AEGP_GetComment: ::std::option::Option<
11987        unsafe extern "C" fn(rq_itemH: AEGP_RQItemRefH, commentZ: *mut A_char) -> A_Err,
11988    >,
11989    pub AEGP_SetComment: ::std::option::Option<
11990        unsafe extern "C" fn(rq_itemH: AEGP_RQItemRefH, commentZ: *const A_char) -> A_Err,
11991    >,
11992    pub AEGP_GetCompFromRQItem: ::std::option::Option<
11993        unsafe extern "C" fn(rq_itemH: AEGP_RQItemRefH, compPH: *mut AEGP_CompH) -> A_Err,
11994    >,
11995    pub AEGP_DeleteRQItem:
11996        ::std::option::Option<unsafe extern "C" fn(rq_itemH: AEGP_RQItemRefH) -> A_Err>,
11997}
11998#[repr(C)]
11999#[derive(Debug, Copy, Clone)]
12000pub struct AEGP_RQItemSuite2 {
12001    pub AEGP_GetNumRQItems:
12002        ::std::option::Option<unsafe extern "C" fn(num_itemsPL: *mut A_long) -> A_Err>,
12003    pub AEGP_GetRQItemByIndex: ::std::option::Option<
12004        unsafe extern "C" fn(rq_item_index: A_long, rq_item_refPH: *mut AEGP_RQItemRefH) -> A_Err,
12005    >,
12006    pub AEGP_GetNextRQItem: ::std::option::Option<
12007        unsafe extern "C" fn(
12008            current_rq_itemH: AEGP_RQItemRefH,
12009            next_rq_itemH: *mut AEGP_RQItemRefH,
12010        ) -> A_Err,
12011    >,
12012    pub AEGP_GetNumOutputModulesForRQItem: ::std::option::Option<
12013        unsafe extern "C" fn(rq_itemH: AEGP_RQItemRefH, num_outmodsPL: *mut A_long) -> A_Err,
12014    >,
12015    pub AEGP_GetRenderState: ::std::option::Option<
12016        unsafe extern "C" fn(
12017            rq_itemH: AEGP_RQItemRefH,
12018            statusP: *mut AEGP_RenderItemStatusType,
12019        ) -> A_Err,
12020    >,
12021    pub AEGP_SetRenderState: ::std::option::Option<
12022        unsafe extern "C" fn(rq_itemH: AEGP_RQItemRefH, status: AEGP_RenderItemStatusType) -> A_Err,
12023    >,
12024    pub AEGP_GetStartedTime: ::std::option::Option<
12025        unsafe extern "C" fn(rq_itemH: AEGP_RQItemRefH, started_timePT: *mut A_Time) -> A_Err,
12026    >,
12027    pub AEGP_GetElapsedTime: ::std::option::Option<
12028        unsafe extern "C" fn(rq_itemH: AEGP_RQItemRefH, render_timePT: *mut A_Time) -> A_Err,
12029    >,
12030    pub AEGP_GetLogType: ::std::option::Option<
12031        unsafe extern "C" fn(rq_itemH: AEGP_RQItemRefH, logtypeP: *mut AEGP_LogType) -> A_Err,
12032    >,
12033    pub AEGP_SetLogType: ::std::option::Option<
12034        unsafe extern "C" fn(rq_itemH: AEGP_RQItemRefH, logtype: AEGP_LogType) -> A_Err,
12035    >,
12036    pub AEGP_RemoveOutputModule: ::std::option::Option<
12037        unsafe extern "C" fn(rq_itemH: AEGP_RQItemRefH, outmodH: AEGP_OutputModuleRefH) -> A_Err,
12038    >,
12039    pub AEGP_GetComment: ::std::option::Option<
12040        unsafe extern "C" fn(rq_itemH: AEGP_RQItemRefH, commentZ: *mut A_char) -> A_Err,
12041    >,
12042    pub AEGP_SetComment: ::std::option::Option<
12043        unsafe extern "C" fn(rq_itemH: AEGP_RQItemRefH, commentZ: *const A_char) -> A_Err,
12044    >,
12045    pub AEGP_GetCompFromRQItem: ::std::option::Option<
12046        unsafe extern "C" fn(rq_itemH: AEGP_RQItemRefH, compPH: *mut AEGP_CompH) -> A_Err,
12047    >,
12048}
12049#[repr(C)]
12050#[derive(Debug, Copy, Clone)]
12051pub struct AEGP_RQItemSuite1 {
12052    pub AEGP_GetNumRQItems:
12053        ::std::option::Option<unsafe extern "C" fn(num_itemsPL: *mut A_long) -> A_Err>,
12054    pub AEGP_GetRQItemByIndex: ::std::option::Option<
12055        unsafe extern "C" fn(rq_item_index: A_long, rq_item_refPH: *mut AEGP_RQItemRefH) -> A_Err,
12056    >,
12057    pub AEGP_GetNextRQItem: ::std::option::Option<
12058        unsafe extern "C" fn(
12059            current_rq_itemH: AEGP_RQItemRefH,
12060            next_rq_itemH: *mut AEGP_RQItemRefH,
12061        ) -> A_Err,
12062    >,
12063    pub AEGP_GetNumOutputModulesForRQItem: ::std::option::Option<
12064        unsafe extern "C" fn(rq_itemH: AEGP_RQItemRefH, num_outmodsPL: *mut A_long) -> A_Err,
12065    >,
12066    pub AEGP_GetRenderState: ::std::option::Option<
12067        unsafe extern "C" fn(
12068            rq_itemH: AEGP_RQItemRefH,
12069            statusP: *mut AEGP_RenderItemStatusType,
12070        ) -> A_Err,
12071    >,
12072    pub AEGP_SetRenderState: ::std::option::Option<
12073        unsafe extern "C" fn(rq_itemH: AEGP_RQItemRefH, status: AEGP_RenderItemStatusType) -> A_Err,
12074    >,
12075    pub AEGP_GetStartedTime: ::std::option::Option<
12076        unsafe extern "C" fn(rq_itemH: AEGP_RQItemRefH, started_timePT: *mut A_Time) -> A_Err,
12077    >,
12078    pub AEGP_GetElapsedTime: ::std::option::Option<
12079        unsafe extern "C" fn(rq_itemH: AEGP_RQItemRefH, render_timePT: *mut A_Time) -> A_Err,
12080    >,
12081    pub AEGP_GetLogType: ::std::option::Option<
12082        unsafe extern "C" fn(rq_itemH: AEGP_RQItemRefH, logtypeP: *mut AEGP_LogType) -> A_Err,
12083    >,
12084    pub AEGP_SetLogType: ::std::option::Option<
12085        unsafe extern "C" fn(rq_itemH: AEGP_RQItemRefH, logtype: AEGP_LogType) -> A_Err,
12086    >,
12087    pub AEGP_RemoveOutputModule: ::std::option::Option<
12088        unsafe extern "C" fn(rq_itemH: AEGP_RQItemRefH, outmodH: AEGP_OutputModuleRefH) -> A_Err,
12089    >,
12090    pub AEGP_GetComment: ::std::option::Option<
12091        unsafe extern "C" fn(rq_itemH: AEGP_RQItemRefH, commentZ: *mut A_char) -> A_Err,
12092    >,
12093    pub AEGP_SetComment: ::std::option::Option<
12094        unsafe extern "C" fn(rq_itemH: AEGP_RQItemRefH, commentZ: *const A_char) -> A_Err,
12095    >,
12096}
12097#[repr(C)]
12098#[derive(Debug, Copy, Clone)]
12099pub struct AEGP_CanvasSuite2 {
12100    pub AEGP_GetCompToRender: ::std::option::Option<
12101        unsafe extern "C" fn(render_contextH: PR_RenderContextH, compPH: *mut AEGP_CompH) -> A_Err,
12102    >,
12103    pub AEGP_GetNumLayersToRender: ::std::option::Option<
12104        unsafe extern "C" fn(
12105            render_contextH: PR_RenderContextH,
12106            num_to_renderPL: *mut A_long,
12107        ) -> A_Err,
12108    >,
12109    pub AEGP_GetNthLayerContextToRender: ::std::option::Option<
12110        unsafe extern "C" fn(
12111            render_contextH: PR_RenderContextH,
12112            n: A_long,
12113            layer_contextPH: *mut AEGP_RenderLayerContextH,
12114        ) -> A_Err,
12115    >,
12116    pub AEGP_GetLayerFromLayerContext: ::std::option::Option<
12117        unsafe extern "C" fn(
12118            render_contextH: PR_RenderContextH,
12119            layer_contextH: AEGP_RenderLayerContextH,
12120            layerPH: *mut AEGP_LayerH,
12121        ) -> A_Err,
12122    >,
12123    #[doc = " With collapsed geometrics \"on\" this gives the layer in the root comp\n contining the layer context. With collapsed geometrics off\n this is the same as AEGP_GetLayerFromLayerContext.\n"]
12124    pub AEGP_GetTopLayerFromLayerContext: ::std::option::Option<
12125        unsafe extern "C" fn(
12126            render_contextH: PR_RenderContextH,
12127            layer_contextH: AEGP_RenderLayerContextH,
12128            layerPH: *mut AEGP_LayerH,
12129        ) -> A_Err,
12130    >,
12131    pub AEGP_GetCompRenderTime: ::std::option::Option<
12132        unsafe extern "C" fn(
12133            render_contextH: PR_RenderContextH,
12134            time: *mut A_Time,
12135            time_step: *mut A_Time,
12136        ) -> A_Err,
12137    >,
12138    pub AEGP_GetCompDestinationBuffer: ::std::option::Option<
12139        unsafe extern "C" fn(
12140            render_contextH: PR_RenderContextH,
12141            compH: AEGP_CompH,
12142            dst: *mut PF_EffectWorld,
12143        ) -> A_Err,
12144    >,
12145    pub AEGP_GetROI: ::std::option::Option<
12146        unsafe extern "C" fn(render_contextH: PR_RenderContextH, roiPR: *mut A_LegacyRect) -> A_Err,
12147    >,
12148    #[doc = " for rendering track mattes"]
12149    pub AEGP_RenderLayer: ::std::option::Option<
12150        unsafe extern "C" fn(
12151            render_contextH: PR_RenderContextH,
12152            layerH: AEGP_LayerH,
12153            render_hints: AEGP_RenderHints,
12154            render_bufferP: *mut PF_EffectWorld,
12155        ) -> A_Err,
12156    >,
12157    pub AEGP_RenderTexture: ::std::option::Option<
12158        unsafe extern "C" fn(
12159            render_contextH: PR_RenderContextH,
12160            layer_contextH: AEGP_RenderLayerContextH,
12161            render_hints: AEGP_RenderHints,
12162            suggested_scaleP0: *mut A_FloatPoint,
12163            suggested_src_rectP0: *mut A_FloatRect,
12164            src_matrixP0: *mut A_Matrix3,
12165            dst: *mut PF_EffectWorld,
12166        ) -> A_Err,
12167    >,
12168    pub AEGP_DisposeTexture: ::std::option::Option<
12169        unsafe extern "C" fn(
12170            render_contextH: PR_RenderContextH,
12171            layer_contextH: AEGP_RenderLayerContextH,
12172            dst0: *mut PF_EffectWorld,
12173        ) -> A_Err,
12174    >,
12175    pub AEGP_GetFieldRender: ::std::option::Option<
12176        unsafe extern "C" fn(render_contextH: PR_RenderContextH, field: *mut PF_Field) -> A_Err,
12177    >,
12178    pub AEGP_ReportArtisanProgress: ::std::option::Option<
12179        unsafe extern "C" fn(
12180            render_contextH: PR_RenderContextH,
12181            countL: A_long,
12182            totalL: A_long,
12183        ) -> A_Err,
12184    >,
12185    pub AEGP_GetRenderDownsampleFactor: ::std::option::Option<
12186        unsafe extern "C" fn(
12187            render_contextH: PR_RenderContextH,
12188            dsfP: *mut AEGP_DownsampleFactor,
12189        ) -> A_Err,
12190    >,
12191    pub AEGP_IsBlankCanvas: ::std::option::Option<
12192        unsafe extern "C" fn(
12193            render_contextH: PR_RenderContextH,
12194            is_blankPB: *mut A_Boolean,
12195        ) -> A_Err,
12196    >,
12197    pub AEGP_GetRenderLayerToWorldXform: ::std::option::Option<
12198        unsafe extern "C" fn(
12199            render_contextH: PR_RenderContextH,
12200            layer_contextH: AEGP_RenderLayerContextH,
12201            comp_timeP: *const A_Time,
12202            transform: *mut A_Matrix4,
12203        ) -> A_Err,
12204    >,
12205    pub AEGP_GetRenderLayerBounds: ::std::option::Option<
12206        unsafe extern "C" fn(
12207            render_contextH: PR_RenderContextH,
12208            layer_contextH: AEGP_RenderLayerContextH,
12209            comp_timeP: *const A_Time,
12210            boundsP: *mut A_LegacyRect,
12211        ) -> A_Err,
12212    >,
12213    pub AEGP_GetRenderOpacity: ::std::option::Option<
12214        unsafe extern "C" fn(
12215            render_contextH: PR_RenderContextH,
12216            layer_contextH: AEGP_RenderLayerContextH,
12217            comp_timePT: *const A_Time,
12218            opacityPF: *mut A_FpLong,
12219        ) -> A_Err,
12220    >,
12221    pub AEGP_IsRenderLayerActive: ::std::option::Option<
12222        unsafe extern "C" fn(
12223            render_contextH: PR_RenderContextH,
12224            layer_contextH: AEGP_RenderLayerContextH,
12225            comp_timePT: *const A_Time,
12226            activePB: *mut A_Boolean,
12227        ) -> A_Err,
12228    >,
12229    pub AEGP_SetArtisanLayerProgress: ::std::option::Option<
12230        unsafe extern "C" fn(
12231            render_contextH: PR_RenderContextH,
12232            countL: A_long,
12233            num_layersL: A_long,
12234        ) -> A_Err,
12235    >,
12236    pub AEGP_RenderLayerPlus: ::std::option::Option<
12237        unsafe extern "C" fn(
12238            render_contextH: PR_RenderContextH,
12239            layerH: AEGP_LayerH,
12240            layer_contextH: AEGP_RenderLayerContextH,
12241            render_hints: AEGP_RenderHints,
12242            render_bufferP: *mut PF_EffectWorld,
12243        ) -> A_Err,
12244    >,
12245    pub AEGP_GetTrackMatteContext: ::std::option::Option<
12246        unsafe extern "C" fn(
12247            render_contextH: PR_RenderContextH,
12248            fill_contextH: AEGP_RenderLayerContextH,
12249            matte_contextPH: *mut AEGP_RenderLayerContextH,
12250        ) -> A_Err,
12251    >,
12252}
12253#[repr(C)]
12254#[derive(Debug, Copy, Clone)]
12255pub struct AEGP_CanvasSuite4 {
12256    pub AEGP_GetCompToRender: ::std::option::Option<
12257        unsafe extern "C" fn(render_contextH: PR_RenderContextH, compPH: *mut AEGP_CompH) -> A_Err,
12258    >,
12259    pub AEGP_GetNumLayersToRender: ::std::option::Option<
12260        unsafe extern "C" fn(
12261            render_contextH: PR_RenderContextH,
12262            num_to_renderPL: *mut A_long,
12263        ) -> A_Err,
12264    >,
12265    pub AEGP_GetNthLayerContextToRender: ::std::option::Option<
12266        unsafe extern "C" fn(
12267            render_contextH: PR_RenderContextH,
12268            n: A_long,
12269            layer_contextPH: *mut AEGP_RenderLayerContextH,
12270        ) -> A_Err,
12271    >,
12272    pub AEGP_GetLayerFromLayerContext: ::std::option::Option<
12273        unsafe extern "C" fn(
12274            render_contextH: PR_RenderContextH,
12275            layer_contextH: AEGP_RenderLayerContextH,
12276            layerPH: *mut AEGP_LayerH,
12277        ) -> A_Err,
12278    >,
12279    #[doc = " With collapsed geometrics \"on\" this gives the layer in the root comp\n contining the layer context. With collapsed geometrics off\n this is the same as AEGP_GetLayerFromLayerContext.\n"]
12280    pub AEGP_GetTopLayerFromLayerContext: ::std::option::Option<
12281        unsafe extern "C" fn(
12282            render_contextH: PR_RenderContextH,
12283            layer_contextH: AEGP_RenderLayerContextH,
12284            layerPH: *mut AEGP_LayerH,
12285        ) -> A_Err,
12286    >,
12287    pub AEGP_GetCompRenderTime: ::std::option::Option<
12288        unsafe extern "C" fn(
12289            render_contextH: PR_RenderContextH,
12290            time: *mut A_Time,
12291            time_step: *mut A_Time,
12292        ) -> A_Err,
12293    >,
12294    pub AEGP_GetCompDestinationBuffer: ::std::option::Option<
12295        unsafe extern "C" fn(
12296            render_contextH: PR_RenderContextH,
12297            compH: AEGP_CompH,
12298            dst: *mut AEGP_WorldH,
12299        ) -> A_Err,
12300    >,
12301    pub AEGP_GetROI: ::std::option::Option<
12302        unsafe extern "C" fn(render_contextH: PR_RenderContextH, roiPR: *mut A_LegacyRect) -> A_Err,
12303    >,
12304    pub AEGP_RenderTexture: ::std::option::Option<
12305        unsafe extern "C" fn(
12306            render_contextH: PR_RenderContextH,
12307            layer_contextH: AEGP_RenderLayerContextH,
12308            render_hints: AEGP_RenderHints,
12309            suggested_scaleP0: *mut A_FloatPoint,
12310            suggested_src_rectP0: *mut A_FloatRect,
12311            src_matrixP0: *mut A_Matrix3,
12312            dstPH: *mut AEGP_WorldH,
12313        ) -> A_Err,
12314    >,
12315    pub AEGP_DisposeTexture: ::std::option::Option<
12316        unsafe extern "C" fn(
12317            render_contextH: PR_RenderContextH,
12318            layer_contextH: AEGP_RenderLayerContextH,
12319            dstH0: AEGP_WorldH,
12320        ) -> A_Err,
12321    >,
12322    pub AEGP_GetFieldRender: ::std::option::Option<
12323        unsafe extern "C" fn(render_contextH: PR_RenderContextH, field: *mut PF_Field) -> A_Err,
12324    >,
12325    pub AEGP_ReportArtisanProgress: ::std::option::Option<
12326        unsafe extern "C" fn(
12327            render_contextH: PR_RenderContextH,
12328            countL: A_long,
12329            totalL: A_long,
12330        ) -> A_Err,
12331    >,
12332    pub AEGP_GetRenderDownsampleFactor: ::std::option::Option<
12333        unsafe extern "C" fn(
12334            render_contextH: PR_RenderContextH,
12335            dsfP: *mut AEGP_DownsampleFactor,
12336        ) -> A_Err,
12337    >,
12338    pub AEGP_SetRenderDownsampleFactor: ::std::option::Option<
12339        unsafe extern "C" fn(
12340            render_contextH: PR_RenderContextH,
12341            dsfP: *mut AEGP_DownsampleFactor,
12342        ) -> A_Err,
12343    >,
12344    pub AEGP_IsBlankCanvas: ::std::option::Option<
12345        unsafe extern "C" fn(
12346            render_contextH: PR_RenderContextH,
12347            is_blankPB: *mut A_Boolean,
12348        ) -> A_Err,
12349    >,
12350    pub AEGP_GetRenderLayerToWorldXform: ::std::option::Option<
12351        unsafe extern "C" fn(
12352            render_contextH: PR_RenderContextH,
12353            layer_contextH: AEGP_RenderLayerContextH,
12354            comp_timeP: *const A_Time,
12355            transform: *mut A_Matrix4,
12356        ) -> A_Err,
12357    >,
12358    pub AEGP_GetRenderLayerBounds: ::std::option::Option<
12359        unsafe extern "C" fn(
12360            render_contextH: PR_RenderContextH,
12361            layer_contextH: AEGP_RenderLayerContextH,
12362            comp_timeP: *const A_Time,
12363            boundsP: *mut A_LegacyRect,
12364        ) -> A_Err,
12365    >,
12366    pub AEGP_GetRenderOpacity: ::std::option::Option<
12367        unsafe extern "C" fn(
12368            render_contextH: PR_RenderContextH,
12369            layer_contextH: AEGP_RenderLayerContextH,
12370            comp_timePT: *const A_Time,
12371            opacityPF: *mut A_FpLong,
12372        ) -> A_Err,
12373    >,
12374    pub AEGP_IsRenderLayerActive: ::std::option::Option<
12375        unsafe extern "C" fn(
12376            render_contextH: PR_RenderContextH,
12377            layer_contextH: AEGP_RenderLayerContextH,
12378            comp_timePT: *const A_Time,
12379            activePB: *mut A_Boolean,
12380        ) -> A_Err,
12381    >,
12382    pub AEGP_SetArtisanLayerProgress: ::std::option::Option<
12383        unsafe extern "C" fn(
12384            render_contextH: PR_RenderContextH,
12385            countL: A_long,
12386            num_layersL: A_long,
12387        ) -> A_Err,
12388    >,
12389    pub AEGP_RenderLayerPlus: ::std::option::Option<
12390        unsafe extern "C" fn(
12391            render_contextH: PR_RenderContextH,
12392            layerH: AEGP_LayerH,
12393            layer_contextH: AEGP_RenderLayerContextH,
12394            render_hints: AEGP_RenderHints,
12395            render_bufferPH: *mut AEGP_WorldH,
12396        ) -> A_Err,
12397    >,
12398    pub AEGP_GetTrackMatteContext: ::std::option::Option<
12399        unsafe extern "C" fn(
12400            render_contextH: PR_RenderContextH,
12401            fill_contextH: AEGP_RenderLayerContextH,
12402            matte_contextPH: *mut AEGP_RenderLayerContextH,
12403        ) -> A_Err,
12404    >,
12405    pub AEGP_RenderTextureWithReceipt: ::std::option::Option<
12406        unsafe extern "C" fn(
12407            render_contextH: PR_RenderContextH,
12408            layer_contextH: AEGP_RenderLayerContextH,
12409            render_hints: AEGP_RenderHints,
12410            suggested_scaleP0: *mut A_FloatPoint,
12411            suggested_src_rectP0: *mut A_FloatRect,
12412            src_matrixP0: *mut A_Matrix3,
12413            render_receiptPH: *mut AEGP_RenderReceiptH,
12414            dstPH: *mut AEGP_WorldH,
12415        ) -> A_Err,
12416    >,
12417    pub AEGP_RenderLayerPlusWithReceipt: ::std::option::Option<
12418        unsafe extern "C" fn(
12419            render_contextH: PR_RenderContextH,
12420            layerH: AEGP_LayerH,
12421            layer_contextH: AEGP_RenderLayerContextH,
12422            render_hints: AEGP_RenderHints,
12423            render_receiptPH: *mut AEGP_RenderReceiptH,
12424            render_bufferPH: *mut AEGP_WorldH,
12425        ) -> A_Err,
12426    >,
12427    pub AEGP_DisposeRenderReceipt:
12428        ::std::option::Option<unsafe extern "C" fn(render_receiptH: AEGP_RenderReceiptH) -> A_Err>,
12429    pub AEGP_CheckRenderReceipt: ::std::option::Option<
12430        unsafe extern "C" fn(
12431            current_render_contextH: PR_RenderContextH,
12432            current_layer_contextH: AEGP_RenderLayerContextH,
12433            old_render_receiptH: AEGP_RenderReceiptH,
12434            check_aceB: A_Boolean,
12435            receipt_statusP: *mut AEGP_RenderReceiptStatus,
12436        ) -> A_Err,
12437    >,
12438    pub AEGP_GetNumBinsToRender: ::std::option::Option<
12439        unsafe extern "C" fn(
12440            render_contextH: PR_RenderContextH,
12441            num_bins_to_renderPL: *mut A_long,
12442        ) -> A_Err,
12443    >,
12444    pub AEGP_SetNthBin: ::std::option::Option<
12445        unsafe extern "C" fn(render_contextH: PR_RenderContextH, n: A_long) -> A_Err,
12446    >,
12447    pub AEGP_GetBinType: ::std::option::Option<
12448        unsafe extern "C" fn(
12449            render_contextH: PR_RenderContextH,
12450            bin_typeP: *mut AEGP_BinType,
12451        ) -> A_Err,
12452    >,
12453    pub AEGP_GetRenderLayerToWorldXform2D3D: ::std::option::Option<
12454        unsafe extern "C" fn(
12455            render_contextH: PR_RenderContextH,
12456            layer_contextH: AEGP_RenderLayerContextH,
12457            comp_timeP: *const A_Time,
12458            only_2dB: A_Boolean,
12459            transform: *mut A_Matrix4,
12460        ) -> A_Err,
12461    >,
12462    pub AEGP_GetPlatformWindowRef: ::std::option::Option<
12463        unsafe extern "C" fn(
12464            render_contextH: PR_RenderContextH,
12465            window_refP: *mut AEGP_PlatformWindowRef,
12466        ) -> A_Err,
12467    >,
12468    pub AEGP_GetViewportScale: ::std::option::Option<
12469        unsafe extern "C" fn(
12470            render_contextH: PR_RenderContextH,
12471            scale_xPF: *mut A_FpLong,
12472            scale_yPF: *mut A_FpLong,
12473        ) -> A_Err,
12474    >,
12475    pub AEGP_GetViewportOrigin: ::std::option::Option<
12476        unsafe extern "C" fn(
12477            render_contextH: PR_RenderContextH,
12478            origin_xPL: *mut A_long,
12479            origin_yPL: *mut A_long,
12480        ) -> A_Err,
12481    >,
12482    pub AEGP_GetViewportRect: ::std::option::Option<
12483        unsafe extern "C" fn(
12484            render_contextH: PR_RenderContextH,
12485            viewport_rectPR: *mut A_LegacyRect,
12486        ) -> A_Err,
12487    >,
12488    pub AEGP_GetFallowColor: ::std::option::Option<
12489        unsafe extern "C" fn(
12490            render_contextH: PR_RenderContextH,
12491            fallow_colorP: *mut PF_Pixel8,
12492        ) -> A_Err,
12493    >,
12494    pub AEGP_GetInteractiveBuffer: ::std::option::Option<
12495        unsafe extern "C" fn(render_contextH: PR_RenderContextH, buffer: *mut AEGP_WorldH) -> A_Err,
12496    >,
12497    pub AEGP_GetInteractiveCheckerboard: ::std::option::Option<
12498        unsafe extern "C" fn(
12499            render_contextH: PR_RenderContextH,
12500            checkerboard_onPB: *mut A_Boolean,
12501        ) -> A_Err,
12502    >,
12503    pub AEGP_GetInteractiveCheckerboardColors: ::std::option::Option<
12504        unsafe extern "C" fn(
12505            render_contextH: PR_RenderContextH,
12506            checkerboard_color1P: *mut PF_Pixel,
12507            checkerboard_color2P: *mut PF_Pixel,
12508        ) -> A_Err,
12509    >,
12510    pub AEGP_GetInteractiveCheckerboardSize: ::std::option::Option<
12511        unsafe extern "C" fn(
12512            render_contextH: PR_RenderContextH,
12513            checkerboard_widthPLu: *mut A_u_long,
12514            checkerboard_heightPLu: *mut A_u_long,
12515        ) -> A_Err,
12516    >,
12517    pub AEGP_GetInteractiveCachedBuffer: ::std::option::Option<
12518        unsafe extern "C" fn(render_contextH: PR_RenderContextH, buffer: *mut AEGP_WorldH) -> A_Err,
12519    >,
12520    pub AEGP_ArtisanMustRenderAsLayer: ::std::option::Option<
12521        unsafe extern "C" fn(
12522            render_contextH: PR_RenderContextH,
12523            layer_contextH: AEGP_RenderLayerContextH,
12524            use_render_texturePB: *mut A_Boolean,
12525        ) -> A_Err,
12526    >,
12527}
12528#[repr(C)]
12529#[derive(Debug, Copy, Clone)]
12530pub struct AEGP_CanvasSuite5 {
12531    pub AEGP_GetCompToRender: ::std::option::Option<
12532        unsafe extern "C" fn(render_contextH: PR_RenderContextH, compPH: *mut AEGP_CompH) -> A_Err,
12533    >,
12534    pub AEGP_GetNumLayersToRender: ::std::option::Option<
12535        unsafe extern "C" fn(
12536            render_contextH: PR_RenderContextH,
12537            num_to_renderPL: *mut A_long,
12538        ) -> A_Err,
12539    >,
12540    pub AEGP_GetNthLayerContextToRender: ::std::option::Option<
12541        unsafe extern "C" fn(
12542            render_contextH: PR_RenderContextH,
12543            n: A_long,
12544            layer_contextPH: *mut AEGP_RenderLayerContextH,
12545        ) -> A_Err,
12546    >,
12547    pub AEGP_GetLayerFromLayerContext: ::std::option::Option<
12548        unsafe extern "C" fn(
12549            render_contextH: PR_RenderContextH,
12550            layer_contextH: AEGP_RenderLayerContextH,
12551            layerPH: *mut AEGP_LayerH,
12552        ) -> A_Err,
12553    >,
12554    #[doc = " With collapsed geometrics \"on\" this gives the layer in the root comp\n contining the layer context. With collapsed geometrics off\n this is the same as AEGP_GetLayerFromLayerContext.\n"]
12555    pub AEGP_GetTopLayerFromLayerContext: ::std::option::Option<
12556        unsafe extern "C" fn(
12557            render_contextH: PR_RenderContextH,
12558            layer_contextH: AEGP_RenderLayerContextH,
12559            layerPH: *mut AEGP_LayerH,
12560        ) -> A_Err,
12561    >,
12562    pub AEGP_GetCompRenderTime: ::std::option::Option<
12563        unsafe extern "C" fn(
12564            render_contextH: PR_RenderContextH,
12565            time: *mut A_Time,
12566            time_step: *mut A_Time,
12567        ) -> A_Err,
12568    >,
12569    pub AEGP_GetCompDestinationBuffer: ::std::option::Option<
12570        unsafe extern "C" fn(
12571            render_contextH: PR_RenderContextH,
12572            compH: AEGP_CompH,
12573            dst: *mut AEGP_WorldH,
12574        ) -> A_Err,
12575    >,
12576    pub AEGP_GetROI: ::std::option::Option<
12577        unsafe extern "C" fn(render_contextH: PR_RenderContextH, roiPR: *mut A_LegacyRect) -> A_Err,
12578    >,
12579    pub AEGP_RenderTexture: ::std::option::Option<
12580        unsafe extern "C" fn(
12581            render_contextH: PR_RenderContextH,
12582            layer_contextH: AEGP_RenderLayerContextH,
12583            render_hints: AEGP_RenderHints,
12584            suggested_scaleP0: *mut A_FloatPoint,
12585            suggested_src_rectP0: *mut A_FloatRect,
12586            src_matrixP0: *mut A_Matrix3,
12587            dstPH: *mut AEGP_WorldH,
12588        ) -> A_Err,
12589    >,
12590    pub AEGP_DisposeTexture: ::std::option::Option<
12591        unsafe extern "C" fn(
12592            render_contextH: PR_RenderContextH,
12593            layer_contextH: AEGP_RenderLayerContextH,
12594            dstH0: AEGP_WorldH,
12595        ) -> A_Err,
12596    >,
12597    pub AEGP_GetFieldRender: ::std::option::Option<
12598        unsafe extern "C" fn(render_contextH: PR_RenderContextH, field: *mut PF_Field) -> A_Err,
12599    >,
12600    pub AEGP_ReportArtisanProgress: ::std::option::Option<
12601        unsafe extern "C" fn(
12602            render_contextH: PR_RenderContextH,
12603            countL: A_long,
12604            totalL: A_long,
12605        ) -> A_Err,
12606    >,
12607    pub AEGP_GetRenderDownsampleFactor: ::std::option::Option<
12608        unsafe extern "C" fn(
12609            render_contextH: PR_RenderContextH,
12610            dsfP: *mut AEGP_DownsampleFactor,
12611        ) -> A_Err,
12612    >,
12613    pub AEGP_SetRenderDownsampleFactor: ::std::option::Option<
12614        unsafe extern "C" fn(
12615            render_contextH: PR_RenderContextH,
12616            dsfP: *mut AEGP_DownsampleFactor,
12617        ) -> A_Err,
12618    >,
12619    pub AEGP_IsBlankCanvas: ::std::option::Option<
12620        unsafe extern "C" fn(
12621            render_contextH: PR_RenderContextH,
12622            is_blankPB: *mut A_Boolean,
12623        ) -> A_Err,
12624    >,
12625    pub AEGP_GetRenderLayerToWorldXform: ::std::option::Option<
12626        unsafe extern "C" fn(
12627            render_contextH: PR_RenderContextH,
12628            layer_contextH: AEGP_RenderLayerContextH,
12629            comp_timeP: *const A_Time,
12630            transform: *mut A_Matrix4,
12631        ) -> A_Err,
12632    >,
12633    pub AEGP_GetRenderLayerBounds: ::std::option::Option<
12634        unsafe extern "C" fn(
12635            render_contextH: PR_RenderContextH,
12636            layer_contextH: AEGP_RenderLayerContextH,
12637            comp_timeP: *const A_Time,
12638            boundsP: *mut A_LegacyRect,
12639        ) -> A_Err,
12640    >,
12641    pub AEGP_GetRenderOpacity: ::std::option::Option<
12642        unsafe extern "C" fn(
12643            render_contextH: PR_RenderContextH,
12644            layer_contextH: AEGP_RenderLayerContextH,
12645            comp_timePT: *const A_Time,
12646            opacityPF: *mut A_FpLong,
12647        ) -> A_Err,
12648    >,
12649    pub AEGP_IsRenderLayerActive: ::std::option::Option<
12650        unsafe extern "C" fn(
12651            render_contextH: PR_RenderContextH,
12652            layer_contextH: AEGP_RenderLayerContextH,
12653            comp_timePT: *const A_Time,
12654            activePB: *mut A_Boolean,
12655        ) -> A_Err,
12656    >,
12657    pub AEGP_SetArtisanLayerProgress: ::std::option::Option<
12658        unsafe extern "C" fn(
12659            render_contextH: PR_RenderContextH,
12660            countL: A_long,
12661            num_layersL: A_long,
12662        ) -> A_Err,
12663    >,
12664    pub AEGP_RenderLayerPlus: ::std::option::Option<
12665        unsafe extern "C" fn(
12666            render_contextH: PR_RenderContextH,
12667            layerH: AEGP_LayerH,
12668            layer_contextH: AEGP_RenderLayerContextH,
12669            render_hints: AEGP_RenderHints,
12670            render_bufferPH: *mut AEGP_WorldH,
12671        ) -> A_Err,
12672    >,
12673    pub AEGP_GetTrackMatteContext: ::std::option::Option<
12674        unsafe extern "C" fn(
12675            render_contextH: PR_RenderContextH,
12676            fill_contextH: AEGP_RenderLayerContextH,
12677            matte_contextPH: *mut AEGP_RenderLayerContextH,
12678        ) -> A_Err,
12679    >,
12680    pub AEGP_RenderTextureWithReceipt: ::std::option::Option<
12681        unsafe extern "C" fn(
12682            render_contextH: PR_RenderContextH,
12683            layer_contextH: AEGP_RenderLayerContextH,
12684            render_hints: AEGP_RenderHints,
12685            suggested_scaleP0: *mut A_FloatPoint,
12686            suggested_src_rectP0: *mut A_FloatRect,
12687            src_matrixP0: *mut A_Matrix3,
12688            render_receiptPH: *mut AEGP_RenderReceiptH,
12689            dstPH: *mut AEGP_WorldH,
12690        ) -> A_Err,
12691    >,
12692    pub AEGP_RenderLayerPlusWithReceipt: ::std::option::Option<
12693        unsafe extern "C" fn(
12694            render_contextH: PR_RenderContextH,
12695            layerH: AEGP_LayerH,
12696            layer_contextH: AEGP_RenderLayerContextH,
12697            render_hints: AEGP_RenderHints,
12698            render_receiptPH: *mut AEGP_RenderReceiptH,
12699            render_bufferPH: *mut AEGP_WorldH,
12700        ) -> A_Err,
12701    >,
12702    pub AEGP_DisposeRenderReceipt:
12703        ::std::option::Option<unsafe extern "C" fn(render_receiptH: AEGP_RenderReceiptH) -> A_Err>,
12704    pub AEGP_CheckRenderReceipt: ::std::option::Option<
12705        unsafe extern "C" fn(
12706            current_render_contextH: PR_RenderContextH,
12707            current_layer_contextH: AEGP_RenderLayerContextH,
12708            old_render_receiptH: AEGP_RenderReceiptH,
12709            check_geometricsB: A_Boolean,
12710            receipt_statusP: *mut AEGP_RenderReceiptStatus,
12711        ) -> A_Err,
12712    >,
12713    pub AEGP_GetNumBinsToRender: ::std::option::Option<
12714        unsafe extern "C" fn(
12715            render_contextH: PR_RenderContextH,
12716            num_bins_to_renderPL: *mut A_long,
12717        ) -> A_Err,
12718    >,
12719    pub AEGP_SetNthBin: ::std::option::Option<
12720        unsafe extern "C" fn(render_contextH: PR_RenderContextH, n: A_long) -> A_Err,
12721    >,
12722    pub AEGP_GetBinType: ::std::option::Option<
12723        unsafe extern "C" fn(
12724            render_contextH: PR_RenderContextH,
12725            bin_typeP: *mut AEGP_BinType,
12726        ) -> A_Err,
12727    >,
12728    pub AEGP_GetRenderLayerToWorldXform2D3D: ::std::option::Option<
12729        unsafe extern "C" fn(
12730            render_contextH: PR_RenderContextH,
12731            layer_contextH: AEGP_RenderLayerContextH,
12732            comp_timeP: *const A_Time,
12733            only_2dB: A_Boolean,
12734            transform: *mut A_Matrix4,
12735        ) -> A_Err,
12736    >,
12737    pub AEGP_GetPlatformWindowRef: ::std::option::Option<
12738        unsafe extern "C" fn(
12739            render_contextH: PR_RenderContextH,
12740            window_refP: *mut AEGP_PlatformWindowRef,
12741        ) -> A_Err,
12742    >,
12743    pub AEGP_GetViewportScale: ::std::option::Option<
12744        unsafe extern "C" fn(
12745            render_contextH: PR_RenderContextH,
12746            scale_xPF: *mut A_FpLong,
12747            scale_yPF: *mut A_FpLong,
12748        ) -> A_Err,
12749    >,
12750    pub AEGP_GetViewportOrigin: ::std::option::Option<
12751        unsafe extern "C" fn(
12752            render_contextH: PR_RenderContextH,
12753            origin_xPL: *mut A_long,
12754            origin_yPL: *mut A_long,
12755        ) -> A_Err,
12756    >,
12757    pub AEGP_GetViewportRect: ::std::option::Option<
12758        unsafe extern "C" fn(
12759            render_contextH: PR_RenderContextH,
12760            viewport_rectPR: *mut A_LegacyRect,
12761        ) -> A_Err,
12762    >,
12763    pub AEGP_GetFallowColor: ::std::option::Option<
12764        unsafe extern "C" fn(
12765            render_contextH: PR_RenderContextH,
12766            fallow_colorP: *mut PF_Pixel8,
12767        ) -> A_Err,
12768    >,
12769    pub AEGP_GetInteractiveBuffer: ::std::option::Option<
12770        unsafe extern "C" fn(render_contextH: PR_RenderContextH, buffer: *mut AEGP_WorldH) -> A_Err,
12771    >,
12772    pub AEGP_GetInteractiveCheckerboard: ::std::option::Option<
12773        unsafe extern "C" fn(
12774            render_contextH: PR_RenderContextH,
12775            checkerboard_onPB: *mut A_Boolean,
12776        ) -> A_Err,
12777    >,
12778    pub AEGP_GetInteractiveCheckerboardColors: ::std::option::Option<
12779        unsafe extern "C" fn(
12780            render_contextH: PR_RenderContextH,
12781            checkerboard_color1P: *mut PF_Pixel,
12782            checkerboard_color2P: *mut PF_Pixel,
12783        ) -> A_Err,
12784    >,
12785    pub AEGP_GetInteractiveCheckerboardSize: ::std::option::Option<
12786        unsafe extern "C" fn(
12787            render_contextH: PR_RenderContextH,
12788            checkerboard_widthPLu: *mut A_u_long,
12789            checkerboard_heightPLu: *mut A_u_long,
12790        ) -> A_Err,
12791    >,
12792    pub AEGP_GetInteractiveCachedBuffer: ::std::option::Option<
12793        unsafe extern "C" fn(render_contextH: PR_RenderContextH, buffer: *mut AEGP_WorldH) -> A_Err,
12794    >,
12795    pub AEGP_ArtisanMustRenderAsLayer: ::std::option::Option<
12796        unsafe extern "C" fn(
12797            render_contextH: PR_RenderContextH,
12798            layer_contextH: AEGP_RenderLayerContextH,
12799            use_render_texturePB: *mut A_Boolean,
12800        ) -> A_Err,
12801    >,
12802    pub AEGP_GetInteractiveDisplayChannel: ::std::option::Option<
12803        unsafe extern "C" fn(
12804            render_contextH: PR_RenderContextH,
12805            display_channelP: *mut AEGP_DisplayChannelType,
12806        ) -> A_Err,
12807    >,
12808}
12809#[repr(C)]
12810#[derive(Debug, Copy, Clone)]
12811pub struct AEGP_CanvasSuite6 {
12812    pub AEGP_GetCompToRender: ::std::option::Option<
12813        unsafe extern "C" fn(render_contextH: PR_RenderContextH, compPH: *mut AEGP_CompH) -> A_Err,
12814    >,
12815    pub AEGP_GetNumLayersToRender: ::std::option::Option<
12816        unsafe extern "C" fn(
12817            render_contextH: PR_RenderContextH,
12818            num_to_renderPL: *mut A_long,
12819        ) -> A_Err,
12820    >,
12821    pub AEGP_GetNthLayerContextToRender: ::std::option::Option<
12822        unsafe extern "C" fn(
12823            render_contextH: PR_RenderContextH,
12824            n: A_long,
12825            layer_contextPH: *mut AEGP_RenderLayerContextH,
12826        ) -> A_Err,
12827    >,
12828    pub AEGP_GetLayerFromLayerContext: ::std::option::Option<
12829        unsafe extern "C" fn(
12830            render_contextH: PR_RenderContextH,
12831            layer_contextH: AEGP_RenderLayerContextH,
12832            layerPH: *mut AEGP_LayerH,
12833        ) -> A_Err,
12834    >,
12835    #[doc = " With collapsed geometrics \"on\" this gives the layer in the root comp\n contining the layer context. With collapsed geometrics off\n this is the same as AEGP_GetLayerFromLayerContext.\n"]
12836    pub AEGP_GetTopLayerFromLayerContext: ::std::option::Option<
12837        unsafe extern "C" fn(
12838            render_contextH: PR_RenderContextH,
12839            layer_contextH: AEGP_RenderLayerContextH,
12840            layerPH: *mut AEGP_LayerH,
12841        ) -> A_Err,
12842    >,
12843    pub AEGP_GetCompRenderTime: ::std::option::Option<
12844        unsafe extern "C" fn(
12845            render_contextH: PR_RenderContextH,
12846            time: *mut A_Time,
12847            time_step: *mut A_Time,
12848        ) -> A_Err,
12849    >,
12850    pub AEGP_GetCompDestinationBuffer: ::std::option::Option<
12851        unsafe extern "C" fn(
12852            render_contextH: PR_RenderContextH,
12853            compH: AEGP_CompH,
12854            dst: *mut AEGP_WorldH,
12855        ) -> A_Err,
12856    >,
12857    pub AEGP_GetROI: ::std::option::Option<
12858        unsafe extern "C" fn(render_contextH: PR_RenderContextH, roiPR: *mut A_LegacyRect) -> A_Err,
12859    >,
12860    pub AEGP_RenderTexture: ::std::option::Option<
12861        unsafe extern "C" fn(
12862            render_contextH: PR_RenderContextH,
12863            layer_contextH: AEGP_RenderLayerContextH,
12864            render_hints: AEGP_RenderHints,
12865            suggested_scaleP0: *mut A_FloatPoint,
12866            suggested_src_rectP0: *mut A_FloatRect,
12867            src_matrixP0: *mut A_Matrix3,
12868            dstPH: *mut AEGP_WorldH,
12869        ) -> A_Err,
12870    >,
12871    pub AEGP_DisposeTexture: ::std::option::Option<
12872        unsafe extern "C" fn(
12873            render_contextH: PR_RenderContextH,
12874            layer_contextH: AEGP_RenderLayerContextH,
12875            dstH0: AEGP_WorldH,
12876        ) -> A_Err,
12877    >,
12878    pub AEGP_GetFieldRender: ::std::option::Option<
12879        unsafe extern "C" fn(render_contextH: PR_RenderContextH, field: *mut PF_Field) -> A_Err,
12880    >,
12881    pub AEGP_ReportArtisanProgress: ::std::option::Option<
12882        unsafe extern "C" fn(
12883            render_contextH: PR_RenderContextH,
12884            countL: A_long,
12885            totalL: A_long,
12886        ) -> A_Err,
12887    >,
12888    pub AEGP_GetRenderDownsampleFactor: ::std::option::Option<
12889        unsafe extern "C" fn(
12890            render_contextH: PR_RenderContextH,
12891            dsfP: *mut AEGP_DownsampleFactor,
12892        ) -> A_Err,
12893    >,
12894    pub AEGP_SetRenderDownsampleFactor: ::std::option::Option<
12895        unsafe extern "C" fn(
12896            render_contextH: PR_RenderContextH,
12897            dsfP: *mut AEGP_DownsampleFactor,
12898        ) -> A_Err,
12899    >,
12900    pub AEGP_IsBlankCanvas: ::std::option::Option<
12901        unsafe extern "C" fn(
12902            render_contextH: PR_RenderContextH,
12903            is_blankPB: *mut A_Boolean,
12904        ) -> A_Err,
12905    >,
12906    pub AEGP_GetRenderLayerToWorldXform: ::std::option::Option<
12907        unsafe extern "C" fn(
12908            render_contextH: PR_RenderContextH,
12909            layer_contextH: AEGP_RenderLayerContextH,
12910            comp_timeP: *const A_Time,
12911            transform: *mut A_Matrix4,
12912        ) -> A_Err,
12913    >,
12914    pub AEGP_GetRenderLayerBounds: ::std::option::Option<
12915        unsafe extern "C" fn(
12916            render_contextH: PR_RenderContextH,
12917            layer_contextH: AEGP_RenderLayerContextH,
12918            comp_timeP: *const A_Time,
12919            boundsP: *mut A_LegacyRect,
12920        ) -> A_Err,
12921    >,
12922    pub AEGP_GetRenderOpacity: ::std::option::Option<
12923        unsafe extern "C" fn(
12924            render_contextH: PR_RenderContextH,
12925            layer_contextH: AEGP_RenderLayerContextH,
12926            comp_timePT: *const A_Time,
12927            opacityPF: *mut A_FpLong,
12928        ) -> A_Err,
12929    >,
12930    pub AEGP_IsRenderLayerActive: ::std::option::Option<
12931        unsafe extern "C" fn(
12932            render_contextH: PR_RenderContextH,
12933            layer_contextH: AEGP_RenderLayerContextH,
12934            comp_timePT: *const A_Time,
12935            activePB: *mut A_Boolean,
12936        ) -> A_Err,
12937    >,
12938    pub AEGP_SetArtisanLayerProgress: ::std::option::Option<
12939        unsafe extern "C" fn(
12940            render_contextH: PR_RenderContextH,
12941            countL: A_long,
12942            num_layersL: A_long,
12943        ) -> A_Err,
12944    >,
12945    pub AEGP_RenderLayerPlus: ::std::option::Option<
12946        unsafe extern "C" fn(
12947            render_contextH: PR_RenderContextH,
12948            layerH: AEGP_LayerH,
12949            layer_contextH: AEGP_RenderLayerContextH,
12950            render_hints: AEGP_RenderHints,
12951            render_bufferPH: *mut AEGP_WorldH,
12952        ) -> A_Err,
12953    >,
12954    pub AEGP_GetTrackMatteContext: ::std::option::Option<
12955        unsafe extern "C" fn(
12956            render_contextH: PR_RenderContextH,
12957            fill_contextH: AEGP_RenderLayerContextH,
12958            matte_contextPH: *mut AEGP_RenderLayerContextH,
12959        ) -> A_Err,
12960    >,
12961    pub AEGP_RenderTextureWithReceipt: ::std::option::Option<
12962        unsafe extern "C" fn(
12963            render_contextH: PR_RenderContextH,
12964            layer_contextH: AEGP_RenderLayerContextH,
12965            render_hints: AEGP_RenderHints,
12966            num_effectsS: AEGP_NumEffectsToRenderType,
12967            suggested_scaleP0: *mut A_FloatPoint,
12968            suggested_src_rectP0: *mut A_FloatRect,
12969            src_matrixP0: *mut A_Matrix3,
12970            render_receiptPH: *mut AEGP_RenderReceiptH,
12971            dstPH: *mut AEGP_WorldH,
12972        ) -> A_Err,
12973    >,
12974    pub AEGP_GetNumberOfSoftwareEffects: ::std::option::Option<
12975        unsafe extern "C" fn(
12976            render_contextH: PR_RenderContextH,
12977            layer_contextH: AEGP_RenderLayerContextH,
12978            num_software_effectsPS: *mut A_short,
12979        ) -> A_Err,
12980    >,
12981    pub AEGP_RenderLayerPlusWithReceipt: ::std::option::Option<
12982        unsafe extern "C" fn(
12983            render_contextH: PR_RenderContextH,
12984            layerH: AEGP_LayerH,
12985            layer_contextH: AEGP_RenderLayerContextH,
12986            render_hints: AEGP_RenderHints,
12987            render_receiptPH: *mut AEGP_RenderReceiptH,
12988            render_bufferPH: *mut AEGP_WorldH,
12989        ) -> A_Err,
12990    >,
12991    pub AEGP_DisposeRenderReceipt:
12992        ::std::option::Option<unsafe extern "C" fn(render_receiptH: AEGP_RenderReceiptH) -> A_Err>,
12993    pub AEGP_CheckRenderReceipt: ::std::option::Option<
12994        unsafe extern "C" fn(
12995            current_render_contextH: PR_RenderContextH,
12996            current_layer_contextH: AEGP_RenderLayerContextH,
12997            old_render_receiptH: AEGP_RenderReceiptH,
12998            check_geometricsB: A_Boolean,
12999            num_effectsS: AEGP_NumEffectsToRenderType,
13000            receipt_statusP: *mut AEGP_RenderReceiptStatus,
13001        ) -> A_Err,
13002    >,
13003    pub AEGP_GenerateRenderReceipt: ::std::option::Option<
13004        unsafe extern "C" fn(
13005            current_render_contextH: PR_RenderContextH,
13006            current_layer_contextH: AEGP_RenderLayerContextH,
13007            num_effectsS: AEGP_NumEffectsToRenderType,
13008            render_receiptPH: *mut AEGP_RenderReceiptH,
13009        ) -> A_Err,
13010    >,
13011    pub AEGP_GetNumBinsToRender: ::std::option::Option<
13012        unsafe extern "C" fn(
13013            render_contextH: PR_RenderContextH,
13014            num_bins_to_renderPL: *mut A_long,
13015        ) -> A_Err,
13016    >,
13017    pub AEGP_SetNthBin: ::std::option::Option<
13018        unsafe extern "C" fn(render_contextH: PR_RenderContextH, n: A_long) -> A_Err,
13019    >,
13020    pub AEGP_GetBinType: ::std::option::Option<
13021        unsafe extern "C" fn(
13022            render_contextH: PR_RenderContextH,
13023            bin_typeP: *mut AEGP_BinType,
13024        ) -> A_Err,
13025    >,
13026    pub AEGP_GetRenderLayerToWorldXform2D3D: ::std::option::Option<
13027        unsafe extern "C" fn(
13028            render_contextH: PR_RenderContextH,
13029            layer_contextH: AEGP_RenderLayerContextH,
13030            comp_timeP: *const A_Time,
13031            only_2dB: A_Boolean,
13032            transform: *mut A_Matrix4,
13033        ) -> A_Err,
13034    >,
13035    pub AEGP_GetPlatformWindowRef: ::std::option::Option<
13036        unsafe extern "C" fn(
13037            render_contextH: PR_RenderContextH,
13038            window_refP: *mut AEGP_PlatformWindowRef,
13039        ) -> A_Err,
13040    >,
13041    pub AEGP_GetViewportScale: ::std::option::Option<
13042        unsafe extern "C" fn(
13043            render_contextH: PR_RenderContextH,
13044            scale_xPF: *mut A_FpLong,
13045            scale_yPF: *mut A_FpLong,
13046        ) -> A_Err,
13047    >,
13048    pub AEGP_GetViewportOrigin: ::std::option::Option<
13049        unsafe extern "C" fn(
13050            render_contextH: PR_RenderContextH,
13051            origin_xPL: *mut A_long,
13052            origin_yPL: *mut A_long,
13053        ) -> A_Err,
13054    >,
13055    pub AEGP_GetViewportRect: ::std::option::Option<
13056        unsafe extern "C" fn(
13057            render_contextH: PR_RenderContextH,
13058            viewport_rectPR: *mut A_LegacyRect,
13059        ) -> A_Err,
13060    >,
13061    pub AEGP_GetFallowColor: ::std::option::Option<
13062        unsafe extern "C" fn(
13063            render_contextH: PR_RenderContextH,
13064            fallow_colorP: *mut PF_Pixel8,
13065        ) -> A_Err,
13066    >,
13067    pub AEGP_GetInteractiveBuffer: ::std::option::Option<
13068        unsafe extern "C" fn(render_contextH: PR_RenderContextH, buffer: *mut AEGP_WorldH) -> A_Err,
13069    >,
13070    pub AEGP_GetInteractiveCheckerboard: ::std::option::Option<
13071        unsafe extern "C" fn(
13072            render_contextH: PR_RenderContextH,
13073            checkerboard_onPB: *mut A_Boolean,
13074        ) -> A_Err,
13075    >,
13076    pub AEGP_GetInteractiveCheckerboardColors: ::std::option::Option<
13077        unsafe extern "C" fn(
13078            render_contextH: PR_RenderContextH,
13079            checkerboard_color1P: *mut PF_Pixel,
13080            checkerboard_color2P: *mut PF_Pixel,
13081        ) -> A_Err,
13082    >,
13083    pub AEGP_GetInteractiveCheckerboardSize: ::std::option::Option<
13084        unsafe extern "C" fn(
13085            render_contextH: PR_RenderContextH,
13086            checkerboard_widthPLu: *mut A_u_long,
13087            checkerboard_heightPLu: *mut A_u_long,
13088        ) -> A_Err,
13089    >,
13090    pub AEGP_GetInteractiveCachedBuffer: ::std::option::Option<
13091        unsafe extern "C" fn(render_contextH: PR_RenderContextH, buffer: *mut AEGP_WorldH) -> A_Err,
13092    >,
13093    pub AEGP_ArtisanMustRenderAsLayer: ::std::option::Option<
13094        unsafe extern "C" fn(
13095            render_contextH: PR_RenderContextH,
13096            layer_contextH: AEGP_RenderLayerContextH,
13097            use_render_texturePB: *mut A_Boolean,
13098        ) -> A_Err,
13099    >,
13100    pub AEGP_GetInteractiveDisplayChannel: ::std::option::Option<
13101        unsafe extern "C" fn(
13102            render_contextH: PR_RenderContextH,
13103            display_channelP: *mut AEGP_DisplayChannelType,
13104        ) -> A_Err,
13105    >,
13106}
13107#[repr(C)]
13108#[derive(Debug, Copy, Clone)]
13109pub struct AEGP_CanvasSuite7 {
13110    pub AEGP_GetCompToRender: ::std::option::Option<
13111        unsafe extern "C" fn(render_contextH: PR_RenderContextH, compPH: *mut AEGP_CompH) -> A_Err,
13112    >,
13113    pub AEGP_GetNumLayersToRender: ::std::option::Option<
13114        unsafe extern "C" fn(
13115            render_contextH: PR_RenderContextH,
13116            num_to_renderPL: *mut A_long,
13117        ) -> A_Err,
13118    >,
13119    pub AEGP_GetNthLayerContextToRender: ::std::option::Option<
13120        unsafe extern "C" fn(
13121            render_contextH: PR_RenderContextH,
13122            n: A_long,
13123            layer_contextPH: *mut AEGP_RenderLayerContextH,
13124        ) -> A_Err,
13125    >,
13126    pub AEGP_GetLayerFromLayerContext: ::std::option::Option<
13127        unsafe extern "C" fn(
13128            render_contextH: PR_RenderContextH,
13129            layer_contextH: AEGP_RenderLayerContextH,
13130            layerPH: *mut AEGP_LayerH,
13131        ) -> A_Err,
13132    >,
13133    pub AEGP_GetLayerAndSubLayerFromLayerContext: ::std::option::Option<
13134        unsafe extern "C" fn(
13135            render_contextH: PR_RenderContextH,
13136            layer_contextH: AEGP_RenderLayerContextH,
13137            layerPH: *mut AEGP_LayerH,
13138            sublayerP: *mut AEGP_SubLayerIndex,
13139        ) -> A_Err,
13140    >,
13141    #[doc = " With collapsed geometrics \"on\" this gives the layer in the root comp\n contining the layer context. With collapsed geometrics off\n this is the same as AEGP_GetLayerFromLayerContext.\n"]
13142    pub AEGP_GetTopLayerFromLayerContext: ::std::option::Option<
13143        unsafe extern "C" fn(
13144            render_contextH: PR_RenderContextH,
13145            layer_contextH: AEGP_RenderLayerContextH,
13146            layerPH: *mut AEGP_LayerH,
13147        ) -> A_Err,
13148    >,
13149    pub AEGP_GetCompRenderTime: ::std::option::Option<
13150        unsafe extern "C" fn(
13151            render_contextH: PR_RenderContextH,
13152            time: *mut A_Time,
13153            time_step: *mut A_Time,
13154        ) -> A_Err,
13155    >,
13156    pub AEGP_GetCompDestinationBuffer: ::std::option::Option<
13157        unsafe extern "C" fn(
13158            render_contextH: PR_RenderContextH,
13159            compH: AEGP_CompH,
13160            dst: *mut AEGP_WorldH,
13161        ) -> A_Err,
13162    >,
13163    pub AEGP_GetROI: ::std::option::Option<
13164        unsafe extern "C" fn(render_contextH: PR_RenderContextH, roiPR: *mut A_LegacyRect) -> A_Err,
13165    >,
13166    pub AEGP_RenderTexture: ::std::option::Option<
13167        unsafe extern "C" fn(
13168            render_contextH: PR_RenderContextH,
13169            layer_contextH: AEGP_RenderLayerContextH,
13170            render_hints: AEGP_RenderHints,
13171            suggested_scaleP0: *mut A_FloatPoint,
13172            suggested_src_rectP0: *mut A_FloatRect,
13173            src_matrixP0: *mut A_Matrix3,
13174            dstPH: *mut AEGP_WorldH,
13175        ) -> A_Err,
13176    >,
13177    pub AEGP_DisposeTexture: ::std::option::Option<
13178        unsafe extern "C" fn(
13179            render_contextH: PR_RenderContextH,
13180            layer_contextH: AEGP_RenderLayerContextH,
13181            dstH0: AEGP_WorldH,
13182        ) -> A_Err,
13183    >,
13184    pub AEGP_GetFieldRender: ::std::option::Option<
13185        unsafe extern "C" fn(render_contextH: PR_RenderContextH, field: *mut PF_Field) -> A_Err,
13186    >,
13187    pub AEGP_ReportArtisanProgress: ::std::option::Option<
13188        unsafe extern "C" fn(
13189            render_contextH: PR_RenderContextH,
13190            countL: A_long,
13191            totalL: A_long,
13192        ) -> A_Err,
13193    >,
13194    pub AEGP_GetRenderDownsampleFactor: ::std::option::Option<
13195        unsafe extern "C" fn(
13196            render_contextH: PR_RenderContextH,
13197            dsfP: *mut AEGP_DownsampleFactor,
13198        ) -> A_Err,
13199    >,
13200    pub AEGP_SetRenderDownsampleFactor: ::std::option::Option<
13201        unsafe extern "C" fn(
13202            render_contextH: PR_RenderContextH,
13203            dsfP: *mut AEGP_DownsampleFactor,
13204        ) -> A_Err,
13205    >,
13206    pub AEGP_IsBlankCanvas: ::std::option::Option<
13207        unsafe extern "C" fn(
13208            render_contextH: PR_RenderContextH,
13209            is_blankPB: *mut A_Boolean,
13210        ) -> A_Err,
13211    >,
13212    pub AEGP_GetRenderLayerToWorldXform: ::std::option::Option<
13213        unsafe extern "C" fn(
13214            render_contextH: PR_RenderContextH,
13215            layer_contextH: AEGP_RenderLayerContextH,
13216            comp_timeP: *const A_Time,
13217            transform: *mut A_Matrix4,
13218        ) -> A_Err,
13219    >,
13220    pub AEGP_GetRenderLayerBounds: ::std::option::Option<
13221        unsafe extern "C" fn(
13222            render_contextH: PR_RenderContextH,
13223            layer_contextH: AEGP_RenderLayerContextH,
13224            comp_timeP: *const A_Time,
13225            boundsP: *mut A_LegacyRect,
13226        ) -> A_Err,
13227    >,
13228    pub AEGP_GetRenderOpacity: ::std::option::Option<
13229        unsafe extern "C" fn(
13230            render_contextH: PR_RenderContextH,
13231            layer_contextH: AEGP_RenderLayerContextH,
13232            comp_timePT: *const A_Time,
13233            opacityPF: *mut A_FpLong,
13234        ) -> A_Err,
13235    >,
13236    pub AEGP_IsRenderLayerActive: ::std::option::Option<
13237        unsafe extern "C" fn(
13238            render_contextH: PR_RenderContextH,
13239            layer_contextH: AEGP_RenderLayerContextH,
13240            comp_timePT: *const A_Time,
13241            activePB: *mut A_Boolean,
13242        ) -> A_Err,
13243    >,
13244    pub AEGP_SetArtisanLayerProgress: ::std::option::Option<
13245        unsafe extern "C" fn(
13246            render_contextH: PR_RenderContextH,
13247            countL: A_long,
13248            num_layersL: A_long,
13249        ) -> A_Err,
13250    >,
13251    pub AEGP_RenderLayerPlus: ::std::option::Option<
13252        unsafe extern "C" fn(
13253            render_contextH: PR_RenderContextH,
13254            layerH: AEGP_LayerH,
13255            layer_contextH: AEGP_RenderLayerContextH,
13256            render_hints: AEGP_RenderHints,
13257            render_bufferPH: *mut AEGP_WorldH,
13258        ) -> A_Err,
13259    >,
13260    pub AEGP_GetTrackMatteContext: ::std::option::Option<
13261        unsafe extern "C" fn(
13262            render_contextH: PR_RenderContextH,
13263            fill_contextH: AEGP_RenderLayerContextH,
13264            matte_contextPH: *mut AEGP_RenderLayerContextH,
13265        ) -> A_Err,
13266    >,
13267    pub AEGP_RenderTextureWithReceipt: ::std::option::Option<
13268        unsafe extern "C" fn(
13269            render_contextH: PR_RenderContextH,
13270            layer_contextH: AEGP_RenderLayerContextH,
13271            render_hints: AEGP_RenderHints,
13272            num_effectsS: AEGP_NumEffectsToRenderType,
13273            suggested_scaleP0: *mut A_FloatPoint,
13274            suggested_src_rectP0: *mut A_FloatRect,
13275            src_matrixP0: *mut A_Matrix3,
13276            render_receiptPH: *mut AEGP_RenderReceiptH,
13277            dstPH: *mut AEGP_WorldH,
13278        ) -> A_Err,
13279    >,
13280    pub AEGP_GetNumberOfSoftwareEffects: ::std::option::Option<
13281        unsafe extern "C" fn(
13282            render_contextH: PR_RenderContextH,
13283            layer_contextH: AEGP_RenderLayerContextH,
13284            num_software_effectsPS: *mut A_short,
13285        ) -> A_Err,
13286    >,
13287    pub AEGP_RenderLayerPlusWithReceipt: ::std::option::Option<
13288        unsafe extern "C" fn(
13289            render_contextH: PR_RenderContextH,
13290            layerH: AEGP_LayerH,
13291            layer_contextH: AEGP_RenderLayerContextH,
13292            render_hints: AEGP_RenderHints,
13293            render_receiptPH: *mut AEGP_RenderReceiptH,
13294            render_bufferPH: *mut AEGP_WorldH,
13295        ) -> A_Err,
13296    >,
13297    pub AEGP_DisposeRenderReceipt:
13298        ::std::option::Option<unsafe extern "C" fn(render_receiptH: AEGP_RenderReceiptH) -> A_Err>,
13299    pub AEGP_CheckRenderReceipt: ::std::option::Option<
13300        unsafe extern "C" fn(
13301            current_render_contextH: PR_RenderContextH,
13302            current_layer_contextH: AEGP_RenderLayerContextH,
13303            old_render_receiptH: AEGP_RenderReceiptH,
13304            check_geometricsB: A_Boolean,
13305            num_effectsS: AEGP_NumEffectsToRenderType,
13306            receipt_statusP: *mut AEGP_RenderReceiptStatus,
13307        ) -> A_Err,
13308    >,
13309    pub AEGP_GenerateRenderReceipt: ::std::option::Option<
13310        unsafe extern "C" fn(
13311            current_render_contextH: PR_RenderContextH,
13312            current_layer_contextH: AEGP_RenderLayerContextH,
13313            num_effectsS: AEGP_NumEffectsToRenderType,
13314            render_receiptPH: *mut AEGP_RenderReceiptH,
13315        ) -> A_Err,
13316    >,
13317    pub AEGP_GetNumBinsToRender: ::std::option::Option<
13318        unsafe extern "C" fn(
13319            render_contextH: PR_RenderContextH,
13320            num_bins_to_renderPL: *mut A_long,
13321        ) -> A_Err,
13322    >,
13323    pub AEGP_SetNthBin: ::std::option::Option<
13324        unsafe extern "C" fn(render_contextH: PR_RenderContextH, n: A_long) -> A_Err,
13325    >,
13326    pub AEGP_GetBinType: ::std::option::Option<
13327        unsafe extern "C" fn(
13328            render_contextH: PR_RenderContextH,
13329            bin_typeP: *mut AEGP_BinType,
13330        ) -> A_Err,
13331    >,
13332    pub AEGP_GetRenderLayerToWorldXform2D3D: ::std::option::Option<
13333        unsafe extern "C" fn(
13334            render_contextH: PR_RenderContextH,
13335            layer_contextH: AEGP_RenderLayerContextH,
13336            comp_timeP: *const A_Time,
13337            only_2dB: A_Boolean,
13338            transform: *mut A_Matrix4,
13339        ) -> A_Err,
13340    >,
13341    pub AEGP_GetPlatformWindowRef: ::std::option::Option<
13342        unsafe extern "C" fn(
13343            render_contextH: PR_RenderContextH,
13344            window_refP: *mut AEGP_PlatformWindowRef,
13345        ) -> A_Err,
13346    >,
13347    pub AEGP_GetViewportScale: ::std::option::Option<
13348        unsafe extern "C" fn(
13349            render_contextH: PR_RenderContextH,
13350            scale_xPF: *mut A_FpLong,
13351            scale_yPF: *mut A_FpLong,
13352        ) -> A_Err,
13353    >,
13354    pub AEGP_GetViewportOrigin: ::std::option::Option<
13355        unsafe extern "C" fn(
13356            render_contextH: PR_RenderContextH,
13357            origin_xPL: *mut A_long,
13358            origin_yPL: *mut A_long,
13359        ) -> A_Err,
13360    >,
13361    pub AEGP_GetViewportRect: ::std::option::Option<
13362        unsafe extern "C" fn(
13363            render_contextH: PR_RenderContextH,
13364            viewport_rectPR: *mut A_LegacyRect,
13365        ) -> A_Err,
13366    >,
13367    pub AEGP_GetFallowColor: ::std::option::Option<
13368        unsafe extern "C" fn(
13369            render_contextH: PR_RenderContextH,
13370            fallow_colorP: *mut PF_Pixel8,
13371        ) -> A_Err,
13372    >,
13373    pub AEGP_GetInteractiveBuffer: ::std::option::Option<
13374        unsafe extern "C" fn(render_contextH: PR_RenderContextH, buffer: *mut AEGP_WorldH) -> A_Err,
13375    >,
13376    pub AEGP_GetInteractiveCheckerboard: ::std::option::Option<
13377        unsafe extern "C" fn(
13378            render_contextH: PR_RenderContextH,
13379            checkerboard_onPB: *mut A_Boolean,
13380        ) -> A_Err,
13381    >,
13382    pub AEGP_GetInteractiveCheckerboardColors: ::std::option::Option<
13383        unsafe extern "C" fn(
13384            render_contextH: PR_RenderContextH,
13385            checkerboard_color1P: *mut PF_Pixel,
13386            checkerboard_color2P: *mut PF_Pixel,
13387        ) -> A_Err,
13388    >,
13389    pub AEGP_GetInteractiveCheckerboardSize: ::std::option::Option<
13390        unsafe extern "C" fn(
13391            render_contextH: PR_RenderContextH,
13392            checkerboard_widthPLu: *mut A_u_long,
13393            checkerboard_heightPLu: *mut A_u_long,
13394        ) -> A_Err,
13395    >,
13396    pub AEGP_GetInteractiveCachedBuffer: ::std::option::Option<
13397        unsafe extern "C" fn(render_contextH: PR_RenderContextH, buffer: *mut AEGP_WorldH) -> A_Err,
13398    >,
13399    pub AEGP_ArtisanMustRenderAsLayer: ::std::option::Option<
13400        unsafe extern "C" fn(
13401            render_contextH: PR_RenderContextH,
13402            layer_contextH: AEGP_RenderLayerContextH,
13403            use_render_texturePB: *mut A_Boolean,
13404        ) -> A_Err,
13405    >,
13406    pub AEGP_GetInteractiveDisplayChannel: ::std::option::Option<
13407        unsafe extern "C" fn(
13408            render_contextH: PR_RenderContextH,
13409            display_channelP: *mut AEGP_DisplayChannelType,
13410        ) -> A_Err,
13411    >,
13412    pub AEGP_GetInteractiveExposure: ::std::option::Option<
13413        unsafe extern "C" fn(
13414            render_contextH: PR_RenderContextH,
13415            exposurePF: *mut A_FpLong,
13416        ) -> A_Err,
13417    >,
13418    pub AEGP_GetColorTransform: ::std::option::Option<
13419        unsafe extern "C" fn(
13420            render_contextH: PR_RenderContextH,
13421            cms_onB: *mut A_Boolean,
13422            xform_keyLu: *mut A_u_long,
13423            xformP: *mut ::std::os::raw::c_void,
13424        ) -> A_Err,
13425    >,
13426    pub AEGP_GetCompShutterTime: ::std::option::Option<
13427        unsafe extern "C" fn(
13428            render_contextH: PR_RenderContextH,
13429            shutter_time: *mut A_Time,
13430            shutter_dur: *mut A_Time,
13431        ) -> A_Err,
13432    >,
13433}
13434#[repr(C)]
13435#[derive(Debug, Copy, Clone)]
13436pub struct AEGP_MaskOutlineSuite2 {
13437    pub AEGP_IsMaskOutlineOpen: ::std::option::Option<
13438        unsafe extern "C" fn(mask_outlineH: AEGP_MaskOutlineValH, openPB: *mut A_Boolean) -> A_Err,
13439    >,
13440    pub AEGP_SetMaskOutlineOpen: ::std::option::Option<
13441        unsafe extern "C" fn(mask_outlineH: AEGP_MaskOutlineValH, openB: A_Boolean) -> A_Err,
13442    >,
13443    pub AEGP_GetMaskOutlineNumSegments: ::std::option::Option<
13444        unsafe extern "C" fn(
13445            mask_outlineH: AEGP_MaskOutlineValH,
13446            num_segmentsPL: *mut A_long,
13447        ) -> A_Err,
13448    >,
13449    pub AEGP_GetMaskOutlineVertexInfo: ::std::option::Option<
13450        unsafe extern "C" fn(
13451            mask_outlineH: AEGP_MaskOutlineValH,
13452            which_pointL: AEGP_VertexIndex,
13453            vertexP: *mut AEGP_MaskVertex,
13454        ) -> A_Err,
13455    >,
13456    pub AEGP_SetMaskOutlineVertexInfo: ::std::option::Option<
13457        unsafe extern "C" fn(
13458            mask_outlineH: AEGP_MaskOutlineValH,
13459            which_pointL: AEGP_VertexIndex,
13460            vertexP: *const AEGP_MaskVertex,
13461        ) -> A_Err,
13462    >,
13463    pub AEGP_CreateVertex: ::std::option::Option<
13464        unsafe extern "C" fn(
13465            mask_outlineH: AEGP_MaskOutlineValH,
13466            insert_position: AEGP_VertexIndex,
13467        ) -> A_Err,
13468    >,
13469    pub AEGP_DeleteVertex: ::std::option::Option<
13470        unsafe extern "C" fn(mask_outlineH: AEGP_MaskOutlineValH, index: AEGP_VertexIndex) -> A_Err,
13471    >,
13472}
13473#[repr(C)]
13474#[derive(Debug, Copy, Clone)]
13475pub struct AEGP_MaskOutlineSuite1 {
13476    pub AEGP_IsMaskOutlineOpen: ::std::option::Option<
13477        unsafe extern "C" fn(mask_outlineH: AEGP_MaskOutlineValH, openPB: *mut A_Boolean) -> A_Err,
13478    >,
13479    pub AEGP_GetMaskOutlineNumSegments: ::std::option::Option<
13480        unsafe extern "C" fn(
13481            mask_outlineH: AEGP_MaskOutlineValH,
13482            num_segmentsPL: *mut A_long,
13483        ) -> A_Err,
13484    >,
13485    pub AEGP_GetMaskOutlineVertexInfo: ::std::option::Option<
13486        unsafe extern "C" fn(
13487            mask_outlineH: AEGP_MaskOutlineValH,
13488            which_pointL: AEGP_VertexIndex,
13489            vertexP: *mut AEGP_MaskVertex,
13490        ) -> A_Err,
13491    >,
13492    pub AEGP_SetMaskOutlineVertexInfo: ::std::option::Option<
13493        unsafe extern "C" fn(
13494            mask_outlineH: AEGP_MaskOutlineValH,
13495            which_pointL: AEGP_VertexIndex,
13496            vertexP: *const AEGP_MaskVertex,
13497        ) -> A_Err,
13498    >,
13499    pub AEGP_CreateVertex: ::std::option::Option<
13500        unsafe extern "C" fn(
13501            mask_outlineH: AEGP_MaskOutlineValH,
13502            insert_position: AEGP_VertexIndex,
13503        ) -> A_Err,
13504    >,
13505    pub AEGP_DeleteVertex: ::std::option::Option<
13506        unsafe extern "C" fn(mask_outlineH: AEGP_MaskOutlineValH, index: AEGP_VertexIndex) -> A_Err,
13507    >,
13508}
13509#[repr(C)]
13510#[derive(Debug, Copy, Clone)]
13511pub struct AEGP_CompSuite11 {
13512    pub AEGP_GetCompFromItem: ::std::option::Option<
13513        unsafe extern "C" fn(itemH: AEGP_ItemH, compPH: *mut AEGP_CompH) -> A_Err,
13514    >,
13515    pub AEGP_GetItemFromComp: ::std::option::Option<
13516        unsafe extern "C" fn(compH: AEGP_CompH, itemPH: *mut AEGP_ItemH) -> A_Err,
13517    >,
13518    pub AEGP_GetCompDownsampleFactor: ::std::option::Option<
13519        unsafe extern "C" fn(compH: AEGP_CompH, dsfP: *mut AEGP_DownsampleFactor) -> A_Err,
13520    >,
13521    pub AEGP_SetCompDownsampleFactor: ::std::option::Option<
13522        unsafe extern "C" fn(compH: AEGP_CompH, dsfP: *const AEGP_DownsampleFactor) -> A_Err,
13523    >,
13524    pub AEGP_GetCompBGColor: ::std::option::Option<
13525        unsafe extern "C" fn(compH: AEGP_CompH, bg_colorP: *mut AEGP_ColorVal) -> A_Err,
13526    >,
13527    pub AEGP_SetCompBGColor: ::std::option::Option<
13528        unsafe extern "C" fn(compH: AEGP_CompH, bg_colorP: *const AEGP_ColorVal) -> A_Err,
13529    >,
13530    pub AEGP_GetCompFlags: ::std::option::Option<
13531        unsafe extern "C" fn(compH: AEGP_CompH, comp_flagsP: *mut AEGP_CompFlags) -> A_Err,
13532    >,
13533    pub AEGP_GetShowLayerNameOrSourceName: ::std::option::Option<
13534        unsafe extern "C" fn(compH: AEGP_CompH, layer_names_shownPB: *mut A_Boolean) -> A_Err,
13535    >,
13536    pub AEGP_SetShowLayerNameOrSourceName: ::std::option::Option<
13537        unsafe extern "C" fn(compH: AEGP_CompH, show_layer_namesB: A_Boolean) -> A_Err,
13538    >,
13539    pub AEGP_GetShowBlendModes: ::std::option::Option<
13540        unsafe extern "C" fn(compH: AEGP_CompH, blend_modes_shownPB: *mut A_Boolean) -> A_Err,
13541    >,
13542    pub AEGP_SetShowBlendModes: ::std::option::Option<
13543        unsafe extern "C" fn(compH: AEGP_CompH, show_blend_modesB: A_Boolean) -> A_Err,
13544    >,
13545    pub AEGP_GetCompFramerate: ::std::option::Option<
13546        unsafe extern "C" fn(compH: AEGP_CompH, fpsPF: *mut A_FpLong) -> A_Err,
13547    >,
13548    pub AEGP_SetCompFrameRate: ::std::option::Option<
13549        unsafe extern "C" fn(compH: AEGP_CompH, fpsPF: *const A_FpLong) -> A_Err,
13550    >,
13551    pub AEGP_GetCompShutterAnglePhase: ::std::option::Option<
13552        unsafe extern "C" fn(compH: AEGP_CompH, angle: *mut A_Ratio, phase: *mut A_Ratio) -> A_Err,
13553    >,
13554    pub AEGP_GetCompShutterFrameRange: ::std::option::Option<
13555        unsafe extern "C" fn(
13556            compH: AEGP_CompH,
13557            comp_timeP: *const A_Time,
13558            start: *mut A_Time,
13559            duration: *mut A_Time,
13560        ) -> A_Err,
13561    >,
13562    pub AEGP_GetCompSuggestedMotionBlurSamples: ::std::option::Option<
13563        unsafe extern "C" fn(compH: AEGP_CompH, samplesPL: *mut A_long) -> A_Err,
13564    >,
13565    pub AEGP_SetCompSuggestedMotionBlurSamples:
13566        ::std::option::Option<unsafe extern "C" fn(compH: AEGP_CompH, samplesL: A_long) -> A_Err>,
13567    pub AEGP_GetCompMotionBlurAdaptiveSampleLimit: ::std::option::Option<
13568        unsafe extern "C" fn(compH: AEGP_CompH, samplesPL: *mut A_long) -> A_Err,
13569    >,
13570    pub AEGP_SetCompMotionBlurAdaptiveSampleLimit:
13571        ::std::option::Option<unsafe extern "C" fn(compH: AEGP_CompH, samplesL: A_long) -> A_Err>,
13572    pub AEGP_GetCompWorkAreaStart: ::std::option::Option<
13573        unsafe extern "C" fn(compH: AEGP_CompH, work_area_startPT: *mut A_Time) -> A_Err,
13574    >,
13575    pub AEGP_GetCompWorkAreaDuration: ::std::option::Option<
13576        unsafe extern "C" fn(compH: AEGP_CompH, work_area_durationPT: *mut A_Time) -> A_Err,
13577    >,
13578    pub AEGP_SetCompWorkAreaStartAndDuration: ::std::option::Option<
13579        unsafe extern "C" fn(
13580            compH: AEGP_CompH,
13581            work_area_startPT: *const A_Time,
13582            work_area_durationPT: *const A_Time,
13583        ) -> A_Err,
13584    >,
13585    pub AEGP_CreateSolidInComp: ::std::option::Option<
13586        unsafe extern "C" fn(
13587            utf_nameZ: *const A_UTF16Char,
13588            width: A_long,
13589            height: A_long,
13590            color: *const AEGP_ColorVal,
13591            parent_compH: AEGP_CompH,
13592            durationPT0: *const A_Time,
13593            new_solidPH: *mut AEGP_LayerH,
13594        ) -> A_Err,
13595    >,
13596    pub AEGP_CreateCameraInComp: ::std::option::Option<
13597        unsafe extern "C" fn(
13598            utf_nameZ: *const A_UTF16Char,
13599            center_point: A_FloatPoint,
13600            parent_compH: AEGP_CompH,
13601            new_cameraPH: *mut AEGP_LayerH,
13602        ) -> A_Err,
13603    >,
13604    pub AEGP_CreateLightInComp: ::std::option::Option<
13605        unsafe extern "C" fn(
13606            utf_nameZ: *const A_UTF16Char,
13607            center_point: A_FloatPoint,
13608            parent_compH: AEGP_CompH,
13609            new_lightPH: *mut AEGP_LayerH,
13610        ) -> A_Err,
13611    >,
13612    pub AEGP_CreateComp: ::std::option::Option<
13613        unsafe extern "C" fn(
13614            parent_folderH0: AEGP_ItemH,
13615            utf_nameZ: *const A_UTF16Char,
13616            widthL: A_long,
13617            heightL: A_long,
13618            pixel_aspect_ratioPRt: *const A_Ratio,
13619            durationPT: *const A_Time,
13620            frameratePRt: *const A_Ratio,
13621            new_compPH: *mut AEGP_CompH,
13622        ) -> A_Err,
13623    >,
13624    pub AEGP_GetNewCollectionFromCompSelection: ::std::option::Option<
13625        unsafe extern "C" fn(
13626            plugin_id: AEGP_PluginID,
13627            compH: AEGP_CompH,
13628            collectionPH: *mut AEGP_Collection2H,
13629        ) -> A_Err,
13630    >,
13631    pub AEGP_SetSelection: ::std::option::Option<
13632        unsafe extern "C" fn(compH: AEGP_CompH, collectionH: AEGP_Collection2H) -> A_Err,
13633    >,
13634    pub AEGP_GetCompDisplayStartTime: ::std::option::Option<
13635        unsafe extern "C" fn(compH: AEGP_CompH, start_timePT: *mut A_Time) -> A_Err,
13636    >,
13637    pub AEGP_SetCompDisplayStartTime: ::std::option::Option<
13638        unsafe extern "C" fn(compH: AEGP_CompH, start_timePT: *const A_Time) -> A_Err,
13639    >,
13640    pub AEGP_SetCompDuration: ::std::option::Option<
13641        unsafe extern "C" fn(compH: AEGP_CompH, durationPT: *const A_Time) -> A_Err,
13642    >,
13643    pub AEGP_CreateNullInComp: ::std::option::Option<
13644        unsafe extern "C" fn(
13645            utf_nameZ: *const A_UTF16Char,
13646            parent_compH: AEGP_CompH,
13647            durationPT0: *const A_Time,
13648            new_null_solidPH: *mut AEGP_LayerH,
13649        ) -> A_Err,
13650    >,
13651    pub AEGP_SetCompPixelAspectRatio: ::std::option::Option<
13652        unsafe extern "C" fn(compH: AEGP_CompH, pix_aspectratioPRt: *const A_Ratio) -> A_Err,
13653    >,
13654    pub AEGP_CreateTextLayerInComp: ::std::option::Option<
13655        unsafe extern "C" fn(
13656            parent_compH: AEGP_CompH,
13657            select_new_layerB: A_Boolean,
13658            new_text_layerPH: *mut AEGP_LayerH,
13659        ) -> A_Err,
13660    >,
13661    pub AEGP_CreateBoxTextLayerInComp: ::std::option::Option<
13662        unsafe extern "C" fn(
13663            parent_compH: AEGP_CompH,
13664            select_new_layerB: A_Boolean,
13665            box_dimensions: A_FloatPoint,
13666            new_text_layerPH: *mut AEGP_LayerH,
13667        ) -> A_Err,
13668    >,
13669    pub AEGP_SetCompDimensions: ::std::option::Option<
13670        unsafe extern "C" fn(compH: AEGP_CompH, widthL: A_long, heightL: A_long) -> A_Err,
13671    >,
13672    pub AEGP_DuplicateComp: ::std::option::Option<
13673        unsafe extern "C" fn(compH: AEGP_CompH, new_compPH: *mut AEGP_CompH) -> A_Err,
13674    >,
13675    pub AEGP_GetCompFrameDuration:
13676        ::std::option::Option<unsafe extern "C" fn(compH: AEGP_CompH, timeP: *mut A_Time) -> A_Err>,
13677    pub AEGP_GetMostRecentlyUsedComp:
13678        ::std::option::Option<unsafe extern "C" fn(compPH: *mut AEGP_CompH) -> A_Err>,
13679    pub AEGP_CreateVectorLayerInComp: ::std::option::Option<
13680        unsafe extern "C" fn(
13681            parent_compH: AEGP_CompH,
13682            new_vector_layerPH: *mut AEGP_LayerH,
13683        ) -> A_Err,
13684    >,
13685    pub AEGP_GetNewCompMarkerStream: ::std::option::Option<
13686        unsafe extern "C" fn(
13687            aegp_plugin_id: AEGP_PluginID,
13688            parent_compH: AEGP_CompH,
13689            streamPH: *mut AEGP_StreamRefH,
13690        ) -> A_Err,
13691    >,
13692    pub AEGP_GetCompDisplayDropFrame: ::std::option::Option<
13693        unsafe extern "C" fn(compH: AEGP_CompH, dropFramePB: *mut A_Boolean) -> A_Err,
13694    >,
13695    pub AEGP_SetCompDisplayDropFrame: ::std::option::Option<
13696        unsafe extern "C" fn(compH: AEGP_CompH, dropFrameB: A_Boolean) -> A_Err,
13697    >,
13698    pub AEGP_ReorderCompSelection:
13699        ::std::option::Option<unsafe extern "C" fn(compH: AEGP_CompH, index: A_long) -> A_Err>,
13700}
13701#[repr(C)]
13702#[derive(Debug, Copy, Clone)]
13703pub struct AEGP_CompSuite10 {
13704    pub AEGP_GetCompFromItem: ::std::option::Option<
13705        unsafe extern "C" fn(itemH: AEGP_ItemH, compPH: *mut AEGP_CompH) -> A_Err,
13706    >,
13707    pub AEGP_GetItemFromComp: ::std::option::Option<
13708        unsafe extern "C" fn(compH: AEGP_CompH, itemPH: *mut AEGP_ItemH) -> A_Err,
13709    >,
13710    pub AEGP_GetCompDownsampleFactor: ::std::option::Option<
13711        unsafe extern "C" fn(compH: AEGP_CompH, dsfP: *mut AEGP_DownsampleFactor) -> A_Err,
13712    >,
13713    pub AEGP_SetCompDownsampleFactor: ::std::option::Option<
13714        unsafe extern "C" fn(compH: AEGP_CompH, dsfP: *const AEGP_DownsampleFactor) -> A_Err,
13715    >,
13716    pub AEGP_GetCompBGColor: ::std::option::Option<
13717        unsafe extern "C" fn(compH: AEGP_CompH, bg_colorP: *mut AEGP_ColorVal) -> A_Err,
13718    >,
13719    pub AEGP_SetCompBGColor: ::std::option::Option<
13720        unsafe extern "C" fn(compH: AEGP_CompH, bg_colorP: *const AEGP_ColorVal) -> A_Err,
13721    >,
13722    pub AEGP_GetCompFlags: ::std::option::Option<
13723        unsafe extern "C" fn(compH: AEGP_CompH, comp_flagsP: *mut AEGP_CompFlags) -> A_Err,
13724    >,
13725    pub AEGP_GetShowLayerNameOrSourceName: ::std::option::Option<
13726        unsafe extern "C" fn(compH: AEGP_CompH, layer_names_shownPB: *mut A_Boolean) -> A_Err,
13727    >,
13728    pub AEGP_SetShowLayerNameOrSourceName: ::std::option::Option<
13729        unsafe extern "C" fn(compH: AEGP_CompH, show_layer_namesB: A_Boolean) -> A_Err,
13730    >,
13731    pub AEGP_GetShowBlendModes: ::std::option::Option<
13732        unsafe extern "C" fn(compH: AEGP_CompH, blend_modes_shownPB: *mut A_Boolean) -> A_Err,
13733    >,
13734    pub AEGP_SetShowBlendModes: ::std::option::Option<
13735        unsafe extern "C" fn(compH: AEGP_CompH, show_blend_modesB: A_Boolean) -> A_Err,
13736    >,
13737    pub AEGP_GetCompFramerate: ::std::option::Option<
13738        unsafe extern "C" fn(compH: AEGP_CompH, fpsPF: *mut A_FpLong) -> A_Err,
13739    >,
13740    pub AEGP_SetCompFrameRate: ::std::option::Option<
13741        unsafe extern "C" fn(compH: AEGP_CompH, fpsPF: *const A_FpLong) -> A_Err,
13742    >,
13743    pub AEGP_GetCompShutterAnglePhase: ::std::option::Option<
13744        unsafe extern "C" fn(compH: AEGP_CompH, angle: *mut A_Ratio, phase: *mut A_Ratio) -> A_Err,
13745    >,
13746    pub AEGP_GetCompShutterFrameRange: ::std::option::Option<
13747        unsafe extern "C" fn(
13748            compH: AEGP_CompH,
13749            comp_timeP: *const A_Time,
13750            start: *mut A_Time,
13751            duration: *mut A_Time,
13752        ) -> A_Err,
13753    >,
13754    pub AEGP_GetCompSuggestedMotionBlurSamples: ::std::option::Option<
13755        unsafe extern "C" fn(compH: AEGP_CompH, samplesPL: *mut A_long) -> A_Err,
13756    >,
13757    pub AEGP_SetCompSuggestedMotionBlurSamples:
13758        ::std::option::Option<unsafe extern "C" fn(compH: AEGP_CompH, samplesL: A_long) -> A_Err>,
13759    pub AEGP_GetCompMotionBlurAdaptiveSampleLimit: ::std::option::Option<
13760        unsafe extern "C" fn(compH: AEGP_CompH, samplesPL: *mut A_long) -> A_Err,
13761    >,
13762    pub AEGP_SetCompMotionBlurAdaptiveSampleLimit:
13763        ::std::option::Option<unsafe extern "C" fn(compH: AEGP_CompH, samplesL: A_long) -> A_Err>,
13764    pub AEGP_GetCompWorkAreaStart: ::std::option::Option<
13765        unsafe extern "C" fn(compH: AEGP_CompH, work_area_startPT: *mut A_Time) -> A_Err,
13766    >,
13767    pub AEGP_GetCompWorkAreaDuration: ::std::option::Option<
13768        unsafe extern "C" fn(compH: AEGP_CompH, work_area_durationPT: *mut A_Time) -> A_Err,
13769    >,
13770    pub AEGP_SetCompWorkAreaStartAndDuration: ::std::option::Option<
13771        unsafe extern "C" fn(
13772            compH: AEGP_CompH,
13773            work_area_startPT: *const A_Time,
13774            work_area_durationPT: *const A_Time,
13775        ) -> A_Err,
13776    >,
13777    pub AEGP_CreateSolidInComp: ::std::option::Option<
13778        unsafe extern "C" fn(
13779            utf_nameZ: *const A_UTF16Char,
13780            width: A_long,
13781            height: A_long,
13782            color: *const AEGP_ColorVal,
13783            parent_compH: AEGP_CompH,
13784            durationPT0: *const A_Time,
13785            new_solidPH: *mut AEGP_LayerH,
13786        ) -> A_Err,
13787    >,
13788    pub AEGP_CreateCameraInComp: ::std::option::Option<
13789        unsafe extern "C" fn(
13790            utf_nameZ: *const A_UTF16Char,
13791            center_point: A_FloatPoint,
13792            parent_compH: AEGP_CompH,
13793            new_cameraPH: *mut AEGP_LayerH,
13794        ) -> A_Err,
13795    >,
13796    pub AEGP_CreateLightInComp: ::std::option::Option<
13797        unsafe extern "C" fn(
13798            utf_nameZ: *const A_UTF16Char,
13799            center_point: A_FloatPoint,
13800            parent_compH: AEGP_CompH,
13801            new_lightPH: *mut AEGP_LayerH,
13802        ) -> A_Err,
13803    >,
13804    pub AEGP_CreateComp: ::std::option::Option<
13805        unsafe extern "C" fn(
13806            parent_folderH0: AEGP_ItemH,
13807            utf_nameZ: *const A_UTF16Char,
13808            widthL: A_long,
13809            heightL: A_long,
13810            pixel_aspect_ratioPRt: *const A_Ratio,
13811            durationPT: *const A_Time,
13812            frameratePRt: *const A_Ratio,
13813            new_compPH: *mut AEGP_CompH,
13814        ) -> A_Err,
13815    >,
13816    pub AEGP_GetNewCollectionFromCompSelection: ::std::option::Option<
13817        unsafe extern "C" fn(
13818            plugin_id: AEGP_PluginID,
13819            compH: AEGP_CompH,
13820            collectionPH: *mut AEGP_Collection2H,
13821        ) -> A_Err,
13822    >,
13823    pub AEGP_SetSelection: ::std::option::Option<
13824        unsafe extern "C" fn(compH: AEGP_CompH, collectionH: AEGP_Collection2H) -> A_Err,
13825    >,
13826    pub AEGP_GetCompDisplayStartTime: ::std::option::Option<
13827        unsafe extern "C" fn(compH: AEGP_CompH, start_timePT: *mut A_Time) -> A_Err,
13828    >,
13829    pub AEGP_SetCompDisplayStartTime: ::std::option::Option<
13830        unsafe extern "C" fn(compH: AEGP_CompH, start_timePT: *const A_Time) -> A_Err,
13831    >,
13832    pub AEGP_SetCompDuration: ::std::option::Option<
13833        unsafe extern "C" fn(compH: AEGP_CompH, durationPT: *const A_Time) -> A_Err,
13834    >,
13835    pub AEGP_CreateNullInComp: ::std::option::Option<
13836        unsafe extern "C" fn(
13837            utf_nameZ: *const A_UTF16Char,
13838            parent_compH: AEGP_CompH,
13839            durationPT0: *const A_Time,
13840            new_null_solidPH: *mut AEGP_LayerH,
13841        ) -> A_Err,
13842    >,
13843    pub AEGP_SetCompPixelAspectRatio: ::std::option::Option<
13844        unsafe extern "C" fn(compH: AEGP_CompH, pix_aspectratioPRt: *const A_Ratio) -> A_Err,
13845    >,
13846    pub AEGP_CreateTextLayerInComp: ::std::option::Option<
13847        unsafe extern "C" fn(
13848            parent_compH: AEGP_CompH,
13849            select_new_layerB: A_Boolean,
13850            new_text_layerPH: *mut AEGP_LayerH,
13851        ) -> A_Err,
13852    >,
13853    pub AEGP_CreateBoxTextLayerInComp: ::std::option::Option<
13854        unsafe extern "C" fn(
13855            parent_compH: AEGP_CompH,
13856            select_new_layerB: A_Boolean,
13857            box_dimensions: A_FloatPoint,
13858            new_text_layerPH: *mut AEGP_LayerH,
13859        ) -> A_Err,
13860    >,
13861    pub AEGP_SetCompDimensions: ::std::option::Option<
13862        unsafe extern "C" fn(compH: AEGP_CompH, widthL: A_long, heightL: A_long) -> A_Err,
13863    >,
13864    pub AEGP_DuplicateComp: ::std::option::Option<
13865        unsafe extern "C" fn(compH: AEGP_CompH, new_compPH: *mut AEGP_CompH) -> A_Err,
13866    >,
13867    pub AEGP_GetCompFrameDuration:
13868        ::std::option::Option<unsafe extern "C" fn(compH: AEGP_CompH, timeP: *mut A_Time) -> A_Err>,
13869    pub AEGP_GetMostRecentlyUsedComp:
13870        ::std::option::Option<unsafe extern "C" fn(compPH: *mut AEGP_CompH) -> A_Err>,
13871    pub AEGP_CreateVectorLayerInComp: ::std::option::Option<
13872        unsafe extern "C" fn(
13873            parent_compH: AEGP_CompH,
13874            new_vector_layerPH: *mut AEGP_LayerH,
13875        ) -> A_Err,
13876    >,
13877    pub AEGP_GetNewCompMarkerStream: ::std::option::Option<
13878        unsafe extern "C" fn(
13879            aegp_plugin_id: AEGP_PluginID,
13880            parent_compH: AEGP_CompH,
13881            streamPH: *mut AEGP_StreamRefH,
13882        ) -> A_Err,
13883    >,
13884    pub AEGP_GetCompDisplayDropFrame: ::std::option::Option<
13885        unsafe extern "C" fn(compH: AEGP_CompH, dropFramePB: *mut A_Boolean) -> A_Err,
13886    >,
13887    pub AEGP_SetCompDisplayDropFrame: ::std::option::Option<
13888        unsafe extern "C" fn(compH: AEGP_CompH, dropFrameB: A_Boolean) -> A_Err,
13889    >,
13890}
13891#[repr(C)]
13892#[derive(Debug, Copy, Clone)]
13893pub struct AEGP_CompSuite9 {
13894    pub AEGP_GetCompFromItem: ::std::option::Option<
13895        unsafe extern "C" fn(itemH: AEGP_ItemH, compPH: *mut AEGP_CompH) -> A_Err,
13896    >,
13897    pub AEGP_GetItemFromComp: ::std::option::Option<
13898        unsafe extern "C" fn(compH: AEGP_CompH, itemPH: *mut AEGP_ItemH) -> A_Err,
13899    >,
13900    pub AEGP_GetCompDownsampleFactor: ::std::option::Option<
13901        unsafe extern "C" fn(compH: AEGP_CompH, dsfP: *mut AEGP_DownsampleFactor) -> A_Err,
13902    >,
13903    pub AEGP_SetCompDownsampleFactor: ::std::option::Option<
13904        unsafe extern "C" fn(compH: AEGP_CompH, dsfP: *const AEGP_DownsampleFactor) -> A_Err,
13905    >,
13906    pub AEGP_GetCompBGColor: ::std::option::Option<
13907        unsafe extern "C" fn(compH: AEGP_CompH, bg_colorP: *mut AEGP_ColorVal) -> A_Err,
13908    >,
13909    pub AEGP_SetCompBGColor: ::std::option::Option<
13910        unsafe extern "C" fn(compH: AEGP_CompH, bg_colorP: *const AEGP_ColorVal) -> A_Err,
13911    >,
13912    pub AEGP_GetCompFlags: ::std::option::Option<
13913        unsafe extern "C" fn(compH: AEGP_CompH, comp_flagsP: *mut AEGP_CompFlags) -> A_Err,
13914    >,
13915    pub AEGP_GetCompFramerate: ::std::option::Option<
13916        unsafe extern "C" fn(compH: AEGP_CompH, fpsPF: *mut A_FpLong) -> A_Err,
13917    >,
13918    pub AEGP_SetCompFrameRate: ::std::option::Option<
13919        unsafe extern "C" fn(compH: AEGP_CompH, fpsPF: *const A_FpLong) -> A_Err,
13920    >,
13921    pub AEGP_GetCompShutterAnglePhase: ::std::option::Option<
13922        unsafe extern "C" fn(compH: AEGP_CompH, angle: *mut A_Ratio, phase: *mut A_Ratio) -> A_Err,
13923    >,
13924    pub AEGP_GetCompShutterFrameRange: ::std::option::Option<
13925        unsafe extern "C" fn(
13926            compH: AEGP_CompH,
13927            comp_timeP: *const A_Time,
13928            start: *mut A_Time,
13929            duration: *mut A_Time,
13930        ) -> A_Err,
13931    >,
13932    pub AEGP_GetCompSuggestedMotionBlurSamples: ::std::option::Option<
13933        unsafe extern "C" fn(compH: AEGP_CompH, samplesPL: *mut A_long) -> A_Err,
13934    >,
13935    pub AEGP_SetCompSuggestedMotionBlurSamples:
13936        ::std::option::Option<unsafe extern "C" fn(compH: AEGP_CompH, samplesL: A_long) -> A_Err>,
13937    pub AEGP_GetCompWorkAreaStart: ::std::option::Option<
13938        unsafe extern "C" fn(compH: AEGP_CompH, work_area_startPT: *mut A_Time) -> A_Err,
13939    >,
13940    pub AEGP_GetCompWorkAreaDuration: ::std::option::Option<
13941        unsafe extern "C" fn(compH: AEGP_CompH, work_area_durationPT: *mut A_Time) -> A_Err,
13942    >,
13943    pub AEGP_SetCompWorkAreaStartAndDuration: ::std::option::Option<
13944        unsafe extern "C" fn(
13945            compH: AEGP_CompH,
13946            work_area_startPT: *const A_Time,
13947            work_area_durationPT: *const A_Time,
13948        ) -> A_Err,
13949    >,
13950    pub AEGP_CreateSolidInComp: ::std::option::Option<
13951        unsafe extern "C" fn(
13952            utf_nameZ: *const A_UTF16Char,
13953            width: A_long,
13954            height: A_long,
13955            color: *const AEGP_ColorVal,
13956            parent_compH: AEGP_CompH,
13957            durationPT0: *const A_Time,
13958            new_solidPH: *mut AEGP_LayerH,
13959        ) -> A_Err,
13960    >,
13961    pub AEGP_CreateCameraInComp: ::std::option::Option<
13962        unsafe extern "C" fn(
13963            utf_nameZ: *const A_UTF16Char,
13964            center_point: A_FloatPoint,
13965            parent_compH: AEGP_CompH,
13966            new_cameraPH: *mut AEGP_LayerH,
13967        ) -> A_Err,
13968    >,
13969    pub AEGP_CreateLightInComp: ::std::option::Option<
13970        unsafe extern "C" fn(
13971            utf_nameZ: *const A_UTF16Char,
13972            center_point: A_FloatPoint,
13973            parent_compH: AEGP_CompH,
13974            new_lightPH: *mut AEGP_LayerH,
13975        ) -> A_Err,
13976    >,
13977    pub AEGP_CreateComp: ::std::option::Option<
13978        unsafe extern "C" fn(
13979            parent_folderH0: AEGP_ItemH,
13980            utf_nameZ: *const A_UTF16Char,
13981            widthL: A_long,
13982            heightL: A_long,
13983            pixel_aspect_ratioPRt: *const A_Ratio,
13984            durationPT: *const A_Time,
13985            frameratePRt: *const A_Ratio,
13986            new_compPH: *mut AEGP_CompH,
13987        ) -> A_Err,
13988    >,
13989    pub AEGP_GetNewCollectionFromCompSelection: ::std::option::Option<
13990        unsafe extern "C" fn(
13991            plugin_id: AEGP_PluginID,
13992            compH: AEGP_CompH,
13993            collectionPH: *mut AEGP_Collection2H,
13994        ) -> A_Err,
13995    >,
13996    pub AEGP_SetSelection: ::std::option::Option<
13997        unsafe extern "C" fn(compH: AEGP_CompH, collectionH: AEGP_Collection2H) -> A_Err,
13998    >,
13999    pub AEGP_GetCompDisplayStartTime: ::std::option::Option<
14000        unsafe extern "C" fn(compH: AEGP_CompH, start_timePT: *mut A_Time) -> A_Err,
14001    >,
14002    pub AEGP_SetCompDisplayStartTime: ::std::option::Option<
14003        unsafe extern "C" fn(compH: AEGP_CompH, start_timePT: *const A_Time) -> A_Err,
14004    >,
14005    pub AEGP_SetCompDuration: ::std::option::Option<
14006        unsafe extern "C" fn(compH: AEGP_CompH, durationPT: *const A_Time) -> A_Err,
14007    >,
14008    pub AEGP_CreateNullInComp: ::std::option::Option<
14009        unsafe extern "C" fn(
14010            utf_nameZ: *const A_UTF16Char,
14011            parent_compH: AEGP_CompH,
14012            durationPT0: *const A_Time,
14013            new_null_solidPH: *mut AEGP_LayerH,
14014        ) -> A_Err,
14015    >,
14016    pub AEGP_SetCompPixelAspectRatio: ::std::option::Option<
14017        unsafe extern "C" fn(compH: AEGP_CompH, pix_aspectratioPRt: *const A_Ratio) -> A_Err,
14018    >,
14019    pub AEGP_CreateTextLayerInComp: ::std::option::Option<
14020        unsafe extern "C" fn(
14021            parent_compH: AEGP_CompH,
14022            select_new_layerB: A_Boolean,
14023            new_text_layerPH: *mut AEGP_LayerH,
14024        ) -> A_Err,
14025    >,
14026    pub AEGP_CreateBoxTextLayerInComp: ::std::option::Option<
14027        unsafe extern "C" fn(
14028            parent_compH: AEGP_CompH,
14029            select_new_layerB: A_Boolean,
14030            box_dimensions: A_FloatPoint,
14031            new_text_layerPH: *mut AEGP_LayerH,
14032        ) -> A_Err,
14033    >,
14034    pub AEGP_SetCompDimensions: ::std::option::Option<
14035        unsafe extern "C" fn(compH: AEGP_CompH, widthL: A_long, heightL: A_long) -> A_Err,
14036    >,
14037    pub AEGP_DuplicateComp: ::std::option::Option<
14038        unsafe extern "C" fn(compH: AEGP_CompH, new_compPH: *mut AEGP_CompH) -> A_Err,
14039    >,
14040    pub AEGP_GetCompFrameDuration:
14041        ::std::option::Option<unsafe extern "C" fn(compH: AEGP_CompH, timeP: *mut A_Time) -> A_Err>,
14042    pub AEGP_GetMostRecentlyUsedComp:
14043        ::std::option::Option<unsafe extern "C" fn(compPH: *mut AEGP_CompH) -> A_Err>,
14044    pub AEGP_CreateVectorLayerInComp: ::std::option::Option<
14045        unsafe extern "C" fn(
14046            parent_compH: AEGP_CompH,
14047            new_vector_layerPH: *mut AEGP_LayerH,
14048        ) -> A_Err,
14049    >,
14050    pub AEGP_GetNewCompMarkerStream: ::std::option::Option<
14051        unsafe extern "C" fn(
14052            aegp_plugin_id: AEGP_PluginID,
14053            parent_compH: AEGP_CompH,
14054            streamPH: *mut AEGP_StreamRefH,
14055        ) -> A_Err,
14056    >,
14057    pub AEGP_GetCompDisplayDropFrame: ::std::option::Option<
14058        unsafe extern "C" fn(compH: AEGP_CompH, dropFramePB: *mut A_Boolean) -> A_Err,
14059    >,
14060    pub AEGP_SetCompDisplayDropFrame: ::std::option::Option<
14061        unsafe extern "C" fn(compH: AEGP_CompH, dropFrameB: A_Boolean) -> A_Err,
14062    >,
14063}
14064#[repr(C)]
14065#[derive(Debug, Copy, Clone)]
14066pub struct AEGP_CompSuite8 {
14067    pub AEGP_GetCompFromItem: ::std::option::Option<
14068        unsafe extern "C" fn(itemH: AEGP_ItemH, compPH: *mut AEGP_CompH) -> A_Err,
14069    >,
14070    pub AEGP_GetItemFromComp: ::std::option::Option<
14071        unsafe extern "C" fn(compH: AEGP_CompH, itemPH: *mut AEGP_ItemH) -> A_Err,
14072    >,
14073    pub AEGP_GetCompDownsampleFactor: ::std::option::Option<
14074        unsafe extern "C" fn(compH: AEGP_CompH, dsfP: *mut AEGP_DownsampleFactor) -> A_Err,
14075    >,
14076    pub AEGP_SetCompDownsampleFactor: ::std::option::Option<
14077        unsafe extern "C" fn(compH: AEGP_CompH, dsfP: *const AEGP_DownsampleFactor) -> A_Err,
14078    >,
14079    pub AEGP_GetCompBGColor: ::std::option::Option<
14080        unsafe extern "C" fn(compH: AEGP_CompH, bg_colorP: *mut AEGP_ColorVal) -> A_Err,
14081    >,
14082    pub AEGP_SetCompBGColor: ::std::option::Option<
14083        unsafe extern "C" fn(compH: AEGP_CompH, bg_colorP: *const AEGP_ColorVal) -> A_Err,
14084    >,
14085    pub AEGP_GetCompFlags: ::std::option::Option<
14086        unsafe extern "C" fn(compH: AEGP_CompH, comp_flagsP: *mut AEGP_CompFlags) -> A_Err,
14087    >,
14088    pub AEGP_GetCompFramerate: ::std::option::Option<
14089        unsafe extern "C" fn(compH: AEGP_CompH, fpsPF: *mut A_FpLong) -> A_Err,
14090    >,
14091    pub AEGP_SetCompFrameRate: ::std::option::Option<
14092        unsafe extern "C" fn(compH: AEGP_CompH, fpsPF: *const A_FpLong) -> A_Err,
14093    >,
14094    pub AEGP_GetCompShutterAnglePhase: ::std::option::Option<
14095        unsafe extern "C" fn(compH: AEGP_CompH, angle: *mut A_Ratio, phase: *mut A_Ratio) -> A_Err,
14096    >,
14097    pub AEGP_GetCompShutterFrameRange: ::std::option::Option<
14098        unsafe extern "C" fn(
14099            compH: AEGP_CompH,
14100            comp_timeP: *const A_Time,
14101            start: *mut A_Time,
14102            duration: *mut A_Time,
14103        ) -> A_Err,
14104    >,
14105    pub AEGP_GetCompSuggestedMotionBlurSamples: ::std::option::Option<
14106        unsafe extern "C" fn(compH: AEGP_CompH, samplesPL: *mut A_long) -> A_Err,
14107    >,
14108    pub AEGP_SetCompSuggestedMotionBlurSamples:
14109        ::std::option::Option<unsafe extern "C" fn(compH: AEGP_CompH, samplesL: A_long) -> A_Err>,
14110    pub AEGP_GetCompWorkAreaStart: ::std::option::Option<
14111        unsafe extern "C" fn(compH: AEGP_CompH, work_area_startPT: *mut A_Time) -> A_Err,
14112    >,
14113    pub AEGP_GetCompWorkAreaDuration: ::std::option::Option<
14114        unsafe extern "C" fn(compH: AEGP_CompH, work_area_durationPT: *mut A_Time) -> A_Err,
14115    >,
14116    pub AEGP_SetCompWorkAreaStartAndDuration: ::std::option::Option<
14117        unsafe extern "C" fn(
14118            compH: AEGP_CompH,
14119            work_area_startPT: *const A_Time,
14120            work_area_durationPT: *const A_Time,
14121        ) -> A_Err,
14122    >,
14123    pub AEGP_CreateSolidInComp: ::std::option::Option<
14124        unsafe extern "C" fn(
14125            utf_nameZ: *const A_UTF16Char,
14126            width: A_long,
14127            height: A_long,
14128            color: *const AEGP_ColorVal,
14129            parent_compH: AEGP_CompH,
14130            durationPT0: *const A_Time,
14131            new_solidPH: *mut AEGP_LayerH,
14132        ) -> A_Err,
14133    >,
14134    pub AEGP_CreateCameraInComp: ::std::option::Option<
14135        unsafe extern "C" fn(
14136            utf_nameZ: *const A_UTF16Char,
14137            center_point: A_FloatPoint,
14138            parent_compH: AEGP_CompH,
14139            new_cameraPH: *mut AEGP_LayerH,
14140        ) -> A_Err,
14141    >,
14142    pub AEGP_CreateLightInComp: ::std::option::Option<
14143        unsafe extern "C" fn(
14144            utf_nameZ: *const A_UTF16Char,
14145            center_point: A_FloatPoint,
14146            parent_compH: AEGP_CompH,
14147            new_lightPH: *mut AEGP_LayerH,
14148        ) -> A_Err,
14149    >,
14150    pub AEGP_CreateComp: ::std::option::Option<
14151        unsafe extern "C" fn(
14152            parent_folderH0: AEGP_ItemH,
14153            utf_nameZ: *const A_UTF16Char,
14154            widthL: A_long,
14155            heightL: A_long,
14156            pixel_aspect_ratioPRt: *const A_Ratio,
14157            durationPT: *const A_Time,
14158            frameratePRt: *const A_Ratio,
14159            new_compPH: *mut AEGP_CompH,
14160        ) -> A_Err,
14161    >,
14162    pub AEGP_GetNewCollectionFromCompSelection: ::std::option::Option<
14163        unsafe extern "C" fn(
14164            plugin_id: AEGP_PluginID,
14165            compH: AEGP_CompH,
14166            collectionPH: *mut AEGP_Collection2H,
14167        ) -> A_Err,
14168    >,
14169    pub AEGP_SetSelection: ::std::option::Option<
14170        unsafe extern "C" fn(compH: AEGP_CompH, collectionH: AEGP_Collection2H) -> A_Err,
14171    >,
14172    pub AEGP_GetCompDisplayStartTime: ::std::option::Option<
14173        unsafe extern "C" fn(compH: AEGP_CompH, start_timePT: *mut A_Time) -> A_Err,
14174    >,
14175    pub AEGP_SetCompDisplayStartTime: ::std::option::Option<
14176        unsafe extern "C" fn(compH: AEGP_CompH, start_timePT: *const A_Time) -> A_Err,
14177    >,
14178    pub AEGP_SetCompDuration: ::std::option::Option<
14179        unsafe extern "C" fn(compH: AEGP_CompH, durationPT: *const A_Time) -> A_Err,
14180    >,
14181    pub AEGP_CreateNullInComp: ::std::option::Option<
14182        unsafe extern "C" fn(
14183            utf_nameZ: *const A_UTF16Char,
14184            parent_compH: AEGP_CompH,
14185            durationPT0: *const A_Time,
14186            new_null_solidPH: *mut AEGP_LayerH,
14187        ) -> A_Err,
14188    >,
14189    pub AEGP_SetCompPixelAspectRatio: ::std::option::Option<
14190        unsafe extern "C" fn(compH: AEGP_CompH, pix_aspectratioPRt: *const A_Ratio) -> A_Err,
14191    >,
14192    pub AEGP_CreateTextLayerInComp: ::std::option::Option<
14193        unsafe extern "C" fn(parent_compH: AEGP_CompH, new_text_layerPH: *mut AEGP_LayerH) -> A_Err,
14194    >,
14195    pub AEGP_CreateBoxTextLayerInComp: ::std::option::Option<
14196        unsafe extern "C" fn(
14197            parent_compH: AEGP_CompH,
14198            box_dimensions: A_FloatPoint,
14199            new_text_layerPH: *mut AEGP_LayerH,
14200        ) -> A_Err,
14201    >,
14202    pub AEGP_SetCompDimensions: ::std::option::Option<
14203        unsafe extern "C" fn(compH: AEGP_CompH, widthL: A_long, heightL: A_long) -> A_Err,
14204    >,
14205    pub AEGP_DuplicateComp: ::std::option::Option<
14206        unsafe extern "C" fn(compH: AEGP_CompH, new_compPH: *mut AEGP_CompH) -> A_Err,
14207    >,
14208    pub AEGP_GetCompFrameDuration:
14209        ::std::option::Option<unsafe extern "C" fn(compH: AEGP_CompH, timeP: *mut A_Time) -> A_Err>,
14210    pub AEGP_GetMostRecentlyUsedComp:
14211        ::std::option::Option<unsafe extern "C" fn(compPH: *mut AEGP_CompH) -> A_Err>,
14212    pub AEGP_CreateVectorLayerInComp: ::std::option::Option<
14213        unsafe extern "C" fn(
14214            parent_compH: AEGP_CompH,
14215            new_vector_layerPH: *mut AEGP_LayerH,
14216        ) -> A_Err,
14217    >,
14218    pub AEGP_GetNewCompMarkerStream: ::std::option::Option<
14219        unsafe extern "C" fn(
14220            aegp_plugin_id: AEGP_PluginID,
14221            parent_compH: AEGP_CompH,
14222            streamPH: *mut AEGP_StreamRefH,
14223        ) -> A_Err,
14224    >,
14225    pub AEGP_GetCompDisplayDropFrame: ::std::option::Option<
14226        unsafe extern "C" fn(compH: AEGP_CompH, dropFramePB: *mut A_Boolean) -> A_Err,
14227    >,
14228    pub AEGP_SetCompDisplayDropFrame: ::std::option::Option<
14229        unsafe extern "C" fn(compH: AEGP_CompH, dropFrameB: A_Boolean) -> A_Err,
14230    >,
14231}
14232#[repr(C)]
14233#[derive(Debug, Copy, Clone)]
14234pub struct AEGP_CompSuite7 {
14235    pub AEGP_GetCompFromItem: ::std::option::Option<
14236        unsafe extern "C" fn(itemH: AEGP_ItemH, compPH: *mut AEGP_CompH) -> A_Err,
14237    >,
14238    pub AEGP_GetItemFromComp: ::std::option::Option<
14239        unsafe extern "C" fn(compH: AEGP_CompH, itemPH: *mut AEGP_ItemH) -> A_Err,
14240    >,
14241    pub AEGP_GetCompDownsampleFactor: ::std::option::Option<
14242        unsafe extern "C" fn(compH: AEGP_CompH, dsfP: *mut AEGP_DownsampleFactor) -> A_Err,
14243    >,
14244    pub AEGP_SetCompDownsampleFactor: ::std::option::Option<
14245        unsafe extern "C" fn(compH: AEGP_CompH, dsfP: *const AEGP_DownsampleFactor) -> A_Err,
14246    >,
14247    pub AEGP_GetCompBGColor: ::std::option::Option<
14248        unsafe extern "C" fn(compH: AEGP_CompH, bg_colorP: *mut AEGP_ColorVal) -> A_Err,
14249    >,
14250    pub AEGP_SetCompBGColor: ::std::option::Option<
14251        unsafe extern "C" fn(compH: AEGP_CompH, bg_colorP: *const AEGP_ColorVal) -> A_Err,
14252    >,
14253    pub AEGP_GetCompFlags: ::std::option::Option<
14254        unsafe extern "C" fn(compH: AEGP_CompH, comp_flagsP: *mut AEGP_CompFlags) -> A_Err,
14255    >,
14256    pub AEGP_GetCompFramerate: ::std::option::Option<
14257        unsafe extern "C" fn(compH: AEGP_CompH, fpsPF: *mut A_FpLong) -> A_Err,
14258    >,
14259    pub AEGP_SetCompFrameRate: ::std::option::Option<
14260        unsafe extern "C" fn(compH: AEGP_CompH, fpsPF: *const A_FpLong) -> A_Err,
14261    >,
14262    pub AEGP_GetCompShutterAnglePhase: ::std::option::Option<
14263        unsafe extern "C" fn(compH: AEGP_CompH, angle: *mut A_Ratio, phase: *mut A_Ratio) -> A_Err,
14264    >,
14265    pub AEGP_GetCompShutterFrameRange: ::std::option::Option<
14266        unsafe extern "C" fn(
14267            compH: AEGP_CompH,
14268            comp_timeP: *const A_Time,
14269            start: *mut A_Time,
14270            duration: *mut A_Time,
14271        ) -> A_Err,
14272    >,
14273    pub AEGP_GetCompSuggestedMotionBlurSamples: ::std::option::Option<
14274        unsafe extern "C" fn(compH: AEGP_CompH, samplesPL: *mut A_long) -> A_Err,
14275    >,
14276    pub AEGP_SetCompSuggestedMotionBlurSamples:
14277        ::std::option::Option<unsafe extern "C" fn(compH: AEGP_CompH, samplesL: A_long) -> A_Err>,
14278    pub AEGP_GetCompWorkAreaStart: ::std::option::Option<
14279        unsafe extern "C" fn(compH: AEGP_CompH, work_area_startPT: *mut A_Time) -> A_Err,
14280    >,
14281    pub AEGP_GetCompWorkAreaDuration: ::std::option::Option<
14282        unsafe extern "C" fn(compH: AEGP_CompH, work_area_durationPT: *mut A_Time) -> A_Err,
14283    >,
14284    pub AEGP_SetCompWorkAreaStartAndDuration: ::std::option::Option<
14285        unsafe extern "C" fn(
14286            compH: AEGP_CompH,
14287            work_area_startPT: *const A_Time,
14288            work_area_durationPT: *const A_Time,
14289        ) -> A_Err,
14290    >,
14291    pub AEGP_CreateSolidInComp: ::std::option::Option<
14292        unsafe extern "C" fn(
14293            utf_nameZ: *const A_UTF16Char,
14294            width: A_long,
14295            height: A_long,
14296            color: *const AEGP_ColorVal,
14297            parent_compH: AEGP_CompH,
14298            durationPT0: *const A_Time,
14299            new_solidPH: *mut AEGP_LayerH,
14300        ) -> A_Err,
14301    >,
14302    pub AEGP_CreateCameraInComp: ::std::option::Option<
14303        unsafe extern "C" fn(
14304            utf_nameZ: *const A_UTF16Char,
14305            center_point: A_FloatPoint,
14306            parent_compH: AEGP_CompH,
14307            new_cameraPH: *mut AEGP_LayerH,
14308        ) -> A_Err,
14309    >,
14310    pub AEGP_CreateLightInComp: ::std::option::Option<
14311        unsafe extern "C" fn(
14312            utf_nameZ: *const A_UTF16Char,
14313            center_point: A_FloatPoint,
14314            parent_compH: AEGP_CompH,
14315            new_lightPH: *mut AEGP_LayerH,
14316        ) -> A_Err,
14317    >,
14318    pub AEGP_CreateComp: ::std::option::Option<
14319        unsafe extern "C" fn(
14320            parent_folderH0: AEGP_ItemH,
14321            utf_nameZ: *const A_UTF16Char,
14322            widthL: A_long,
14323            heightL: A_long,
14324            pixel_aspect_ratioPRt: *const A_Ratio,
14325            durationPT: *const A_Time,
14326            frameratePRt: *const A_Ratio,
14327            new_compPH: *mut AEGP_CompH,
14328        ) -> A_Err,
14329    >,
14330    pub AEGP_GetNewCollectionFromCompSelection: ::std::option::Option<
14331        unsafe extern "C" fn(
14332            plugin_id: AEGP_PluginID,
14333            compH: AEGP_CompH,
14334            collectionPH: *mut AEGP_Collection2H,
14335        ) -> A_Err,
14336    >,
14337    pub AEGP_SetSelection: ::std::option::Option<
14338        unsafe extern "C" fn(compH: AEGP_CompH, collectionH: AEGP_Collection2H) -> A_Err,
14339    >,
14340    pub AEGP_GetCompDisplayStartTime: ::std::option::Option<
14341        unsafe extern "C" fn(compH: AEGP_CompH, start_timePT: *mut A_Time) -> A_Err,
14342    >,
14343    pub AEGP_SetCompDisplayStartTime: ::std::option::Option<
14344        unsafe extern "C" fn(compH: AEGP_CompH, start_timePT: *const A_Time) -> A_Err,
14345    >,
14346    pub AEGP_SetCompDuration: ::std::option::Option<
14347        unsafe extern "C" fn(compH: AEGP_CompH, durationPT: *const A_Time) -> A_Err,
14348    >,
14349    pub AEGP_CreateNullInComp: ::std::option::Option<
14350        unsafe extern "C" fn(
14351            utf_nameZ: *const A_UTF16Char,
14352            parent_compH: AEGP_CompH,
14353            durationPT0: *const A_Time,
14354            new_null_solidPH: *mut AEGP_LayerH,
14355        ) -> A_Err,
14356    >,
14357    pub AEGP_SetCompPixelAspectRatio: ::std::option::Option<
14358        unsafe extern "C" fn(compH: AEGP_CompH, pix_aspectratioPRt: *const A_Ratio) -> A_Err,
14359    >,
14360    pub AEGP_CreateTextLayerInComp: ::std::option::Option<
14361        unsafe extern "C" fn(parent_compH: AEGP_CompH, new_text_layerPH: *mut AEGP_LayerH) -> A_Err,
14362    >,
14363    pub AEGP_SetCompDimensions: ::std::option::Option<
14364        unsafe extern "C" fn(compH: AEGP_CompH, widthL: A_long, heightL: A_long) -> A_Err,
14365    >,
14366    pub AEGP_DuplicateComp: ::std::option::Option<
14367        unsafe extern "C" fn(compH: AEGP_CompH, new_compPH: *mut AEGP_CompH) -> A_Err,
14368    >,
14369    pub AEGP_GetCompFrameDuration:
14370        ::std::option::Option<unsafe extern "C" fn(compH: AEGP_CompH, timeP: *mut A_Time) -> A_Err>,
14371    pub AEGP_GetMostRecentlyUsedComp:
14372        ::std::option::Option<unsafe extern "C" fn(compPH: *mut AEGP_CompH) -> A_Err>,
14373    pub AEGP_CreateVectorLayerInComp: ::std::option::Option<
14374        unsafe extern "C" fn(
14375            parent_compH: AEGP_CompH,
14376            new_vector_layerPH: *mut AEGP_LayerH,
14377        ) -> A_Err,
14378    >,
14379    pub AEGP_GetNewCompMarkerStream: ::std::option::Option<
14380        unsafe extern "C" fn(
14381            aegp_plugin_id: AEGP_PluginID,
14382            parent_compH: AEGP_CompH,
14383            streamPH: *mut AEGP_StreamRefH,
14384        ) -> A_Err,
14385    >,
14386}
14387#[repr(C)]
14388#[derive(Debug, Copy, Clone)]
14389pub struct AEGP_CompSuite6 {
14390    pub AEGP_GetCompFromItem: ::std::option::Option<
14391        unsafe extern "C" fn(itemH: AEGP_ItemH, compPH: *mut AEGP_CompH) -> A_Err,
14392    >,
14393    pub AEGP_GetItemFromComp: ::std::option::Option<
14394        unsafe extern "C" fn(compH: AEGP_CompH, itemPH: *mut AEGP_ItemH) -> A_Err,
14395    >,
14396    pub AEGP_GetCompDownsampleFactor: ::std::option::Option<
14397        unsafe extern "C" fn(compH: AEGP_CompH, dsfP: *mut AEGP_DownsampleFactor) -> A_Err,
14398    >,
14399    pub AEGP_SetCompDownsampleFactor: ::std::option::Option<
14400        unsafe extern "C" fn(compH: AEGP_CompH, dsfP: *const AEGP_DownsampleFactor) -> A_Err,
14401    >,
14402    pub AEGP_GetCompBGColor: ::std::option::Option<
14403        unsafe extern "C" fn(compH: AEGP_CompH, bg_colorP: *mut AEGP_ColorVal) -> A_Err,
14404    >,
14405    pub AEGP_SetCompBGColor: ::std::option::Option<
14406        unsafe extern "C" fn(compH: AEGP_CompH, bg_colorP: *const AEGP_ColorVal) -> A_Err,
14407    >,
14408    pub AEGP_GetCompFlags: ::std::option::Option<
14409        unsafe extern "C" fn(compH: AEGP_CompH, comp_flagsP: *mut AEGP_CompFlags) -> A_Err,
14410    >,
14411    pub AEGP_GetCompFramerate: ::std::option::Option<
14412        unsafe extern "C" fn(compH: AEGP_CompH, fpsPF: *mut A_FpLong) -> A_Err,
14413    >,
14414    pub AEGP_SetCompFrameRate: ::std::option::Option<
14415        unsafe extern "C" fn(compH: AEGP_CompH, fpsPF: *const A_FpLong) -> A_Err,
14416    >,
14417    pub AEGP_GetCompShutterAnglePhase: ::std::option::Option<
14418        unsafe extern "C" fn(compH: AEGP_CompH, angle: *mut A_Ratio, phase: *mut A_Ratio) -> A_Err,
14419    >,
14420    pub AEGP_GetCompShutterFrameRange: ::std::option::Option<
14421        unsafe extern "C" fn(
14422            compH: AEGP_CompH,
14423            comp_timeP: *const A_Time,
14424            start: *mut A_Time,
14425            duration: *mut A_Time,
14426        ) -> A_Err,
14427    >,
14428    pub AEGP_GetCompSuggestedMotionBlurSamples: ::std::option::Option<
14429        unsafe extern "C" fn(compH: AEGP_CompH, samplesPL: *mut A_long) -> A_Err,
14430    >,
14431    pub AEGP_SetCompSuggestedMotionBlurSamples:
14432        ::std::option::Option<unsafe extern "C" fn(compH: AEGP_CompH, samplesL: A_long) -> A_Err>,
14433    pub AEGP_GetCompWorkAreaStart: ::std::option::Option<
14434        unsafe extern "C" fn(compH: AEGP_CompH, work_area_startPT: *mut A_Time) -> A_Err,
14435    >,
14436    pub AEGP_GetCompWorkAreaDuration: ::std::option::Option<
14437        unsafe extern "C" fn(compH: AEGP_CompH, work_area_durationPT: *mut A_Time) -> A_Err,
14438    >,
14439    pub AEGP_SetCompWorkAreaStartAndDuration: ::std::option::Option<
14440        unsafe extern "C" fn(
14441            compH: AEGP_CompH,
14442            work_area_startPT: *const A_Time,
14443            work_area_durationPT: *const A_Time,
14444        ) -> A_Err,
14445    >,
14446    pub AEGP_CreateSolidInComp: ::std::option::Option<
14447        unsafe extern "C" fn(
14448            nameZ: *const A_char,
14449            width: A_long,
14450            height: A_long,
14451            color: *const AEGP_ColorVal,
14452            parent_compH: AEGP_CompH,
14453            durationPT0: *const A_Time,
14454            new_solidPH: *mut AEGP_LayerH,
14455        ) -> A_Err,
14456    >,
14457    pub AEGP_CreateCameraInComp: ::std::option::Option<
14458        unsafe extern "C" fn(
14459            nameZ: *const A_char,
14460            center_point: A_FloatPoint,
14461            parent_compH: AEGP_CompH,
14462            new_cameraPH: *mut AEGP_LayerH,
14463        ) -> A_Err,
14464    >,
14465    pub AEGP_CreateLightInComp: ::std::option::Option<
14466        unsafe extern "C" fn(
14467            nameZ: *const A_char,
14468            center_point: A_FloatPoint,
14469            parent_compH: AEGP_CompH,
14470            new_lightPH: *mut AEGP_LayerH,
14471        ) -> A_Err,
14472    >,
14473    pub AEGP_CreateComp: ::std::option::Option<
14474        unsafe extern "C" fn(
14475            parent_folderH0: AEGP_ItemH,
14476            nameZ: *const A_char,
14477            widthL: A_long,
14478            heightL: A_long,
14479            pixel_aspect_ratioPRt: *const A_Ratio,
14480            durationPT: *const A_Time,
14481            frameratePRt: *const A_Ratio,
14482            new_compPH: *mut AEGP_CompH,
14483        ) -> A_Err,
14484    >,
14485    pub AEGP_GetNewCollectionFromCompSelection: ::std::option::Option<
14486        unsafe extern "C" fn(
14487            plugin_id: AEGP_PluginID,
14488            compH: AEGP_CompH,
14489            collectionPH: *mut AEGP_Collection2H,
14490        ) -> A_Err,
14491    >,
14492    pub AEGP_SetSelection: ::std::option::Option<
14493        unsafe extern "C" fn(compH: AEGP_CompH, collectionH: AEGP_Collection2H) -> A_Err,
14494    >,
14495    pub AEGP_GetCompDisplayStartTime: ::std::option::Option<
14496        unsafe extern "C" fn(compH: AEGP_CompH, start_timePT: *mut A_Time) -> A_Err,
14497    >,
14498    pub AEGP_SetCompDisplayStartTime: ::std::option::Option<
14499        unsafe extern "C" fn(compH: AEGP_CompH, start_timePT: *const A_Time) -> A_Err,
14500    >,
14501    pub AEGP_SetCompDuration: ::std::option::Option<
14502        unsafe extern "C" fn(compH: AEGP_CompH, durationPT: *const A_Time) -> A_Err,
14503    >,
14504    pub AEGP_CreateNullInComp: ::std::option::Option<
14505        unsafe extern "C" fn(
14506            nameZ: *const A_char,
14507            parent_compH: AEGP_CompH,
14508            durationPT0: *const A_Time,
14509            new_null_solidPH: *mut AEGP_LayerH,
14510        ) -> A_Err,
14511    >,
14512    pub AEGP_SetCompPixelAspectRatio: ::std::option::Option<
14513        unsafe extern "C" fn(compH: AEGP_CompH, pix_aspectratioPRt: *const A_Ratio) -> A_Err,
14514    >,
14515    pub AEGP_CreateTextLayerInComp: ::std::option::Option<
14516        unsafe extern "C" fn(parent_compH: AEGP_CompH, new_text_layerPH: *mut AEGP_LayerH) -> A_Err,
14517    >,
14518    pub AEGP_SetCompDimensions: ::std::option::Option<
14519        unsafe extern "C" fn(compH: AEGP_CompH, widthL: A_long, heightL: A_long) -> A_Err,
14520    >,
14521    pub AEGP_DuplicateComp: ::std::option::Option<
14522        unsafe extern "C" fn(compH: AEGP_CompH, new_compPH: *mut AEGP_CompH) -> A_Err,
14523    >,
14524    pub AEGP_GetCompFrameDuration:
14525        ::std::option::Option<unsafe extern "C" fn(compH: AEGP_CompH, timeP: *mut A_Time) -> A_Err>,
14526    pub AEGP_GetMostRecentlyUsedComp:
14527        ::std::option::Option<unsafe extern "C" fn(compPH: *mut AEGP_CompH) -> A_Err>,
14528    pub AEGP_CreateVectorLayerInComp: ::std::option::Option<
14529        unsafe extern "C" fn(
14530            parent_compH: AEGP_CompH,
14531            new_vector_layerPH: *mut AEGP_LayerH,
14532        ) -> A_Err,
14533    >,
14534    pub AEGP_GetNewCompMarkerStream: ::std::option::Option<
14535        unsafe extern "C" fn(
14536            aegp_plugin_id: AEGP_PluginID,
14537            parent_compH: AEGP_CompH,
14538            streamPH: *mut AEGP_StreamRefH,
14539        ) -> A_Err,
14540    >,
14541}
14542#[repr(C)]
14543#[derive(Debug, Copy, Clone)]
14544pub struct AEGP_CompSuite5 {
14545    pub AEGP_GetCompFromItem: ::std::option::Option<
14546        unsafe extern "C" fn(itemH: AEGP_ItemH, compPH: *mut AEGP_CompH) -> A_Err,
14547    >,
14548    pub AEGP_GetItemFromComp: ::std::option::Option<
14549        unsafe extern "C" fn(compH: AEGP_CompH, itemPH: *mut AEGP_ItemH) -> A_Err,
14550    >,
14551    pub AEGP_GetCompDownsampleFactor: ::std::option::Option<
14552        unsafe extern "C" fn(compH: AEGP_CompH, dsfP: *mut AEGP_DownsampleFactor) -> A_Err,
14553    >,
14554    pub AEGP_SetCompDownsampleFactor: ::std::option::Option<
14555        unsafe extern "C" fn(compH: AEGP_CompH, dsfP: *const AEGP_DownsampleFactor) -> A_Err,
14556    >,
14557    pub AEGP_GetCompBGColor: ::std::option::Option<
14558        unsafe extern "C" fn(compH: AEGP_CompH, bg_colorP: *mut AEGP_ColorVal) -> A_Err,
14559    >,
14560    pub AEGP_SetCompBGColor: ::std::option::Option<
14561        unsafe extern "C" fn(compH: AEGP_CompH, bg_colorP: *const AEGP_ColorVal) -> A_Err,
14562    >,
14563    pub AEGP_GetCompFlags: ::std::option::Option<
14564        unsafe extern "C" fn(compH: AEGP_CompH, comp_flagsP: *mut AEGP_CompFlags) -> A_Err,
14565    >,
14566    pub AEGP_GetCompFramerate: ::std::option::Option<
14567        unsafe extern "C" fn(compH: AEGP_CompH, fpsPF: *mut A_FpLong) -> A_Err,
14568    >,
14569    pub AEGP_SetCompFrameRate: ::std::option::Option<
14570        unsafe extern "C" fn(compH: AEGP_CompH, fpsPF: *const A_FpLong) -> A_Err,
14571    >,
14572    pub AEGP_GetCompShutterAnglePhase: ::std::option::Option<
14573        unsafe extern "C" fn(compH: AEGP_CompH, angle: *mut A_Ratio, phase: *mut A_Ratio) -> A_Err,
14574    >,
14575    pub AEGP_GetCompShutterFrameRange: ::std::option::Option<
14576        unsafe extern "C" fn(
14577            compH: AEGP_CompH,
14578            comp_timeP: *const A_Time,
14579            start: *mut A_Time,
14580            duration: *mut A_Time,
14581        ) -> A_Err,
14582    >,
14583    pub AEGP_GetCompWorkAreaStart: ::std::option::Option<
14584        unsafe extern "C" fn(compH: AEGP_CompH, work_area_startPT: *mut A_Time) -> A_Err,
14585    >,
14586    pub AEGP_GetCompWorkAreaDuration: ::std::option::Option<
14587        unsafe extern "C" fn(compH: AEGP_CompH, work_area_durationPT: *mut A_Time) -> A_Err,
14588    >,
14589    pub AEGP_SetCompWorkAreaStartAndDuration: ::std::option::Option<
14590        unsafe extern "C" fn(
14591            compH: AEGP_CompH,
14592            work_area_startPT: *mut A_Time,
14593            work_area_durationPT: *mut A_Time,
14594        ) -> A_Err,
14595    >,
14596    pub AEGP_CreateSolidInComp: ::std::option::Option<
14597        unsafe extern "C" fn(
14598            nameZ: *const A_char,
14599            width: A_long,
14600            height: A_long,
14601            color: *const AEGP_ColorVal,
14602            parent_compH: AEGP_CompH,
14603            durationPT0: *const A_Time,
14604            new_solidPH: *mut AEGP_LayerH,
14605        ) -> A_Err,
14606    >,
14607    pub AEGP_CreateCameraInComp: ::std::option::Option<
14608        unsafe extern "C" fn(
14609            nameZ: *const A_char,
14610            center_point: A_FloatPoint,
14611            parent_compH: AEGP_CompH,
14612            new_cameraPH: *mut AEGP_LayerH,
14613        ) -> A_Err,
14614    >,
14615    pub AEGP_CreateLightInComp: ::std::option::Option<
14616        unsafe extern "C" fn(
14617            nameZ: *const A_char,
14618            center_point: A_FloatPoint,
14619            parent_compH: AEGP_CompH,
14620            new_lightPH: *mut AEGP_LayerH,
14621        ) -> A_Err,
14622    >,
14623    pub AEGP_CreateComp: ::std::option::Option<
14624        unsafe extern "C" fn(
14625            parent_folderH0: AEGP_ItemH,
14626            nameZ: *const A_char,
14627            widthL: A_long,
14628            heightL: A_long,
14629            pixel_aspect_ratioPRt: *const A_Ratio,
14630            durationPT: *const A_Time,
14631            frameratePRt: *const A_Ratio,
14632            new_compPH: *mut AEGP_CompH,
14633        ) -> A_Err,
14634    >,
14635    pub AEGP_GetNewCollectionFromCompSelection: ::std::option::Option<
14636        unsafe extern "C" fn(
14637            plugin_id: AEGP_PluginID,
14638            compH: AEGP_CompH,
14639            collectionPH: *mut AEGP_Collection2H,
14640        ) -> A_Err,
14641    >,
14642    pub AEGP_SetSelection: ::std::option::Option<
14643        unsafe extern "C" fn(compH: AEGP_CompH, collectionH: AEGP_Collection2H) -> A_Err,
14644    >,
14645    pub AEGP_GetCompDisplayStartTime: ::std::option::Option<
14646        unsafe extern "C" fn(compH: AEGP_CompH, start_timePT: *mut A_Time) -> A_Err,
14647    >,
14648    pub AEGP_SetCompDisplayStartTime: ::std::option::Option<
14649        unsafe extern "C" fn(compH: AEGP_CompH, start_timePT: *const A_Time) -> A_Err,
14650    >,
14651    pub AEGP_SetCompDuration: ::std::option::Option<
14652        unsafe extern "C" fn(compH: AEGP_CompH, durationPT: *const A_Time) -> A_Err,
14653    >,
14654    pub AEGP_CreateNullInComp: ::std::option::Option<
14655        unsafe extern "C" fn(
14656            nameZ: *const A_char,
14657            parent_compH: AEGP_CompH,
14658            durationPT0: *const A_Time,
14659            new_null_solidPH: *mut AEGP_LayerH,
14660        ) -> A_Err,
14661    >,
14662    pub AEGP_SetCompPixelAspectRatio: ::std::option::Option<
14663        unsafe extern "C" fn(compH: AEGP_CompH, pix_aspectratioPRt: *const A_Ratio) -> A_Err,
14664    >,
14665    pub AEGP_CreateTextLayerInComp: ::std::option::Option<
14666        unsafe extern "C" fn(parent_compH: AEGP_CompH, new_text_layerPH: *mut AEGP_LayerH) -> A_Err,
14667    >,
14668    pub AEGP_SetCompDimensions: ::std::option::Option<
14669        unsafe extern "C" fn(compH: AEGP_CompH, widthL: A_long, heightL: A_long) -> A_Err,
14670    >,
14671    pub AEGP_DuplicateComp: ::std::option::Option<
14672        unsafe extern "C" fn(compH: AEGP_CompH, new_compPH: *mut AEGP_CompH) -> A_Err,
14673    >,
14674    pub AEGP_GetCompFrameDuration:
14675        ::std::option::Option<unsafe extern "C" fn(compH: AEGP_CompH, timeP: *mut A_Time) -> A_Err>,
14676    pub AEGP_GetMostRecentlyUsedComp:
14677        ::std::option::Option<unsafe extern "C" fn(compPH: *mut AEGP_CompH) -> A_Err>,
14678}
14679#[repr(C)]
14680#[derive(Debug, Copy, Clone)]
14681pub struct AEGP_CompSuite4 {
14682    pub AEGP_GetCompFromItem: ::std::option::Option<
14683        unsafe extern "C" fn(itemH: AEGP_ItemH, compPH: *mut AEGP_CompH) -> A_Err,
14684    >,
14685    pub AEGP_GetItemFromComp: ::std::option::Option<
14686        unsafe extern "C" fn(compH: AEGP_CompH, itemPH: *mut AEGP_ItemH) -> A_Err,
14687    >,
14688    pub AEGP_GetCompDownsampleFactor: ::std::option::Option<
14689        unsafe extern "C" fn(compH: AEGP_CompH, dsfP: *mut AEGP_DownsampleFactor) -> A_Err,
14690    >,
14691    pub AEGP_SetCompDownsampleFactor: ::std::option::Option<
14692        unsafe extern "C" fn(compH: AEGP_CompH, dsfP: *const AEGP_DownsampleFactor) -> A_Err,
14693    >,
14694    pub AEGP_GetCompBGColor: ::std::option::Option<
14695        unsafe extern "C" fn(compH: AEGP_CompH, bg_colorP: *mut AEGP_ColorVal) -> A_Err,
14696    >,
14697    pub AEGP_GetCompFlags: ::std::option::Option<
14698        unsafe extern "C" fn(compH: AEGP_CompH, comp_flagsP: *mut AEGP_CompFlags) -> A_Err,
14699    >,
14700    pub AEGP_GetCompFramerate: ::std::option::Option<
14701        unsafe extern "C" fn(compH: AEGP_CompH, fpsPF: *mut A_FpLong) -> A_Err,
14702    >,
14703    pub AEGP_SetCompFrameRate: ::std::option::Option<
14704        unsafe extern "C" fn(compH: AEGP_CompH, fpsPF: *const A_FpLong) -> A_Err,
14705    >,
14706    pub AEGP_GetCompShutterAnglePhase: ::std::option::Option<
14707        unsafe extern "C" fn(compH: AEGP_CompH, angle: *mut A_Ratio, phase: *mut A_Ratio) -> A_Err,
14708    >,
14709    pub AEGP_GetCompShutterFrameRange: ::std::option::Option<
14710        unsafe extern "C" fn(
14711            compH: AEGP_CompH,
14712            comp_timeP: *const A_Time,
14713            start: *mut A_Time,
14714            duration: *mut A_Time,
14715        ) -> A_Err,
14716    >,
14717    pub AEGP_GetCompWorkAreaStart: ::std::option::Option<
14718        unsafe extern "C" fn(compH: AEGP_CompH, work_area_startPT: *mut A_Time) -> A_Err,
14719    >,
14720    pub AEGP_GetCompWorkAreaDuration: ::std::option::Option<
14721        unsafe extern "C" fn(compH: AEGP_CompH, work_area_durationPT: *mut A_Time) -> A_Err,
14722    >,
14723    pub AEGP_SetCompWorkAreaStartAndDuration: ::std::option::Option<
14724        unsafe extern "C" fn(
14725            compH: AEGP_CompH,
14726            work_area_startPT: *mut A_Time,
14727            work_area_durationPT: *mut A_Time,
14728        ) -> A_Err,
14729    >,
14730    pub AEGP_CreateSolidInComp: ::std::option::Option<
14731        unsafe extern "C" fn(
14732            nameZ: *const A_char,
14733            width: A_long,
14734            height: A_long,
14735            color: *const AEGP_ColorVal,
14736            parent_compH: AEGP_CompH,
14737            durationPT0: *const A_Time,
14738            new_solidPH: *mut AEGP_LayerH,
14739        ) -> A_Err,
14740    >,
14741    pub AEGP_CreateCameraInComp: ::std::option::Option<
14742        unsafe extern "C" fn(
14743            nameZ: *const A_char,
14744            center_point: A_FloatPoint,
14745            parent_compH: AEGP_CompH,
14746            new_cameraPH: *mut AEGP_LayerH,
14747        ) -> A_Err,
14748    >,
14749    pub AEGP_CreateLightInComp: ::std::option::Option<
14750        unsafe extern "C" fn(
14751            nameZ: *const A_char,
14752            center_point: A_FloatPoint,
14753            parent_compH: AEGP_CompH,
14754            new_lightPH: *mut AEGP_LayerH,
14755        ) -> A_Err,
14756    >,
14757    pub AEGP_CreateComp: ::std::option::Option<
14758        unsafe extern "C" fn(
14759            parent_folderH0: AEGP_ItemH,
14760            nameZ: *const A_char,
14761            widthL: A_long,
14762            heightL: A_long,
14763            pixel_aspect_ratioPRt: *const A_Ratio,
14764            durationPT: *const A_Time,
14765            frameratePRt: *const A_Ratio,
14766            new_compPH: *mut AEGP_CompH,
14767        ) -> A_Err,
14768    >,
14769    pub AEGP_GetNewCollectionFromCompSelection: ::std::option::Option<
14770        unsafe extern "C" fn(
14771            plugin_id: AEGP_PluginID,
14772            compH: AEGP_CompH,
14773            collectionPH: *mut AEGP_Collection2H,
14774        ) -> A_Err,
14775    >,
14776    pub AEGP_SetSelection: ::std::option::Option<
14777        unsafe extern "C" fn(compH: AEGP_CompH, collectionH: AEGP_Collection2H) -> A_Err,
14778    >,
14779    pub AEGP_GetCompDisplayStartTime: ::std::option::Option<
14780        unsafe extern "C" fn(compH: AEGP_CompH, start_timePT: *mut A_Time) -> A_Err,
14781    >,
14782    pub AEGP_SetCompDisplayStartTime: ::std::option::Option<
14783        unsafe extern "C" fn(compH: AEGP_CompH, start_timePT: *const A_Time) -> A_Err,
14784    >,
14785    pub AEGP_SetCompDuration: ::std::option::Option<
14786        unsafe extern "C" fn(compH: AEGP_CompH, durationPT: *const A_Time) -> A_Err,
14787    >,
14788    pub AEGP_CreateNullInComp: ::std::option::Option<
14789        unsafe extern "C" fn(
14790            nameZ: *const A_char,
14791            parent_compH: AEGP_CompH,
14792            durationPT0: *const A_Time,
14793            new_null_solidPH: *mut AEGP_LayerH,
14794        ) -> A_Err,
14795    >,
14796    pub AEGP_SetCompPixelAspectRatio: ::std::option::Option<
14797        unsafe extern "C" fn(compH: AEGP_CompH, pix_aspectratioPRt: *const A_Ratio) -> A_Err,
14798    >,
14799    pub AEGP_CreateTextLayerInComp: ::std::option::Option<
14800        unsafe extern "C" fn(parent_compH: AEGP_CompH, new_text_layerPH: *mut AEGP_LayerH) -> A_Err,
14801    >,
14802    pub AEGP_SetCompDimensions: ::std::option::Option<
14803        unsafe extern "C" fn(compH: AEGP_CompH, widthL: A_long, heightL: A_long) -> A_Err,
14804    >,
14805    pub AEGP_DuplicateComp: ::std::option::Option<
14806        unsafe extern "C" fn(compH: AEGP_CompH, new_compPH: *mut AEGP_CompH) -> A_Err,
14807    >,
14808    pub AEGP_GetCompFrameDuration:
14809        ::std::option::Option<unsafe extern "C" fn(compH: AEGP_CompH, timeP: *mut A_Time) -> A_Err>,
14810}
14811#[repr(C)]
14812#[derive(Debug, Copy, Clone)]
14813pub struct AEGP_CompSuite3 {
14814    pub AEGP_GetCompFromItem: ::std::option::Option<
14815        unsafe extern "C" fn(itemH: AEGP_ItemH, compPH: *mut AEGP_CompH) -> A_Err,
14816    >,
14817    pub AEGP_GetItemFromComp: ::std::option::Option<
14818        unsafe extern "C" fn(compH: AEGP_CompH, itemPH: *mut AEGP_ItemH) -> A_Err,
14819    >,
14820    pub AEGP_GetCompDownsampleFactor: ::std::option::Option<
14821        unsafe extern "C" fn(compH: AEGP_CompH, dsfP: *mut AEGP_DownsampleFactor) -> A_Err,
14822    >,
14823    pub AEGP_SetCompDownsampleFactor: ::std::option::Option<
14824        unsafe extern "C" fn(compH: AEGP_CompH, dsfP: *const AEGP_DownsampleFactor) -> A_Err,
14825    >,
14826    pub AEGP_GetCompBGColor: ::std::option::Option<
14827        unsafe extern "C" fn(compH: AEGP_CompH, bg_colorP: *mut AEGP_ColorVal) -> A_Err,
14828    >,
14829    pub AEGP_GetCompFlags: ::std::option::Option<
14830        unsafe extern "C" fn(compH: AEGP_CompH, comp_flagsP: *mut AEGP_CompFlags) -> A_Err,
14831    >,
14832    pub AEGP_GetCompFramerate: ::std::option::Option<
14833        unsafe extern "C" fn(compH: AEGP_CompH, fpsPF: *mut A_FpLong) -> A_Err,
14834    >,
14835    pub AEGP_SetCompFrameRate: ::std::option::Option<
14836        unsafe extern "C" fn(compH: AEGP_CompH, fpsPF: *const A_FpLong) -> A_Err,
14837    >,
14838    pub AEGP_GetCompShutterAnglePhase: ::std::option::Option<
14839        unsafe extern "C" fn(compH: AEGP_CompH, angle: *mut A_Ratio, phase: *mut A_Ratio) -> A_Err,
14840    >,
14841    pub AEGP_GetCompShutterFrameRange: ::std::option::Option<
14842        unsafe extern "C" fn(
14843            compH: AEGP_CompH,
14844            comp_timeP: *const A_Time,
14845            start: *mut A_Time,
14846            duration: *mut A_Time,
14847        ) -> A_Err,
14848    >,
14849    pub AEGP_GetCompWorkAreaStart: ::std::option::Option<
14850        unsafe extern "C" fn(compH: AEGP_CompH, work_area_startPT: *mut A_Time) -> A_Err,
14851    >,
14852    pub AEGP_GetCompWorkAreaDuration: ::std::option::Option<
14853        unsafe extern "C" fn(compH: AEGP_CompH, work_area_durationPT: *mut A_Time) -> A_Err,
14854    >,
14855    pub AEGP_SetCompWorkAreaStartAndDuration: ::std::option::Option<
14856        unsafe extern "C" fn(
14857            compH: AEGP_CompH,
14858            work_area_startPT: *mut A_Time,
14859            work_area_durationPT: *mut A_Time,
14860        ) -> A_Err,
14861    >,
14862    pub AEGP_CreateSolidInComp: ::std::option::Option<
14863        unsafe extern "C" fn(
14864            nameZ: *const A_char,
14865            width: A_long,
14866            height: A_long,
14867            color: *const AEGP_ColorVal,
14868            parent_compH: AEGP_CompH,
14869            durationPT0: *const A_Time,
14870            new_solidPH: *mut AEGP_LayerH,
14871        ) -> A_Err,
14872    >,
14873    pub AEGP_CreateCameraInComp: ::std::option::Option<
14874        unsafe extern "C" fn(
14875            nameZ: *const A_char,
14876            center_point: A_FloatPoint,
14877            parent_compH: AEGP_CompH,
14878            new_cameraPH: *mut AEGP_LayerH,
14879        ) -> A_Err,
14880    >,
14881    pub AEGP_CreateLightInComp: ::std::option::Option<
14882        unsafe extern "C" fn(
14883            nameZ: *const A_char,
14884            center_point: A_FloatPoint,
14885            parent_compH: AEGP_CompH,
14886            new_lightPH: *mut AEGP_LayerH,
14887        ) -> A_Err,
14888    >,
14889    pub AEGP_CreateComp: ::std::option::Option<
14890        unsafe extern "C" fn(
14891            parent_folderH0: AEGP_ItemH,
14892            nameZ: *const A_char,
14893            widthL: A_long,
14894            heightL: A_long,
14895            pixel_aspect_ratioPRt: *const A_Ratio,
14896            durationPT: *const A_Time,
14897            frameratePRt: *const A_Ratio,
14898            new_compPH: *mut AEGP_CompH,
14899        ) -> A_Err,
14900    >,
14901    pub AEGP_GetNewCollectionFromCompSelection: ::std::option::Option<
14902        unsafe extern "C" fn(
14903            plugin_id: AEGP_PluginID,
14904            compH: AEGP_CompH,
14905            collectionPH: *mut AEGP_CollectionH,
14906        ) -> A_Err,
14907    >,
14908    pub AEGP_SetSelection: ::std::option::Option<
14909        unsafe extern "C" fn(compH: AEGP_CompH, collectionH: AEGP_CollectionH) -> A_Err,
14910    >,
14911    pub AEGP_GetCompDisplayStartTime: ::std::option::Option<
14912        unsafe extern "C" fn(compH: AEGP_CompH, start_timePT: *mut A_Time) -> A_Err,
14913    >,
14914    pub AEGP_SetCompDisplayStartTime: ::std::option::Option<
14915        unsafe extern "C" fn(compH: AEGP_CompH, start_timePT: *const A_Time) -> A_Err,
14916    >,
14917    pub AEGP_SetCompDuration: ::std::option::Option<
14918        unsafe extern "C" fn(compH: AEGP_CompH, durationPT: *const A_Time) -> A_Err,
14919    >,
14920    pub AEGP_CreateNullInComp: ::std::option::Option<
14921        unsafe extern "C" fn(
14922            nameZ: *const A_char,
14923            parent_compH: AEGP_CompH,
14924            durationPT0: *const A_Time,
14925            new_null_solidPH: *mut AEGP_LayerH,
14926        ) -> A_Err,
14927    >,
14928    pub AEGP_SetCompPixelAspectRatio: ::std::option::Option<
14929        unsafe extern "C" fn(compH: AEGP_CompH, pix_aspectratioPRt: *const A_Ratio) -> A_Err,
14930    >,
14931    pub AEGP_CreateTextLayerInComp: ::std::option::Option<
14932        unsafe extern "C" fn(parent_compH: AEGP_CompH, new_text_layerPH: *mut AEGP_LayerH) -> A_Err,
14933    >,
14934}
14935#[repr(C)]
14936#[derive(Debug, Copy, Clone)]
14937pub struct AEGP_CompSuite2 {
14938    pub AEGP_GetCompFromItem: ::std::option::Option<
14939        unsafe extern "C" fn(itemH: AEGP_ItemH, compPH: *mut AEGP_CompH) -> A_Err,
14940    >,
14941    pub AEGP_GetItemFromComp: ::std::option::Option<
14942        unsafe extern "C" fn(compH: AEGP_CompH, itemPH: *mut AEGP_ItemH) -> A_Err,
14943    >,
14944    pub AEGP_GetCompDownsampleFactor: ::std::option::Option<
14945        unsafe extern "C" fn(compH: AEGP_CompH, dsfP: *mut AEGP_DownsampleFactor) -> A_Err,
14946    >,
14947    pub AEGP_SetCompDownsampleFactor: ::std::option::Option<
14948        unsafe extern "C" fn(compH: AEGP_CompH, dsfP: *const AEGP_DownsampleFactor) -> A_Err,
14949    >,
14950    pub AEGP_GetCompBGColor: ::std::option::Option<
14951        unsafe extern "C" fn(compH: AEGP_CompH, bg_colorP: *mut AEGP_ColorVal) -> A_Err,
14952    >,
14953    pub AEGP_GetCompFlags: ::std::option::Option<
14954        unsafe extern "C" fn(compH: AEGP_CompH, comp_flagsP: *mut AEGP_CompFlags) -> A_Err,
14955    >,
14956    pub AEGP_GetCompFramerate: ::std::option::Option<
14957        unsafe extern "C" fn(compH: AEGP_CompH, fpsPF: *mut A_FpLong) -> A_Err,
14958    >,
14959    pub AEGP_GetCompShutterAnglePhase: ::std::option::Option<
14960        unsafe extern "C" fn(compH: AEGP_CompH, angle: *mut A_Ratio, phase: *mut A_Ratio) -> A_Err,
14961    >,
14962    pub AEGP_GetCompShutterFrameRange: ::std::option::Option<
14963        unsafe extern "C" fn(
14964            compH: AEGP_CompH,
14965            comp_timeP: *const A_Time,
14966            start: *mut A_Time,
14967            duration: *mut A_Time,
14968        ) -> A_Err,
14969    >,
14970    pub AEGP_GetCompWorkAreaStart: ::std::option::Option<
14971        unsafe extern "C" fn(compH: AEGP_CompH, work_area_startPT: *mut A_Time) -> A_Err,
14972    >,
14973    pub AEGP_GetCompWorkAreaDuration: ::std::option::Option<
14974        unsafe extern "C" fn(compH: AEGP_CompH, work_area_durationPT: *mut A_Time) -> A_Err,
14975    >,
14976    pub AEGP_SetCompWorkAreaStartAndDuration: ::std::option::Option<
14977        unsafe extern "C" fn(
14978            compH: AEGP_CompH,
14979            work_area_startPT: *mut A_Time,
14980            work_area_durationPT: *mut A_Time,
14981        ) -> A_Err,
14982    >,
14983    pub AEGP_CreateSolidInComp: ::std::option::Option<
14984        unsafe extern "C" fn(
14985            nameZ: *const A_char,
14986            width: A_long,
14987            height: A_long,
14988            color: *const AEGP_ColorVal,
14989            parent_compH: AEGP_ItemH,
14990            durationPT0: *const A_Time,
14991            new_solidPH: *mut AEGP_LayerH,
14992        ) -> A_Err,
14993    >,
14994    pub AEGP_CreateCameraInComp: ::std::option::Option<
14995        unsafe extern "C" fn(
14996            nameZ: *const A_char,
14997            center_point: A_FloatPoint,
14998            parent_compH: AEGP_ItemH,
14999            new_cameraPH: *mut AEGP_LayerH,
15000        ) -> A_Err,
15001    >,
15002    pub AEGP_CreateLightInComp: ::std::option::Option<
15003        unsafe extern "C" fn(
15004            nameZ: *const A_char,
15005            center_point: A_FloatPoint,
15006            parent_compH: AEGP_ItemH,
15007            new_lightPH: *mut AEGP_LayerH,
15008        ) -> A_Err,
15009    >,
15010    pub AEGP_CreateComp: ::std::option::Option<
15011        unsafe extern "C" fn(
15012            parent_folderH0: AEGP_ItemH,
15013            nameZ: *const A_char,
15014            widthL: A_long,
15015            heightL: A_long,
15016            pixel_aspect_ratioPRt: *const A_Ratio,
15017            durationPT: *const A_Time,
15018            frameratePRt: *const A_Ratio,
15019            new_compPH: *mut AEGP_CompH,
15020        ) -> A_Err,
15021    >,
15022    pub AEGP_GetNewCollectionFromCompSelection: ::std::option::Option<
15023        unsafe extern "C" fn(
15024            plugin_id: AEGP_PluginID,
15025            compH: AEGP_CompH,
15026            collectionPH: *mut AEGP_CollectionH,
15027        ) -> A_Err,
15028    >,
15029    pub AEGP_SetSelection: ::std::option::Option<
15030        unsafe extern "C" fn(compH: AEGP_CompH, collectionH: AEGP_CollectionH) -> A_Err,
15031    >,
15032    pub AEGP_SetCompDisplayStartTime: ::std::option::Option<
15033        unsafe extern "C" fn(compH: AEGP_CompH, start_timePT: *const A_Time) -> A_Err,
15034    >,
15035    pub AEGP_SetCompDuration: ::std::option::Option<
15036        unsafe extern "C" fn(compH: AEGP_CompH, durationPT: *const A_Time) -> A_Err,
15037    >,
15038    pub AEGP_CreateNullInComp: ::std::option::Option<
15039        unsafe extern "C" fn(
15040            nameZ: *const A_char,
15041            parent_compH: AEGP_CompH,
15042            durationPT0: *const A_Time,
15043            new_null_solidPH: *mut AEGP_LayerH,
15044        ) -> A_Err,
15045    >,
15046}
15047#[repr(C)]
15048#[derive(Debug, Copy, Clone)]
15049pub struct AEGP_CompSuite1 {
15050    pub AEGP_GetCompFromItem: ::std::option::Option<
15051        unsafe extern "C" fn(itemH: AEGP_ItemH, compPH: *mut AEGP_CompH) -> A_Err,
15052    >,
15053    pub AEGP_GetItemFromComp: ::std::option::Option<
15054        unsafe extern "C" fn(compH: AEGP_CompH, itemPH: *mut AEGP_ItemH) -> A_Err,
15055    >,
15056    pub AEGP_GetCompDownsampleFactor: ::std::option::Option<
15057        unsafe extern "C" fn(compH: AEGP_CompH, dsfP: *mut AEGP_DownsampleFactor) -> A_Err,
15058    >,
15059    pub AEGP_GetCompBGColor: ::std::option::Option<
15060        unsafe extern "C" fn(compH: AEGP_CompH, bg_colorP: *mut AEGP_ColorVal) -> A_Err,
15061    >,
15062    pub AEGP_GetCompFlags: ::std::option::Option<
15063        unsafe extern "C" fn(compH: AEGP_CompH, comp_flagsP: *mut AEGP_CompFlags) -> A_Err,
15064    >,
15065    pub AEGP_GetCompFramerate: ::std::option::Option<
15066        unsafe extern "C" fn(compH: AEGP_CompH, fpsPF: *mut A_FpLong) -> A_Err,
15067    >,
15068    pub AEGP_GetCompShutterAnglePhase: ::std::option::Option<
15069        unsafe extern "C" fn(compH: AEGP_CompH, angle: *mut A_Ratio, phase: *mut A_Ratio) -> A_Err,
15070    >,
15071    pub AEGP_GetCompShutterFrameRange: ::std::option::Option<
15072        unsafe extern "C" fn(
15073            compH: AEGP_CompH,
15074            comp_timeP: *const A_Time,
15075            start: *mut A_Time,
15076            duration: *mut A_Time,
15077        ) -> A_Err,
15078    >,
15079    pub AEGP_GetCompWorkAreaStart: ::std::option::Option<
15080        unsafe extern "C" fn(compH: AEGP_CompH, work_area_startPT: *mut A_Time) -> A_Err,
15081    >,
15082    pub AEGP_GetCompWorkAreaDuration: ::std::option::Option<
15083        unsafe extern "C" fn(compH: AEGP_CompH, work_area_durationPT: *mut A_Time) -> A_Err,
15084    >,
15085    pub AEGP_SetCompWorkAreaStartAndDuration: ::std::option::Option<
15086        unsafe extern "C" fn(
15087            compH: AEGP_CompH,
15088            work_area_startPT: *mut A_Time,
15089            work_area_durationPT: *mut A_Time,
15090        ) -> A_Err,
15091    >,
15092    pub AEGP_CreateSolidInComp: ::std::option::Option<
15093        unsafe extern "C" fn(
15094            nameZ: *const A_char,
15095            width: A_long,
15096            height: A_long,
15097            color: *const AEGP_ColorVal,
15098            parent_compH: AEGP_ItemH,
15099            new_solidPH: *mut AEGP_LayerH,
15100        ) -> A_Err,
15101    >,
15102    pub AEGP_CreateComp: ::std::option::Option<
15103        unsafe extern "C" fn(
15104            parent_folderH0: AEGP_ItemH,
15105            nameZ: *const A_char,
15106            widthL: A_long,
15107            heightL: A_long,
15108            pixel_aspect_ratioPRt: *const A_Ratio,
15109            durationPT: *const A_Time,
15110            frameratePRt: *const A_Ratio,
15111            new_compPH: *mut AEGP_ItemH,
15112        ) -> A_Err,
15113    >,
15114    pub AEGP_GetNewCollectionFromCompSelection: ::std::option::Option<
15115        unsafe extern "C" fn(
15116            plugin_id: AEGP_PluginID,
15117            compH: AEGP_CompH,
15118            collectionPH: *mut AEGP_CollectionH,
15119        ) -> A_Err,
15120    >,
15121    pub AEGP_SetSelection: ::std::option::Option<
15122        unsafe extern "C" fn(compH: AEGP_CompH, collectionH: AEGP_CollectionH) -> A_Err,
15123    >,
15124    pub AEGP_SetCompDisplayStartTime: ::std::option::Option<
15125        unsafe extern "C" fn(compH: AEGP_CompH, start_timePT: *const A_Time) -> A_Err,
15126    >,
15127    pub AEGP_SetCompDuration: ::std::option::Option<
15128        unsafe extern "C" fn(compH: AEGP_CompH, durationPT: *const A_Time) -> A_Err,
15129    >,
15130}
15131#[repr(C)]
15132#[derive(Debug, Copy, Clone)]
15133pub struct AEGP_LayerSuite8 {
15134    pub AEGP_GetCompNumLayers: ::std::option::Option<
15135        unsafe extern "C" fn(compH: AEGP_CompH, num_layersPL: *mut A_long) -> A_Err,
15136    >,
15137    pub AEGP_GetCompLayerByIndex: ::std::option::Option<
15138        unsafe extern "C" fn(
15139            compH: AEGP_CompH,
15140            layer_indexL: A_long,
15141            layerPH: *mut AEGP_LayerH,
15142        ) -> A_Err,
15143    >,
15144    pub AEGP_GetActiveLayer:
15145        ::std::option::Option<unsafe extern "C" fn(layerPH: *mut AEGP_LayerH) -> A_Err>,
15146    pub AEGP_GetLayerIndex: ::std::option::Option<
15147        unsafe extern "C" fn(layerH: AEGP_LayerH, layer_indexPL: *mut A_long) -> A_Err,
15148    >,
15149    pub AEGP_GetLayerSourceItem: ::std::option::Option<
15150        unsafe extern "C" fn(layerH: AEGP_LayerH, source_itemPH: *mut AEGP_ItemH) -> A_Err,
15151    >,
15152    pub AEGP_GetLayerSourceItemID: ::std::option::Option<
15153        unsafe extern "C" fn(layerH: AEGP_LayerH, source_item_idPL: *mut A_long) -> A_Err,
15154    >,
15155    pub AEGP_GetLayerParentComp: ::std::option::Option<
15156        unsafe extern "C" fn(layerH: AEGP_LayerH, compPH: *mut AEGP_CompH) -> A_Err,
15157    >,
15158    pub AEGP_GetLayerName: ::std::option::Option<
15159        unsafe extern "C" fn(
15160            pluginID: AEGP_PluginID,
15161            layerH: AEGP_LayerH,
15162            utf_layer_namePH0: *mut AEGP_MemHandle,
15163            utf_source_namePH0: *mut AEGP_MemHandle,
15164        ) -> A_Err,
15165    >,
15166    pub AEGP_GetLayerQuality: ::std::option::Option<
15167        unsafe extern "C" fn(layerH: AEGP_LayerH, qualityP: *mut AEGP_LayerQuality) -> A_Err,
15168    >,
15169    pub AEGP_SetLayerQuality: ::std::option::Option<
15170        unsafe extern "C" fn(layerH: AEGP_LayerH, quality: AEGP_LayerQuality) -> A_Err,
15171    >,
15172    pub AEGP_GetLayerFlags: ::std::option::Option<
15173        unsafe extern "C" fn(layerH: AEGP_LayerH, layer_flagsP: *mut AEGP_LayerFlags) -> A_Err,
15174    >,
15175    pub AEGP_SetLayerFlag: ::std::option::Option<
15176        unsafe extern "C" fn(
15177            layerH: AEGP_LayerH,
15178            single_flag: AEGP_LayerFlags,
15179            valueB: A_Boolean,
15180        ) -> A_Err,
15181    >,
15182    pub AEGP_IsLayerVideoReallyOn: ::std::option::Option<
15183        unsafe extern "C" fn(layerH: AEGP_LayerH, onPB: *mut A_Boolean) -> A_Err,
15184    >,
15185    pub AEGP_IsLayerAudioReallyOn: ::std::option::Option<
15186        unsafe extern "C" fn(layerH: AEGP_LayerH, onPB: *mut A_Boolean) -> A_Err,
15187    >,
15188    pub AEGP_GetLayerCurrentTime: ::std::option::Option<
15189        unsafe extern "C" fn(
15190            layerH: AEGP_LayerH,
15191            time_mode: AEGP_LTimeMode,
15192            curr_timePT: *mut A_Time,
15193        ) -> A_Err,
15194    >,
15195    pub AEGP_GetLayerInPoint: ::std::option::Option<
15196        unsafe extern "C" fn(
15197            layerH: AEGP_LayerH,
15198            time_mode: AEGP_LTimeMode,
15199            in_pointPT: *mut A_Time,
15200        ) -> A_Err,
15201    >,
15202    pub AEGP_GetLayerDuration: ::std::option::Option<
15203        unsafe extern "C" fn(
15204            layerH: AEGP_LayerH,
15205            time_mode: AEGP_LTimeMode,
15206            durationPT: *mut A_Time,
15207        ) -> A_Err,
15208    >,
15209    pub AEGP_SetLayerInPointAndDuration: ::std::option::Option<
15210        unsafe extern "C" fn(
15211            layerH: AEGP_LayerH,
15212            time_mode: AEGP_LTimeMode,
15213            in_pointPT: *const A_Time,
15214            durationPT: *const A_Time,
15215        ) -> A_Err,
15216    >,
15217    pub AEGP_GetLayerOffset: ::std::option::Option<
15218        unsafe extern "C" fn(layerH: AEGP_LayerH, offsetPT: *mut A_Time) -> A_Err,
15219    >,
15220    pub AEGP_SetLayerOffset: ::std::option::Option<
15221        unsafe extern "C" fn(layerH: AEGP_LayerH, offsetPT: *const A_Time) -> A_Err,
15222    >,
15223    pub AEGP_GetLayerStretch: ::std::option::Option<
15224        unsafe extern "C" fn(layerH: AEGP_LayerH, stretchPRt: *mut A_Ratio) -> A_Err,
15225    >,
15226    pub AEGP_SetLayerStretch: ::std::option::Option<
15227        unsafe extern "C" fn(layerH: AEGP_LayerH, stretchPRt: *const A_Ratio) -> A_Err,
15228    >,
15229    pub AEGP_GetLayerTransferMode: ::std::option::Option<
15230        unsafe extern "C" fn(
15231            layerH: AEGP_LayerH,
15232            transfer_modeP: *mut AEGP_LayerTransferMode,
15233        ) -> A_Err,
15234    >,
15235    pub AEGP_SetLayerTransferMode: ::std::option::Option<
15236        unsafe extern "C" fn(
15237            layerH: AEGP_LayerH,
15238            transfer_modeP: *const AEGP_LayerTransferMode,
15239        ) -> A_Err,
15240    >,
15241    pub AEGP_IsAddLayerValid: ::std::option::Option<
15242        unsafe extern "C" fn(
15243            item_to_addH: AEGP_ItemH,
15244            into_compH: AEGP_CompH,
15245            validPB: *mut A_Boolean,
15246        ) -> A_Err,
15247    >,
15248    pub AEGP_AddLayer: ::std::option::Option<
15249        unsafe extern "C" fn(
15250            item_to_addH: AEGP_ItemH,
15251            into_compH: AEGP_CompH,
15252            added_layerPH0: *mut AEGP_LayerH,
15253        ) -> A_Err,
15254    >,
15255    pub AEGP_ReorderLayer: ::std::option::Option<
15256        unsafe extern "C" fn(layerH: AEGP_LayerH, layer_indexL: A_long) -> A_Err,
15257    >,
15258    pub AEGP_GetLayerMaskedBounds: ::std::option::Option<
15259        unsafe extern "C" fn(
15260            layerH: AEGP_LayerH,
15261            time_mode: AEGP_LTimeMode,
15262            timePT: *const A_Time,
15263            boundsPR: *mut A_FloatRect,
15264        ) -> A_Err,
15265    >,
15266    pub AEGP_GetLayerObjectType: ::std::option::Option<
15267        unsafe extern "C" fn(layerH: AEGP_LayerH, object_type: *mut AEGP_ObjectType) -> A_Err,
15268    >,
15269    pub AEGP_IsLayer3D: ::std::option::Option<
15270        unsafe extern "C" fn(layerH: AEGP_LayerH, is_3DPB: *mut A_Boolean) -> A_Err,
15271    >,
15272    pub AEGP_IsLayer2D: ::std::option::Option<
15273        unsafe extern "C" fn(layerH: AEGP_LayerH, is_2DPB: *mut A_Boolean) -> A_Err,
15274    >,
15275    pub AEGP_IsVideoActive: ::std::option::Option<
15276        unsafe extern "C" fn(
15277            layerH: AEGP_LayerH,
15278            time_mode: AEGP_LTimeMode,
15279            timePT: *const A_Time,
15280            is_activePB: *mut A_Boolean,
15281        ) -> A_Err,
15282    >,
15283    pub AEGP_IsLayerUsedAsTrackMatte: ::std::option::Option<
15284        unsafe extern "C" fn(
15285            layerH: AEGP_LayerH,
15286            fill_must_be_activeB: A_Boolean,
15287            is_track_mattePB: *mut A_Boolean,
15288        ) -> A_Err,
15289    >,
15290    pub AEGP_DoesLayerHaveTrackMatte: ::std::option::Option<
15291        unsafe extern "C" fn(layerH: AEGP_LayerH, has_track_mattePB: *mut A_Boolean) -> A_Err,
15292    >,
15293    pub AEGP_ConvertCompToLayerTime: ::std::option::Option<
15294        unsafe extern "C" fn(
15295            layerH: AEGP_LayerH,
15296            comp_timePT: *const A_Time,
15297            layer_timePT: *mut A_Time,
15298        ) -> A_Err,
15299    >,
15300    pub AEGP_ConvertLayerToCompTime: ::std::option::Option<
15301        unsafe extern "C" fn(
15302            layerH: AEGP_LayerH,
15303            layer_timePT: *const A_Time,
15304            comp_timePT: *mut A_Time,
15305        ) -> A_Err,
15306    >,
15307    pub AEGP_GetLayerDancingRandValue: ::std::option::Option<
15308        unsafe extern "C" fn(
15309            layerH: AEGP_LayerH,
15310            comp_timePT: *const A_Time,
15311            rand_valuePL: *mut A_long,
15312        ) -> A_Err,
15313    >,
15314    pub AEGP_GetLayerID: ::std::option::Option<
15315        unsafe extern "C" fn(layerH: AEGP_LayerH, id_valP: *mut AEGP_LayerIDVal) -> A_Err,
15316    >,
15317    pub AEGP_GetLayerToWorldXform: ::std::option::Option<
15318        unsafe extern "C" fn(
15319            aegp_layerH: AEGP_LayerH,
15320            comp_timeP: *const A_Time,
15321            transform: *mut A_Matrix4,
15322        ) -> A_Err,
15323    >,
15324    pub AEGP_GetLayerToWorldXformFromView: ::std::option::Option<
15325        unsafe extern "C" fn(
15326            aegp_layerH: AEGP_LayerH,
15327            view_timeP: *const A_Time,
15328            comp_timeP: *const A_Time,
15329            transform: *mut A_Matrix4,
15330        ) -> A_Err,
15331    >,
15332    pub AEGP_SetLayerName: ::std::option::Option<
15333        unsafe extern "C" fn(aegp_layerH: AEGP_LayerH, new_nameZ: *const A_UTF16Char) -> A_Err,
15334    >,
15335    pub AEGP_GetLayerParent: ::std::option::Option<
15336        unsafe extern "C" fn(layerH: AEGP_LayerH, parent_layerPH: *mut AEGP_LayerH) -> A_Err,
15337    >,
15338    pub AEGP_SetLayerParent: ::std::option::Option<
15339        unsafe extern "C" fn(layerH: AEGP_LayerH, parent_layerH0: AEGP_LayerH) -> A_Err,
15340    >,
15341    pub AEGP_DeleteLayer: ::std::option::Option<unsafe extern "C" fn(layerH: AEGP_LayerH) -> A_Err>,
15342    pub AEGP_DuplicateLayer: ::std::option::Option<
15343        unsafe extern "C" fn(
15344            orig_layerH: AEGP_LayerH,
15345            duplicate_layerPH: *mut AEGP_LayerH,
15346        ) -> A_Err,
15347    >,
15348    pub AEGP_GetLayerFromLayerID: ::std::option::Option<
15349        unsafe extern "C" fn(
15350            parent_compH: AEGP_CompH,
15351            id: AEGP_LayerIDVal,
15352            layerPH: *mut AEGP_LayerH,
15353        ) -> A_Err,
15354    >,
15355    pub AEGP_GetLayerLabel: ::std::option::Option<
15356        unsafe extern "C" fn(layerH: AEGP_LayerH, labelP: *mut AEGP_LabelID) -> A_Err,
15357    >,
15358    pub AEGP_SetLayerLabel: ::std::option::Option<
15359        unsafe extern "C" fn(layerH: AEGP_LayerH, label: AEGP_LabelID) -> A_Err,
15360    >,
15361    pub AEGP_GetLayerSamplingQuality: ::std::option::Option<
15362        unsafe extern "C" fn(
15363            layerH: AEGP_LayerH,
15364            qualityP: *mut AEGP_LayerSamplingQuality,
15365        ) -> A_Err,
15366    >,
15367    pub AEGP_SetLayerSamplingQuality: ::std::option::Option<
15368        unsafe extern "C" fn(layerH: AEGP_LayerH, quality: AEGP_LayerSamplingQuality) -> A_Err,
15369    >,
15370}
15371#[repr(C)]
15372#[derive(Debug, Copy, Clone)]
15373pub struct AEGP_LayerSuite7 {
15374    pub AEGP_GetCompNumLayers: ::std::option::Option<
15375        unsafe extern "C" fn(compH: AEGP_CompH, num_layersPL: *mut A_long) -> A_Err,
15376    >,
15377    pub AEGP_GetCompLayerByIndex: ::std::option::Option<
15378        unsafe extern "C" fn(
15379            compH: AEGP_CompH,
15380            layer_indexL: A_long,
15381            layerPH: *mut AEGP_LayerH,
15382        ) -> A_Err,
15383    >,
15384    pub AEGP_GetActiveLayer:
15385        ::std::option::Option<unsafe extern "C" fn(layerPH: *mut AEGP_LayerH) -> A_Err>,
15386    pub AEGP_GetLayerIndex: ::std::option::Option<
15387        unsafe extern "C" fn(layerH: AEGP_LayerH, layer_indexPL: *mut A_long) -> A_Err,
15388    >,
15389    pub AEGP_GetLayerSourceItem: ::std::option::Option<
15390        unsafe extern "C" fn(layerH: AEGP_LayerH, source_itemPH: *mut AEGP_ItemH) -> A_Err,
15391    >,
15392    pub AEGP_GetLayerSourceItemID: ::std::option::Option<
15393        unsafe extern "C" fn(layerH: AEGP_LayerH, source_item_idPL: *mut A_long) -> A_Err,
15394    >,
15395    pub AEGP_GetLayerParentComp: ::std::option::Option<
15396        unsafe extern "C" fn(layerH: AEGP_LayerH, compPH: *mut AEGP_CompH) -> A_Err,
15397    >,
15398    pub AEGP_GetLayerName: ::std::option::Option<
15399        unsafe extern "C" fn(
15400            pluginID: AEGP_PluginID,
15401            layerH: AEGP_LayerH,
15402            utf_layer_namePH0: *mut AEGP_MemHandle,
15403            utf_source_namePH0: *mut AEGP_MemHandle,
15404        ) -> A_Err,
15405    >,
15406    pub AEGP_GetLayerQuality: ::std::option::Option<
15407        unsafe extern "C" fn(layerH: AEGP_LayerH, qualityP: *mut AEGP_LayerQuality) -> A_Err,
15408    >,
15409    pub AEGP_SetLayerQuality: ::std::option::Option<
15410        unsafe extern "C" fn(layerH: AEGP_LayerH, quality: AEGP_LayerQuality) -> A_Err,
15411    >,
15412    pub AEGP_GetLayerFlags: ::std::option::Option<
15413        unsafe extern "C" fn(layerH: AEGP_LayerH, layer_flagsP: *mut AEGP_LayerFlags) -> A_Err,
15414    >,
15415    pub AEGP_SetLayerFlag: ::std::option::Option<
15416        unsafe extern "C" fn(
15417            layerH: AEGP_LayerH,
15418            single_flag: AEGP_LayerFlags,
15419            valueB: A_Boolean,
15420        ) -> A_Err,
15421    >,
15422    pub AEGP_IsLayerVideoReallyOn: ::std::option::Option<
15423        unsafe extern "C" fn(layerH: AEGP_LayerH, onPB: *mut A_Boolean) -> A_Err,
15424    >,
15425    pub AEGP_IsLayerAudioReallyOn: ::std::option::Option<
15426        unsafe extern "C" fn(layerH: AEGP_LayerH, onPB: *mut A_Boolean) -> A_Err,
15427    >,
15428    pub AEGP_GetLayerCurrentTime: ::std::option::Option<
15429        unsafe extern "C" fn(
15430            layerH: AEGP_LayerH,
15431            time_mode: AEGP_LTimeMode,
15432            curr_timePT: *mut A_Time,
15433        ) -> A_Err,
15434    >,
15435    pub AEGP_GetLayerInPoint: ::std::option::Option<
15436        unsafe extern "C" fn(
15437            layerH: AEGP_LayerH,
15438            time_mode: AEGP_LTimeMode,
15439            in_pointPT: *mut A_Time,
15440        ) -> A_Err,
15441    >,
15442    pub AEGP_GetLayerDuration: ::std::option::Option<
15443        unsafe extern "C" fn(
15444            layerH: AEGP_LayerH,
15445            time_mode: AEGP_LTimeMode,
15446            durationPT: *mut A_Time,
15447        ) -> A_Err,
15448    >,
15449    pub AEGP_SetLayerInPointAndDuration: ::std::option::Option<
15450        unsafe extern "C" fn(
15451            layerH: AEGP_LayerH,
15452            time_mode: AEGP_LTimeMode,
15453            in_pointPT: *const A_Time,
15454            durationPT: *const A_Time,
15455        ) -> A_Err,
15456    >,
15457    pub AEGP_GetLayerOffset: ::std::option::Option<
15458        unsafe extern "C" fn(layerH: AEGP_LayerH, offsetPT: *mut A_Time) -> A_Err,
15459    >,
15460    pub AEGP_SetLayerOffset: ::std::option::Option<
15461        unsafe extern "C" fn(layerH: AEGP_LayerH, offsetPT: *const A_Time) -> A_Err,
15462    >,
15463    pub AEGP_GetLayerStretch: ::std::option::Option<
15464        unsafe extern "C" fn(layerH: AEGP_LayerH, stretchPRt: *mut A_Ratio) -> A_Err,
15465    >,
15466    pub AEGP_SetLayerStretch: ::std::option::Option<
15467        unsafe extern "C" fn(layerH: AEGP_LayerH, stretchPRt: *const A_Ratio) -> A_Err,
15468    >,
15469    pub AEGP_GetLayerTransferMode: ::std::option::Option<
15470        unsafe extern "C" fn(
15471            layerH: AEGP_LayerH,
15472            transfer_modeP: *mut AEGP_LayerTransferMode,
15473        ) -> A_Err,
15474    >,
15475    pub AEGP_SetLayerTransferMode: ::std::option::Option<
15476        unsafe extern "C" fn(
15477            layerH: AEGP_LayerH,
15478            transfer_modeP: *const AEGP_LayerTransferMode,
15479        ) -> A_Err,
15480    >,
15481    pub AEGP_IsAddLayerValid: ::std::option::Option<
15482        unsafe extern "C" fn(
15483            item_to_addH: AEGP_ItemH,
15484            into_compH: AEGP_CompH,
15485            validPB: *mut A_Boolean,
15486        ) -> A_Err,
15487    >,
15488    pub AEGP_AddLayer: ::std::option::Option<
15489        unsafe extern "C" fn(
15490            item_to_addH: AEGP_ItemH,
15491            into_compH: AEGP_CompH,
15492            added_layerPH0: *mut AEGP_LayerH,
15493        ) -> A_Err,
15494    >,
15495    pub AEGP_ReorderLayer: ::std::option::Option<
15496        unsafe extern "C" fn(layerH: AEGP_LayerH, layer_indexL: A_long) -> A_Err,
15497    >,
15498    pub AEGP_GetLayerMaskedBounds: ::std::option::Option<
15499        unsafe extern "C" fn(
15500            layerH: AEGP_LayerH,
15501            time_mode: AEGP_LTimeMode,
15502            timePT: *const A_Time,
15503            boundsPR: *mut A_FloatRect,
15504        ) -> A_Err,
15505    >,
15506    pub AEGP_GetLayerObjectType: ::std::option::Option<
15507        unsafe extern "C" fn(layerH: AEGP_LayerH, object_type: *mut AEGP_ObjectType) -> A_Err,
15508    >,
15509    pub AEGP_IsLayer3D: ::std::option::Option<
15510        unsafe extern "C" fn(layerH: AEGP_LayerH, is_3DPB: *mut A_Boolean) -> A_Err,
15511    >,
15512    pub AEGP_IsLayer2D: ::std::option::Option<
15513        unsafe extern "C" fn(layerH: AEGP_LayerH, is_2DPB: *mut A_Boolean) -> A_Err,
15514    >,
15515    pub AEGP_IsVideoActive: ::std::option::Option<
15516        unsafe extern "C" fn(
15517            layerH: AEGP_LayerH,
15518            time_mode: AEGP_LTimeMode,
15519            timePT: *const A_Time,
15520            is_activePB: *mut A_Boolean,
15521        ) -> A_Err,
15522    >,
15523    pub AEGP_IsLayerUsedAsTrackMatte: ::std::option::Option<
15524        unsafe extern "C" fn(
15525            layerH: AEGP_LayerH,
15526            fill_must_be_activeB: A_Boolean,
15527            is_track_mattePB: *mut A_Boolean,
15528        ) -> A_Err,
15529    >,
15530    pub AEGP_DoesLayerHaveTrackMatte: ::std::option::Option<
15531        unsafe extern "C" fn(layerH: AEGP_LayerH, has_track_mattePB: *mut A_Boolean) -> A_Err,
15532    >,
15533    pub AEGP_ConvertCompToLayerTime: ::std::option::Option<
15534        unsafe extern "C" fn(
15535            layerH: AEGP_LayerH,
15536            comp_timePT: *const A_Time,
15537            layer_timePT: *mut A_Time,
15538        ) -> A_Err,
15539    >,
15540    pub AEGP_ConvertLayerToCompTime: ::std::option::Option<
15541        unsafe extern "C" fn(
15542            layerH: AEGP_LayerH,
15543            layer_timePT: *const A_Time,
15544            comp_timePT: *mut A_Time,
15545        ) -> A_Err,
15546    >,
15547    pub AEGP_GetLayerDancingRandValue: ::std::option::Option<
15548        unsafe extern "C" fn(
15549            layerH: AEGP_LayerH,
15550            comp_timePT: *const A_Time,
15551            rand_valuePL: *mut A_long,
15552        ) -> A_Err,
15553    >,
15554    pub AEGP_GetLayerID: ::std::option::Option<
15555        unsafe extern "C" fn(layerH: AEGP_LayerH, id_valP: *mut AEGP_LayerIDVal) -> A_Err,
15556    >,
15557    pub AEGP_GetLayerToWorldXform: ::std::option::Option<
15558        unsafe extern "C" fn(
15559            aegp_layerH: AEGP_LayerH,
15560            comp_timeP: *const A_Time,
15561            transform: *mut A_Matrix4,
15562        ) -> A_Err,
15563    >,
15564    pub AEGP_GetLayerToWorldXformFromView: ::std::option::Option<
15565        unsafe extern "C" fn(
15566            aegp_layerH: AEGP_LayerH,
15567            view_timeP: *const A_Time,
15568            comp_timeP: *const A_Time,
15569            transform: *mut A_Matrix4,
15570        ) -> A_Err,
15571    >,
15572    pub AEGP_SetLayerName: ::std::option::Option<
15573        unsafe extern "C" fn(aegp_layerH: AEGP_LayerH, new_nameZ: *const A_UTF16Char) -> A_Err,
15574    >,
15575    pub AEGP_GetLayerParent: ::std::option::Option<
15576        unsafe extern "C" fn(layerH: AEGP_LayerH, parent_layerPH: *mut AEGP_LayerH) -> A_Err,
15577    >,
15578    pub AEGP_SetLayerParent: ::std::option::Option<
15579        unsafe extern "C" fn(layerH: AEGP_LayerH, parent_layerH0: AEGP_LayerH) -> A_Err,
15580    >,
15581    pub AEGP_DeleteLayer: ::std::option::Option<unsafe extern "C" fn(layerH: AEGP_LayerH) -> A_Err>,
15582    pub AEGP_DuplicateLayer: ::std::option::Option<
15583        unsafe extern "C" fn(
15584            orig_layerH: AEGP_LayerH,
15585            duplicate_layerPH: *mut AEGP_LayerH,
15586        ) -> A_Err,
15587    >,
15588    pub AEGP_GetLayerFromLayerID: ::std::option::Option<
15589        unsafe extern "C" fn(
15590            parent_compH: AEGP_CompH,
15591            id: AEGP_LayerIDVal,
15592            layerPH: *mut AEGP_LayerH,
15593        ) -> A_Err,
15594    >,
15595    pub AEGP_GetLayerLabel: ::std::option::Option<
15596        unsafe extern "C" fn(layerH: AEGP_LayerH, labelP: *mut AEGP_LabelID) -> A_Err,
15597    >,
15598    pub AEGP_SetLayerLabel: ::std::option::Option<
15599        unsafe extern "C" fn(layerH: AEGP_LayerH, label: AEGP_LabelID) -> A_Err,
15600    >,
15601}
15602#[repr(C)]
15603#[derive(Debug, Copy, Clone)]
15604pub struct AEGP_LayerSuite6 {
15605    pub AEGP_GetCompNumLayers: ::std::option::Option<
15606        unsafe extern "C" fn(compH: AEGP_CompH, num_layersPL: *mut A_long) -> A_Err,
15607    >,
15608    pub AEGP_GetCompLayerByIndex: ::std::option::Option<
15609        unsafe extern "C" fn(
15610            compH: AEGP_CompH,
15611            layer_indexL: A_long,
15612            layerPH: *mut AEGP_LayerH,
15613        ) -> A_Err,
15614    >,
15615    pub AEGP_GetActiveLayer:
15616        ::std::option::Option<unsafe extern "C" fn(layerPH: *mut AEGP_LayerH) -> A_Err>,
15617    pub AEGP_GetLayerIndex: ::std::option::Option<
15618        unsafe extern "C" fn(layerH: AEGP_LayerH, layer_indexPL: *mut A_long) -> A_Err,
15619    >,
15620    pub AEGP_GetLayerSourceItem: ::std::option::Option<
15621        unsafe extern "C" fn(layerH: AEGP_LayerH, source_itemPH: *mut AEGP_ItemH) -> A_Err,
15622    >,
15623    pub AEGP_GetLayerSourceItemID: ::std::option::Option<
15624        unsafe extern "C" fn(layerH: AEGP_LayerH, source_item_idPL: *mut A_long) -> A_Err,
15625    >,
15626    pub AEGP_GetLayerParentComp: ::std::option::Option<
15627        unsafe extern "C" fn(layerH: AEGP_LayerH, compPH: *mut AEGP_CompH) -> A_Err,
15628    >,
15629    pub AEGP_GetLayerName: ::std::option::Option<
15630        unsafe extern "C" fn(
15631            pluginID: AEGP_PluginID,
15632            layerH: AEGP_LayerH,
15633            utf_layer_namePH0: *mut AEGP_MemHandle,
15634            utf_source_namePH0: *mut AEGP_MemHandle,
15635        ) -> A_Err,
15636    >,
15637    pub AEGP_GetLayerQuality: ::std::option::Option<
15638        unsafe extern "C" fn(layerH: AEGP_LayerH, qualityP: *mut AEGP_LayerQuality) -> A_Err,
15639    >,
15640    pub AEGP_SetLayerQuality: ::std::option::Option<
15641        unsafe extern "C" fn(layerH: AEGP_LayerH, quality: AEGP_LayerQuality) -> A_Err,
15642    >,
15643    pub AEGP_GetLayerFlags: ::std::option::Option<
15644        unsafe extern "C" fn(layerH: AEGP_LayerH, layer_flagsP: *mut AEGP_LayerFlags) -> A_Err,
15645    >,
15646    pub AEGP_SetLayerFlag: ::std::option::Option<
15647        unsafe extern "C" fn(
15648            layerH: AEGP_LayerH,
15649            single_flag: AEGP_LayerFlags,
15650            valueB: A_Boolean,
15651        ) -> A_Err,
15652    >,
15653    pub AEGP_IsLayerVideoReallyOn: ::std::option::Option<
15654        unsafe extern "C" fn(layerH: AEGP_LayerH, onPB: *mut A_Boolean) -> A_Err,
15655    >,
15656    pub AEGP_IsLayerAudioReallyOn: ::std::option::Option<
15657        unsafe extern "C" fn(layerH: AEGP_LayerH, onPB: *mut A_Boolean) -> A_Err,
15658    >,
15659    pub AEGP_GetLayerCurrentTime: ::std::option::Option<
15660        unsafe extern "C" fn(
15661            layerH: AEGP_LayerH,
15662            time_mode: AEGP_LTimeMode,
15663            curr_timePT: *mut A_Time,
15664        ) -> A_Err,
15665    >,
15666    pub AEGP_GetLayerInPoint: ::std::option::Option<
15667        unsafe extern "C" fn(
15668            layerH: AEGP_LayerH,
15669            time_mode: AEGP_LTimeMode,
15670            in_pointPT: *mut A_Time,
15671        ) -> A_Err,
15672    >,
15673    pub AEGP_GetLayerDuration: ::std::option::Option<
15674        unsafe extern "C" fn(
15675            layerH: AEGP_LayerH,
15676            time_mode: AEGP_LTimeMode,
15677            durationPT: *mut A_Time,
15678        ) -> A_Err,
15679    >,
15680    pub AEGP_SetLayerInPointAndDuration: ::std::option::Option<
15681        unsafe extern "C" fn(
15682            layerH: AEGP_LayerH,
15683            time_mode: AEGP_LTimeMode,
15684            in_pointPT: *const A_Time,
15685            durationPT: *const A_Time,
15686        ) -> A_Err,
15687    >,
15688    pub AEGP_GetLayerOffset: ::std::option::Option<
15689        unsafe extern "C" fn(layerH: AEGP_LayerH, offsetPT: *mut A_Time) -> A_Err,
15690    >,
15691    pub AEGP_SetLayerOffset: ::std::option::Option<
15692        unsafe extern "C" fn(layerH: AEGP_LayerH, offsetPT: *const A_Time) -> A_Err,
15693    >,
15694    pub AEGP_GetLayerStretch: ::std::option::Option<
15695        unsafe extern "C" fn(layerH: AEGP_LayerH, stretchPRt: *mut A_Ratio) -> A_Err,
15696    >,
15697    pub AEGP_SetLayerStretch: ::std::option::Option<
15698        unsafe extern "C" fn(layerH: AEGP_LayerH, stretchPRt: *const A_Ratio) -> A_Err,
15699    >,
15700    pub AEGP_GetLayerTransferMode: ::std::option::Option<
15701        unsafe extern "C" fn(
15702            layerH: AEGP_LayerH,
15703            transfer_modeP: *mut AEGP_LayerTransferMode,
15704        ) -> A_Err,
15705    >,
15706    pub AEGP_SetLayerTransferMode: ::std::option::Option<
15707        unsafe extern "C" fn(
15708            layerH: AEGP_LayerH,
15709            transfer_modeP: *const AEGP_LayerTransferMode,
15710        ) -> A_Err,
15711    >,
15712    pub AEGP_IsAddLayerValid: ::std::option::Option<
15713        unsafe extern "C" fn(
15714            item_to_addH: AEGP_ItemH,
15715            into_compH: AEGP_CompH,
15716            validPB: *mut A_Boolean,
15717        ) -> A_Err,
15718    >,
15719    pub AEGP_AddLayer: ::std::option::Option<
15720        unsafe extern "C" fn(
15721            item_to_addH: AEGP_ItemH,
15722            into_compH: AEGP_CompH,
15723            added_layerPH0: *mut AEGP_LayerH,
15724        ) -> A_Err,
15725    >,
15726    pub AEGP_ReorderLayer: ::std::option::Option<
15727        unsafe extern "C" fn(layerH: AEGP_LayerH, layer_indexL: A_long) -> A_Err,
15728    >,
15729    pub AEGP_GetLayerMaskedBounds: ::std::option::Option<
15730        unsafe extern "C" fn(
15731            layerH: AEGP_LayerH,
15732            time_mode: AEGP_LTimeMode,
15733            timePT: *const A_Time,
15734            boundsPR: *mut A_FloatRect,
15735        ) -> A_Err,
15736    >,
15737    pub AEGP_GetLayerObjectType: ::std::option::Option<
15738        unsafe extern "C" fn(layerH: AEGP_LayerH, object_type: *mut AEGP_ObjectType) -> A_Err,
15739    >,
15740    pub AEGP_IsLayer3D: ::std::option::Option<
15741        unsafe extern "C" fn(layerH: AEGP_LayerH, is_3DPB: *mut A_Boolean) -> A_Err,
15742    >,
15743    pub AEGP_IsLayer2D: ::std::option::Option<
15744        unsafe extern "C" fn(layerH: AEGP_LayerH, is_2DPB: *mut A_Boolean) -> A_Err,
15745    >,
15746    pub AEGP_IsVideoActive: ::std::option::Option<
15747        unsafe extern "C" fn(
15748            layerH: AEGP_LayerH,
15749            time_mode: AEGP_LTimeMode,
15750            timePT: *const A_Time,
15751            is_activePB: *mut A_Boolean,
15752        ) -> A_Err,
15753    >,
15754    pub AEGP_IsLayerUsedAsTrackMatte: ::std::option::Option<
15755        unsafe extern "C" fn(
15756            layerH: AEGP_LayerH,
15757            fill_must_be_activeB: A_Boolean,
15758            is_track_mattePB: *mut A_Boolean,
15759        ) -> A_Err,
15760    >,
15761    pub AEGP_DoesLayerHaveTrackMatte: ::std::option::Option<
15762        unsafe extern "C" fn(layerH: AEGP_LayerH, has_track_mattePB: *mut A_Boolean) -> A_Err,
15763    >,
15764    pub AEGP_ConvertCompToLayerTime: ::std::option::Option<
15765        unsafe extern "C" fn(
15766            layerH: AEGP_LayerH,
15767            comp_timePT: *const A_Time,
15768            layer_timePT: *mut A_Time,
15769        ) -> A_Err,
15770    >,
15771    pub AEGP_ConvertLayerToCompTime: ::std::option::Option<
15772        unsafe extern "C" fn(
15773            layerH: AEGP_LayerH,
15774            layer_timePT: *const A_Time,
15775            comp_timePT: *mut A_Time,
15776        ) -> A_Err,
15777    >,
15778    pub AEGP_GetLayerDancingRandValue: ::std::option::Option<
15779        unsafe extern "C" fn(
15780            layerH: AEGP_LayerH,
15781            comp_timePT: *const A_Time,
15782            rand_valuePL: *mut A_long,
15783        ) -> A_Err,
15784    >,
15785    pub AEGP_GetLayerID: ::std::option::Option<
15786        unsafe extern "C" fn(layerH: AEGP_LayerH, id_valP: *mut AEGP_LayerIDVal) -> A_Err,
15787    >,
15788    pub AEGP_GetLayerToWorldXform: ::std::option::Option<
15789        unsafe extern "C" fn(
15790            aegp_layerH: AEGP_LayerH,
15791            comp_timeP: *const A_Time,
15792            transform: *mut A_Matrix4,
15793        ) -> A_Err,
15794    >,
15795    pub AEGP_GetLayerToWorldXformFromView: ::std::option::Option<
15796        unsafe extern "C" fn(
15797            aegp_layerH: AEGP_LayerH,
15798            view_timeP: *const A_Time,
15799            comp_timeP: *const A_Time,
15800            transform: *mut A_Matrix4,
15801        ) -> A_Err,
15802    >,
15803    pub AEGP_SetLayerName: ::std::option::Option<
15804        unsafe extern "C" fn(aegp_layerH: AEGP_LayerH, new_nameZ: *const A_UTF16Char) -> A_Err,
15805    >,
15806    pub AEGP_GetLayerParent: ::std::option::Option<
15807        unsafe extern "C" fn(layerH: AEGP_LayerH, parent_layerPH: *mut AEGP_LayerH) -> A_Err,
15808    >,
15809    pub AEGP_SetLayerParent: ::std::option::Option<
15810        unsafe extern "C" fn(layerH: AEGP_LayerH, parent_layerH0: AEGP_LayerH) -> A_Err,
15811    >,
15812    pub AEGP_DeleteLayer: ::std::option::Option<unsafe extern "C" fn(layerH: AEGP_LayerH) -> A_Err>,
15813    pub AEGP_DuplicateLayer: ::std::option::Option<
15814        unsafe extern "C" fn(
15815            orig_layerH: AEGP_LayerH,
15816            duplicate_layerPH: *mut AEGP_LayerH,
15817        ) -> A_Err,
15818    >,
15819    pub AEGP_GetLayerFromLayerID: ::std::option::Option<
15820        unsafe extern "C" fn(
15821            parent_compH: AEGP_CompH,
15822            id: AEGP_LayerIDVal,
15823            layerPH: *mut AEGP_LayerH,
15824        ) -> A_Err,
15825    >,
15826}
15827#[repr(C)]
15828#[derive(Debug, Copy, Clone)]
15829pub struct AEGP_LayerSuite5 {
15830    pub AEGP_GetCompNumLayers: ::std::option::Option<
15831        unsafe extern "C" fn(compH: AEGP_CompH, num_layersPL: *mut A_long) -> A_Err,
15832    >,
15833    pub AEGP_GetCompLayerByIndex: ::std::option::Option<
15834        unsafe extern "C" fn(
15835            compH: AEGP_CompH,
15836            layer_indexL: A_long,
15837            layerPH: *mut AEGP_LayerH,
15838        ) -> A_Err,
15839    >,
15840    pub AEGP_GetActiveLayer:
15841        ::std::option::Option<unsafe extern "C" fn(layerPH: *mut AEGP_LayerH) -> A_Err>,
15842    pub AEGP_GetLayerIndex: ::std::option::Option<
15843        unsafe extern "C" fn(layerH: AEGP_LayerH, layer_indexPL: *mut A_long) -> A_Err,
15844    >,
15845    pub AEGP_GetLayerSourceItem: ::std::option::Option<
15846        unsafe extern "C" fn(layerH: AEGP_LayerH, source_itemPH: *mut AEGP_ItemH) -> A_Err,
15847    >,
15848    pub AEGP_GetLayerSourceItemID: ::std::option::Option<
15849        unsafe extern "C" fn(layerH: AEGP_LayerH, source_item_idPL: *mut A_long) -> A_Err,
15850    >,
15851    pub AEGP_GetLayerParentComp: ::std::option::Option<
15852        unsafe extern "C" fn(layerH: AEGP_LayerH, compPH: *mut AEGP_CompH) -> A_Err,
15853    >,
15854    pub AEGP_GetLayerName: ::std::option::Option<
15855        unsafe extern "C" fn(
15856            layerH: AEGP_LayerH,
15857            layer_nameZ0: *mut A_char,
15858            source_nameZ0: *mut A_char,
15859        ) -> A_Err,
15860    >,
15861    pub AEGP_GetLayerQuality: ::std::option::Option<
15862        unsafe extern "C" fn(layerH: AEGP_LayerH, qualityP: *mut AEGP_LayerQuality) -> A_Err,
15863    >,
15864    pub AEGP_SetLayerQuality: ::std::option::Option<
15865        unsafe extern "C" fn(layerH: AEGP_LayerH, quality: AEGP_LayerQuality) -> A_Err,
15866    >,
15867    pub AEGP_GetLayerFlags: ::std::option::Option<
15868        unsafe extern "C" fn(layerH: AEGP_LayerH, layer_flagsP: *mut AEGP_LayerFlags) -> A_Err,
15869    >,
15870    pub AEGP_SetLayerFlag: ::std::option::Option<
15871        unsafe extern "C" fn(
15872            layerH: AEGP_LayerH,
15873            single_flag: AEGP_LayerFlags,
15874            valueB: A_Boolean,
15875        ) -> A_Err,
15876    >,
15877    pub AEGP_IsLayerVideoReallyOn: ::std::option::Option<
15878        unsafe extern "C" fn(layerH: AEGP_LayerH, onPB: *mut A_Boolean) -> A_Err,
15879    >,
15880    pub AEGP_IsLayerAudioReallyOn: ::std::option::Option<
15881        unsafe extern "C" fn(layerH: AEGP_LayerH, onPB: *mut A_Boolean) -> A_Err,
15882    >,
15883    pub AEGP_GetLayerCurrentTime: ::std::option::Option<
15884        unsafe extern "C" fn(
15885            layerH: AEGP_LayerH,
15886            time_mode: AEGP_LTimeMode,
15887            curr_timePT: *mut A_Time,
15888        ) -> A_Err,
15889    >,
15890    pub AEGP_GetLayerInPoint: ::std::option::Option<
15891        unsafe extern "C" fn(
15892            layerH: AEGP_LayerH,
15893            time_mode: AEGP_LTimeMode,
15894            in_pointPT: *mut A_Time,
15895        ) -> A_Err,
15896    >,
15897    pub AEGP_GetLayerDuration: ::std::option::Option<
15898        unsafe extern "C" fn(
15899            layerH: AEGP_LayerH,
15900            time_mode: AEGP_LTimeMode,
15901            durationPT: *mut A_Time,
15902        ) -> A_Err,
15903    >,
15904    pub AEGP_SetLayerInPointAndDuration: ::std::option::Option<
15905        unsafe extern "C" fn(
15906            layerH: AEGP_LayerH,
15907            time_mode: AEGP_LTimeMode,
15908            in_pointPT: *const A_Time,
15909            durationPT: *const A_Time,
15910        ) -> A_Err,
15911    >,
15912    pub AEGP_GetLayerOffset: ::std::option::Option<
15913        unsafe extern "C" fn(layerH: AEGP_LayerH, offsetPT: *mut A_Time) -> A_Err,
15914    >,
15915    pub AEGP_SetLayerOffset: ::std::option::Option<
15916        unsafe extern "C" fn(layerH: AEGP_LayerH, offsetPT: *const A_Time) -> A_Err,
15917    >,
15918    pub AEGP_GetLayerStretch: ::std::option::Option<
15919        unsafe extern "C" fn(layerH: AEGP_LayerH, stretchPRt: *mut A_Ratio) -> A_Err,
15920    >,
15921    pub AEGP_SetLayerStretch: ::std::option::Option<
15922        unsafe extern "C" fn(layerH: AEGP_LayerH, stretchPRt: *const A_Ratio) -> A_Err,
15923    >,
15924    pub AEGP_GetLayerTransferMode: ::std::option::Option<
15925        unsafe extern "C" fn(
15926            layerH: AEGP_LayerH,
15927            transfer_modeP: *mut AEGP_LayerTransferMode,
15928        ) -> A_Err,
15929    >,
15930    pub AEGP_SetLayerTransferMode: ::std::option::Option<
15931        unsafe extern "C" fn(
15932            layerH: AEGP_LayerH,
15933            transfer_modeP: *const AEGP_LayerTransferMode,
15934        ) -> A_Err,
15935    >,
15936    pub AEGP_IsAddLayerValid: ::std::option::Option<
15937        unsafe extern "C" fn(
15938            item_to_addH: AEGP_ItemH,
15939            into_compH: AEGP_CompH,
15940            validPB: *mut A_Boolean,
15941        ) -> A_Err,
15942    >,
15943    pub AEGP_AddLayer: ::std::option::Option<
15944        unsafe extern "C" fn(
15945            item_to_addH: AEGP_ItemH,
15946            into_compH: AEGP_CompH,
15947            added_layerPH0: *mut AEGP_LayerH,
15948        ) -> A_Err,
15949    >,
15950    pub AEGP_ReorderLayer: ::std::option::Option<
15951        unsafe extern "C" fn(layerH: AEGP_LayerH, layer_indexL: A_long) -> A_Err,
15952    >,
15953    pub AEGP_GetLayerMaskedBounds: ::std::option::Option<
15954        unsafe extern "C" fn(
15955            layerH: AEGP_LayerH,
15956            time_mode: AEGP_LTimeMode,
15957            timePT: *const A_Time,
15958            boundsPR: *mut A_FloatRect,
15959        ) -> A_Err,
15960    >,
15961    pub AEGP_GetLayerObjectType: ::std::option::Option<
15962        unsafe extern "C" fn(layerH: AEGP_LayerH, object_type: *mut AEGP_ObjectType) -> A_Err,
15963    >,
15964    pub AEGP_IsLayer3D: ::std::option::Option<
15965        unsafe extern "C" fn(layerH: AEGP_LayerH, is_3DPB: *mut A_Boolean) -> A_Err,
15966    >,
15967    pub AEGP_IsLayer2D: ::std::option::Option<
15968        unsafe extern "C" fn(layerH: AEGP_LayerH, is_2DPB: *mut A_Boolean) -> A_Err,
15969    >,
15970    pub AEGP_IsVideoActive: ::std::option::Option<
15971        unsafe extern "C" fn(
15972            layerH: AEGP_LayerH,
15973            time_mode: AEGP_LTimeMode,
15974            timePT: *const A_Time,
15975            is_activePB: *mut A_Boolean,
15976        ) -> A_Err,
15977    >,
15978    pub AEGP_IsLayerUsedAsTrackMatte: ::std::option::Option<
15979        unsafe extern "C" fn(
15980            layerH: AEGP_LayerH,
15981            fill_must_be_activeB: A_Boolean,
15982            is_track_mattePB: *mut A_Boolean,
15983        ) -> A_Err,
15984    >,
15985    pub AEGP_DoesLayerHaveTrackMatte: ::std::option::Option<
15986        unsafe extern "C" fn(layerH: AEGP_LayerH, has_track_mattePB: *mut A_Boolean) -> A_Err,
15987    >,
15988    pub AEGP_ConvertCompToLayerTime: ::std::option::Option<
15989        unsafe extern "C" fn(
15990            layerH: AEGP_LayerH,
15991            comp_timePT: *const A_Time,
15992            layer_timePT: *mut A_Time,
15993        ) -> A_Err,
15994    >,
15995    pub AEGP_ConvertLayerToCompTime: ::std::option::Option<
15996        unsafe extern "C" fn(
15997            layerH: AEGP_LayerH,
15998            layer_timePT: *const A_Time,
15999            comp_timePT: *mut A_Time,
16000        ) -> A_Err,
16001    >,
16002    pub AEGP_GetLayerDancingRandValue: ::std::option::Option<
16003        unsafe extern "C" fn(
16004            layerH: AEGP_LayerH,
16005            comp_timePT: *const A_Time,
16006            rand_valuePL: *mut A_long,
16007        ) -> A_Err,
16008    >,
16009    pub AEGP_GetLayerID: ::std::option::Option<
16010        unsafe extern "C" fn(layerH: AEGP_LayerH, id_valP: *mut AEGP_LayerIDVal) -> A_Err,
16011    >,
16012    pub AEGP_GetLayerToWorldXform: ::std::option::Option<
16013        unsafe extern "C" fn(
16014            aegp_layerH: AEGP_LayerH,
16015            comp_timeP: *const A_Time,
16016            transform: *mut A_Matrix4,
16017        ) -> A_Err,
16018    >,
16019    pub AEGP_GetLayerToWorldXformFromView: ::std::option::Option<
16020        unsafe extern "C" fn(
16021            aegp_layerH: AEGP_LayerH,
16022            view_timeP: *const A_Time,
16023            comp_timeP: *const A_Time,
16024            transform: *mut A_Matrix4,
16025        ) -> A_Err,
16026    >,
16027    pub AEGP_SetLayerName: ::std::option::Option<
16028        unsafe extern "C" fn(aegp_layerH: AEGP_LayerH, new_nameZ: *const A_char) -> A_Err,
16029    >,
16030    pub AEGP_GetLayerParent: ::std::option::Option<
16031        unsafe extern "C" fn(layerH: AEGP_LayerH, parent_layerPH: *mut AEGP_LayerH) -> A_Err,
16032    >,
16033    pub AEGP_SetLayerParent: ::std::option::Option<
16034        unsafe extern "C" fn(layerH: AEGP_LayerH, parent_layerH0: AEGP_LayerH) -> A_Err,
16035    >,
16036    pub AEGP_DeleteLayer: ::std::option::Option<unsafe extern "C" fn(layerH: AEGP_LayerH) -> A_Err>,
16037    pub AEGP_DuplicateLayer: ::std::option::Option<
16038        unsafe extern "C" fn(
16039            orig_layerH: AEGP_LayerH,
16040            duplicate_layerPH: *mut AEGP_LayerH,
16041        ) -> A_Err,
16042    >,
16043    pub AEGP_GetLayerFromLayerID: ::std::option::Option<
16044        unsafe extern "C" fn(
16045            parent_compH: AEGP_CompH,
16046            id: AEGP_LayerIDVal,
16047            layerPH: *mut AEGP_LayerH,
16048        ) -> A_Err,
16049    >,
16050}
16051#[repr(C)]
16052#[derive(Debug, Copy, Clone)]
16053pub struct AEGP_LayerSuite4 {
16054    pub AEGP_GetCompNumLayers: ::std::option::Option<
16055        unsafe extern "C" fn(compH: AEGP_CompH, num_layersPL: *mut A_long) -> A_Err,
16056    >,
16057    pub AEGP_GetCompLayerByIndex: ::std::option::Option<
16058        unsafe extern "C" fn(
16059            compH: AEGP_CompH,
16060            layer_indexL: A_long,
16061            layerPH: *mut AEGP_LayerH,
16062        ) -> A_Err,
16063    >,
16064    pub AEGP_GetActiveLayer:
16065        ::std::option::Option<unsafe extern "C" fn(layerPH: *mut AEGP_LayerH) -> A_Err>,
16066    pub AEGP_GetLayerIndex: ::std::option::Option<
16067        unsafe extern "C" fn(layerH: AEGP_LayerH, layer_indexPL: *mut A_long) -> A_Err,
16068    >,
16069    pub AEGP_GetLayerSourceItem: ::std::option::Option<
16070        unsafe extern "C" fn(layerH: AEGP_LayerH, source_itemPH: *mut AEGP_ItemH) -> A_Err,
16071    >,
16072    pub AEGP_GetLayerSourceItemID: ::std::option::Option<
16073        unsafe extern "C" fn(layerH: AEGP_LayerH, source_item_idPL: *mut A_long) -> A_Err,
16074    >,
16075    pub AEGP_GetLayerParentComp: ::std::option::Option<
16076        unsafe extern "C" fn(layerH: AEGP_LayerH, compPH: *mut AEGP_CompH) -> A_Err,
16077    >,
16078    pub AEGP_GetLayerName: ::std::option::Option<
16079        unsafe extern "C" fn(
16080            layerH: AEGP_LayerH,
16081            layer_nameZ0: *mut A_char,
16082            source_nameZ0: *mut A_char,
16083        ) -> A_Err,
16084    >,
16085    pub AEGP_GetLayerQuality: ::std::option::Option<
16086        unsafe extern "C" fn(layerH: AEGP_LayerH, qualityP: *mut AEGP_LayerQuality) -> A_Err,
16087    >,
16088    pub AEGP_SetLayerQuality: ::std::option::Option<
16089        unsafe extern "C" fn(layerH: AEGP_LayerH, quality: AEGP_LayerQuality) -> A_Err,
16090    >,
16091    pub AEGP_GetLayerFlags: ::std::option::Option<
16092        unsafe extern "C" fn(layerH: AEGP_LayerH, layer_flagsP: *mut AEGP_LayerFlags) -> A_Err,
16093    >,
16094    pub AEGP_SetLayerFlag: ::std::option::Option<
16095        unsafe extern "C" fn(
16096            layerH: AEGP_LayerH,
16097            single_flag: AEGP_LayerFlags,
16098            valueB: A_Boolean,
16099        ) -> A_Err,
16100    >,
16101    pub AEGP_IsLayerVideoReallyOn: ::std::option::Option<
16102        unsafe extern "C" fn(layerH: AEGP_LayerH, onPB: *mut A_Boolean) -> A_Err,
16103    >,
16104    pub AEGP_IsLayerAudioReallyOn: ::std::option::Option<
16105        unsafe extern "C" fn(layerH: AEGP_LayerH, onPB: *mut A_Boolean) -> A_Err,
16106    >,
16107    pub AEGP_GetLayerCurrentTime: ::std::option::Option<
16108        unsafe extern "C" fn(
16109            layerH: AEGP_LayerH,
16110            time_mode: AEGP_LTimeMode,
16111            curr_timePT: *mut A_Time,
16112        ) -> A_Err,
16113    >,
16114    pub AEGP_GetLayerInPoint: ::std::option::Option<
16115        unsafe extern "C" fn(
16116            layerH: AEGP_LayerH,
16117            time_mode: AEGP_LTimeMode,
16118            in_pointPT: *mut A_Time,
16119        ) -> A_Err,
16120    >,
16121    pub AEGP_GetLayerDuration: ::std::option::Option<
16122        unsafe extern "C" fn(
16123            layerH: AEGP_LayerH,
16124            time_mode: AEGP_LTimeMode,
16125            durationPT: *mut A_Time,
16126        ) -> A_Err,
16127    >,
16128    pub AEGP_SetLayerInPointAndDuration: ::std::option::Option<
16129        unsafe extern "C" fn(
16130            layerH: AEGP_LayerH,
16131            time_mode: AEGP_LTimeMode,
16132            in_pointPT: *const A_Time,
16133            durationPT: *const A_Time,
16134        ) -> A_Err,
16135    >,
16136    pub AEGP_GetLayerOffset: ::std::option::Option<
16137        unsafe extern "C" fn(layerH: AEGP_LayerH, offsetPT: *mut A_Time) -> A_Err,
16138    >,
16139    pub AEGP_SetLayerOffset: ::std::option::Option<
16140        unsafe extern "C" fn(layerH: AEGP_LayerH, offsetPT: *const A_Time) -> A_Err,
16141    >,
16142    pub AEGP_GetLayerStretch: ::std::option::Option<
16143        unsafe extern "C" fn(layerH: AEGP_LayerH, stretchPRt: *mut A_Ratio) -> A_Err,
16144    >,
16145    pub AEGP_SetLayerStretch: ::std::option::Option<
16146        unsafe extern "C" fn(layerH: AEGP_LayerH, stretchPRt: *const A_Ratio) -> A_Err,
16147    >,
16148    pub AEGP_GetLayerTransferMode: ::std::option::Option<
16149        unsafe extern "C" fn(
16150            layerH: AEGP_LayerH,
16151            transfer_modeP: *mut AEGP_LayerTransferMode,
16152        ) -> A_Err,
16153    >,
16154    pub AEGP_SetLayerTransferMode: ::std::option::Option<
16155        unsafe extern "C" fn(
16156            layerH: AEGP_LayerH,
16157            transfer_modeP: *const AEGP_LayerTransferMode,
16158        ) -> A_Err,
16159    >,
16160    pub AEGP_IsAddLayerValid: ::std::option::Option<
16161        unsafe extern "C" fn(
16162            item_to_addH: AEGP_ItemH,
16163            into_compH: AEGP_CompH,
16164            validPB: *mut A_Boolean,
16165        ) -> A_Err,
16166    >,
16167    pub AEGP_AddLayer: ::std::option::Option<
16168        unsafe extern "C" fn(
16169            item_to_addH: AEGP_ItemH,
16170            into_compH: AEGP_CompH,
16171            added_layerPH0: *mut AEGP_LayerH,
16172        ) -> A_Err,
16173    >,
16174    pub AEGP_ReorderLayer: ::std::option::Option<
16175        unsafe extern "C" fn(layerH: AEGP_LayerH, layer_indexL: A_long) -> A_Err,
16176    >,
16177    pub AEGP_GetLayerMaskedBounds: ::std::option::Option<
16178        unsafe extern "C" fn(
16179            layerH: AEGP_LayerH,
16180            time_mode: AEGP_LTimeMode,
16181            timePT: *const A_Time,
16182            boundsPR: *mut A_FloatRect,
16183        ) -> A_Err,
16184    >,
16185    pub AEGP_GetLayerObjectType: ::std::option::Option<
16186        unsafe extern "C" fn(layerH: AEGP_LayerH, object_type: *mut AEGP_ObjectType) -> A_Err,
16187    >,
16188    pub AEGP_IsLayer3D: ::std::option::Option<
16189        unsafe extern "C" fn(layerH: AEGP_LayerH, is_3DPB: *mut A_Boolean) -> A_Err,
16190    >,
16191    pub AEGP_IsLayer2D: ::std::option::Option<
16192        unsafe extern "C" fn(layerH: AEGP_LayerH, is_2DPB: *mut A_Boolean) -> A_Err,
16193    >,
16194    pub AEGP_IsVideoActive: ::std::option::Option<
16195        unsafe extern "C" fn(
16196            layerH: AEGP_LayerH,
16197            time_mode: AEGP_LTimeMode,
16198            timePT: *const A_Time,
16199            is_activePB: *mut A_Boolean,
16200        ) -> A_Err,
16201    >,
16202    pub AEGP_IsLayerUsedAsTrackMatte: ::std::option::Option<
16203        unsafe extern "C" fn(
16204            layerH: AEGP_LayerH,
16205            fill_must_be_activeB: A_Boolean,
16206            is_track_mattePB: *mut A_Boolean,
16207        ) -> A_Err,
16208    >,
16209    pub AEGP_DoesLayerHaveTrackMatte: ::std::option::Option<
16210        unsafe extern "C" fn(layerH: AEGP_LayerH, has_track_mattePB: *mut A_Boolean) -> A_Err,
16211    >,
16212    pub AEGP_ConvertCompToLayerTime: ::std::option::Option<
16213        unsafe extern "C" fn(
16214            layerH: AEGP_LayerH,
16215            comp_timePT: *const A_Time,
16216            layer_timePT: *mut A_Time,
16217        ) -> A_Err,
16218    >,
16219    pub AEGP_ConvertLayerToCompTime: ::std::option::Option<
16220        unsafe extern "C" fn(
16221            layerH: AEGP_LayerH,
16222            layer_timePT: *const A_Time,
16223            comp_timePT: *mut A_Time,
16224        ) -> A_Err,
16225    >,
16226    pub AEGP_GetLayerDancingRandValue: ::std::option::Option<
16227        unsafe extern "C" fn(
16228            layerH: AEGP_LayerH,
16229            comp_timePT: *const A_Time,
16230            rand_valuePL: *mut A_long,
16231        ) -> A_Err,
16232    >,
16233    pub AEGP_GetLayerID: ::std::option::Option<
16234        unsafe extern "C" fn(layerH: AEGP_LayerH, id_valP: *mut AEGP_LayerIDVal) -> A_Err,
16235    >,
16236    pub AEGP_GetLayerToWorldXform: ::std::option::Option<
16237        unsafe extern "C" fn(
16238            aegp_layerH: AEGP_LayerH,
16239            comp_timeP: *const A_Time,
16240            transform: *mut A_Matrix4,
16241        ) -> A_Err,
16242    >,
16243    pub AEGP_GetLayerToWorldXformFromView: ::std::option::Option<
16244        unsafe extern "C" fn(
16245            aegp_layerH: AEGP_LayerH,
16246            view_timeP: *const A_Time,
16247            comp_timeP: *const A_Time,
16248            transform: *mut A_Matrix4,
16249        ) -> A_Err,
16250    >,
16251    pub AEGP_SetLayerName: ::std::option::Option<
16252        unsafe extern "C" fn(aegp_layerH: AEGP_LayerH, new_nameZ: *const A_char) -> A_Err,
16253    >,
16254    pub AEGP_GetLayerParent: ::std::option::Option<
16255        unsafe extern "C" fn(layerH: AEGP_LayerH, parent_layerPH: *mut AEGP_LayerH) -> A_Err,
16256    >,
16257    pub AEGP_SetLayerParent: ::std::option::Option<
16258        unsafe extern "C" fn(layerH: AEGP_LayerH, parent_layerH0: AEGP_LayerH) -> A_Err,
16259    >,
16260    pub AEGP_DeleteLayer: ::std::option::Option<unsafe extern "C" fn(layerH: AEGP_LayerH) -> A_Err>,
16261    pub AEGP_DuplicateLayer: ::std::option::Option<
16262        unsafe extern "C" fn(
16263            orig_layerH: AEGP_LayerH,
16264            duplicate_layerPH: *mut AEGP_LayerH,
16265        ) -> A_Err,
16266    >,
16267}
16268#[repr(C)]
16269#[derive(Debug, Copy, Clone)]
16270pub struct AEGP_LayerSuite3 {
16271    pub AEGP_GetCompNumLayers: ::std::option::Option<
16272        unsafe extern "C" fn(compH: AEGP_CompH, num_layersPL: *mut A_long) -> A_Err,
16273    >,
16274    pub AEGP_GetCompLayerByIndex: ::std::option::Option<
16275        unsafe extern "C" fn(
16276            compH: AEGP_CompH,
16277            layer_indexL: A_long,
16278            layerPH: *mut AEGP_LayerH,
16279        ) -> A_Err,
16280    >,
16281    pub AEGP_GetActiveLayer:
16282        ::std::option::Option<unsafe extern "C" fn(layerPH: *mut AEGP_LayerH) -> A_Err>,
16283    pub AEGP_GetLayerIndex: ::std::option::Option<
16284        unsafe extern "C" fn(layerH: AEGP_LayerH, layer_indexPL: *mut A_long) -> A_Err,
16285    >,
16286    pub AEGP_GetLayerSourceItem: ::std::option::Option<
16287        unsafe extern "C" fn(layerH: AEGP_LayerH, source_itemPH: *mut AEGP_ItemH) -> A_Err,
16288    >,
16289    pub AEGP_GetLayerParentComp: ::std::option::Option<
16290        unsafe extern "C" fn(layerH: AEGP_LayerH, compPH: *mut AEGP_CompH) -> A_Err,
16291    >,
16292    pub AEGP_GetLayerName: ::std::option::Option<
16293        unsafe extern "C" fn(
16294            layerH: AEGP_LayerH,
16295            layer_nameZ0: *mut A_char,
16296            source_nameZ0: *mut A_char,
16297        ) -> A_Err,
16298    >,
16299    pub AEGP_GetLayerQuality: ::std::option::Option<
16300        unsafe extern "C" fn(layerH: AEGP_LayerH, qualityP: *mut AEGP_LayerQuality) -> A_Err,
16301    >,
16302    pub AEGP_SetLayerQuality: ::std::option::Option<
16303        unsafe extern "C" fn(layerH: AEGP_LayerH, quality: AEGP_LayerQuality) -> A_Err,
16304    >,
16305    pub AEGP_GetLayerFlags: ::std::option::Option<
16306        unsafe extern "C" fn(layerH: AEGP_LayerH, layer_flagsP: *mut AEGP_LayerFlags) -> A_Err,
16307    >,
16308    pub AEGP_SetLayerFlag: ::std::option::Option<
16309        unsafe extern "C" fn(
16310            layerH: AEGP_LayerH,
16311            single_flag: AEGP_LayerFlags,
16312            valueB: A_Boolean,
16313        ) -> A_Err,
16314    >,
16315    pub AEGP_IsLayerVideoReallyOn: ::std::option::Option<
16316        unsafe extern "C" fn(layerH: AEGP_LayerH, onPB: *mut A_Boolean) -> A_Err,
16317    >,
16318    pub AEGP_IsLayerAudioReallyOn: ::std::option::Option<
16319        unsafe extern "C" fn(layerH: AEGP_LayerH, onPB: *mut A_Boolean) -> A_Err,
16320    >,
16321    pub AEGP_GetLayerCurrentTime: ::std::option::Option<
16322        unsafe extern "C" fn(
16323            layerH: AEGP_LayerH,
16324            time_mode: AEGP_LTimeMode,
16325            curr_timePT: *mut A_Time,
16326        ) -> A_Err,
16327    >,
16328    pub AEGP_GetLayerInPoint: ::std::option::Option<
16329        unsafe extern "C" fn(
16330            layerH: AEGP_LayerH,
16331            time_mode: AEGP_LTimeMode,
16332            in_pointPT: *mut A_Time,
16333        ) -> A_Err,
16334    >,
16335    pub AEGP_GetLayerDuration: ::std::option::Option<
16336        unsafe extern "C" fn(
16337            layerH: AEGP_LayerH,
16338            time_mode: AEGP_LTimeMode,
16339            durationPT: *mut A_Time,
16340        ) -> A_Err,
16341    >,
16342    pub AEGP_SetLayerInPointAndDuration: ::std::option::Option<
16343        unsafe extern "C" fn(
16344            layerH: AEGP_LayerH,
16345            time_mode: AEGP_LTimeMode,
16346            in_pointPT: *const A_Time,
16347            durationPT: *const A_Time,
16348        ) -> A_Err,
16349    >,
16350    pub AEGP_GetLayerOffset: ::std::option::Option<
16351        unsafe extern "C" fn(layerH: AEGP_LayerH, offsetPT: *mut A_Time) -> A_Err,
16352    >,
16353    pub AEGP_SetLayerOffset: ::std::option::Option<
16354        unsafe extern "C" fn(layerH: AEGP_LayerH, offsetPT: *const A_Time) -> A_Err,
16355    >,
16356    pub AEGP_GetLayerStretch: ::std::option::Option<
16357        unsafe extern "C" fn(layerH: AEGP_LayerH, stretchPRt: *mut A_Ratio) -> A_Err,
16358    >,
16359    pub AEGP_SetLayerStretch: ::std::option::Option<
16360        unsafe extern "C" fn(layerH: AEGP_LayerH, stretchPRt: *const A_Ratio) -> A_Err,
16361    >,
16362    pub AEGP_GetLayerTransferMode: ::std::option::Option<
16363        unsafe extern "C" fn(
16364            layerH: AEGP_LayerH,
16365            transfer_modeP: *mut AEGP_LayerTransferMode,
16366        ) -> A_Err,
16367    >,
16368    pub AEGP_SetLayerTransferMode: ::std::option::Option<
16369        unsafe extern "C" fn(
16370            layerH: AEGP_LayerH,
16371            transfer_modeP: *const AEGP_LayerTransferMode,
16372        ) -> A_Err,
16373    >,
16374    pub AEGP_IsAddLayerValid: ::std::option::Option<
16375        unsafe extern "C" fn(
16376            item_to_addH: AEGP_ItemH,
16377            into_compH: AEGP_CompH,
16378            validPB: *mut A_Boolean,
16379        ) -> A_Err,
16380    >,
16381    pub AEGP_AddLayer: ::std::option::Option<
16382        unsafe extern "C" fn(
16383            item_to_addH: AEGP_ItemH,
16384            into_compH: AEGP_CompH,
16385            added_layerPH0: *mut AEGP_LayerH,
16386        ) -> A_Err,
16387    >,
16388    pub AEGP_ReorderLayer: ::std::option::Option<
16389        unsafe extern "C" fn(layerH: AEGP_LayerH, layer_indexL: A_long) -> A_Err,
16390    >,
16391    pub AEGP_GetLayerMaskedBounds: ::std::option::Option<
16392        unsafe extern "C" fn(
16393            layerH: AEGP_LayerH,
16394            time_mode: AEGP_LTimeMode,
16395            timePT: *const A_Time,
16396            boundsPR: *mut A_FloatRect,
16397        ) -> A_Err,
16398    >,
16399    pub AEGP_GetLayerObjectType: ::std::option::Option<
16400        unsafe extern "C" fn(layerH: AEGP_LayerH, object_type: *mut AEGP_ObjectType) -> A_Err,
16401    >,
16402    pub AEGP_IsLayer3D: ::std::option::Option<
16403        unsafe extern "C" fn(layerH: AEGP_LayerH, is_3DPB: *mut A_Boolean) -> A_Err,
16404    >,
16405    pub AEGP_IsLayer2D: ::std::option::Option<
16406        unsafe extern "C" fn(layerH: AEGP_LayerH, is_2DPB: *mut A_Boolean) -> A_Err,
16407    >,
16408    pub AEGP_IsVideoActive: ::std::option::Option<
16409        unsafe extern "C" fn(
16410            layerH: AEGP_LayerH,
16411            time_mode: AEGP_LTimeMode,
16412            timePT: *const A_Time,
16413            is_activePB: *mut A_Boolean,
16414        ) -> A_Err,
16415    >,
16416    pub AEGP_IsLayerUsedAsTrackMatte: ::std::option::Option<
16417        unsafe extern "C" fn(
16418            layerH: AEGP_LayerH,
16419            fill_must_be_activeB: A_Boolean,
16420            is_track_mattePB: *mut A_Boolean,
16421        ) -> A_Err,
16422    >,
16423    pub AEGP_DoesLayerHaveTrackMatte: ::std::option::Option<
16424        unsafe extern "C" fn(layerH: AEGP_LayerH, has_track_mattePB: *mut A_Boolean) -> A_Err,
16425    >,
16426    pub AEGP_ConvertCompToLayerTime: ::std::option::Option<
16427        unsafe extern "C" fn(
16428            layerH: AEGP_LayerH,
16429            comp_timePT: *const A_Time,
16430            layer_timePT: *mut A_Time,
16431        ) -> A_Err,
16432    >,
16433    pub AEGP_ConvertLayerToCompTime: ::std::option::Option<
16434        unsafe extern "C" fn(
16435            layerH: AEGP_LayerH,
16436            layer_timePT: *const A_Time,
16437            comp_timePT: *mut A_Time,
16438        ) -> A_Err,
16439    >,
16440    pub AEGP_GetLayerDancingRandValue: ::std::option::Option<
16441        unsafe extern "C" fn(
16442            layerH: AEGP_LayerH,
16443            comp_timePT: *const A_Time,
16444            rand_valuePL: *mut A_long,
16445        ) -> A_Err,
16446    >,
16447    pub AEGP_GetLayerID: ::std::option::Option<
16448        unsafe extern "C" fn(layerH: AEGP_LayerH, id_valP: *mut AEGP_LayerIDVal) -> A_Err,
16449    >,
16450    pub AEGP_GetLayerToWorldXform: ::std::option::Option<
16451        unsafe extern "C" fn(
16452            aegp_layerH: AEGP_LayerH,
16453            comp_timeP: *const A_Time,
16454            tranform: *mut A_Matrix4,
16455        ) -> A_Err,
16456    >,
16457    pub AEGP_GetLayerToWorldXformFromView: ::std::option::Option<
16458        unsafe extern "C" fn(
16459            aegp_layerH: AEGP_LayerH,
16460            view_timeP: *const A_Time,
16461            comp_timeP: *const A_Time,
16462            tranform: *mut A_Matrix4,
16463        ) -> A_Err,
16464    >,
16465    pub AEGP_SetLayerName: ::std::option::Option<
16466        unsafe extern "C" fn(aegp_layerH: AEGP_LayerH, new_nameZ: *const A_char) -> A_Err,
16467    >,
16468    pub AEGP_GetLayerParent: ::std::option::Option<
16469        unsafe extern "C" fn(layerH: AEGP_LayerH, parent_layerPH: *mut AEGP_LayerH) -> A_Err,
16470    >,
16471    pub AEGP_SetLayerParent: ::std::option::Option<
16472        unsafe extern "C" fn(layerH: AEGP_LayerH, parent_layerH0: AEGP_LayerH) -> A_Err,
16473    >,
16474    pub AEGP_DeleteLayer: ::std::option::Option<unsafe extern "C" fn(layerH: AEGP_LayerH) -> A_Err>,
16475}
16476#[repr(C)]
16477#[derive(Debug, Copy, Clone)]
16478pub struct AEGP_MarkerVal {
16479    pub nameAC: [A_char; 64usize],
16480    pub urlAC: [A_char; 1024usize],
16481    pub targetAC: [A_char; 128usize],
16482    pub chapterAC: [A_char; 128usize],
16483}
16484pub type AEGP_MarkerValH = *mut *mut AEGP_MarkerVal;
16485#[repr(C)]
16486#[derive(Copy, Clone)]
16487pub union AEGP_StreamVal {
16488    pub four_d: AEGP_FourDVal,
16489    pub three_d: AEGP_ThreeDVal,
16490    pub two_d: AEGP_TwoDVal,
16491    pub one_d: AEGP_OneDVal,
16492    pub color: AEGP_ColorVal,
16493    pub arbH: AEGP_ArbBlockVal,
16494    pub markerH: AEGP_MarkerValH,
16495    pub layer_id: AEGP_LayerIDVal,
16496    pub mask_id: AEGP_MaskIDVal,
16497    pub mask: AEGP_MaskOutlineValH,
16498    pub text_documentH: AEGP_TextDocumentH,
16499}
16500#[repr(C)]
16501#[derive(Copy, Clone)]
16502pub struct AEGP_StreamValue {
16503    pub streamH: AEGP_StreamRefH,
16504    pub val: AEGP_StreamVal,
16505}
16506#[repr(C)]
16507#[derive(Debug, Copy, Clone)]
16508pub struct AEGP_StreamSuite5 {
16509    pub AEGP_IsStreamLegal: ::std::option::Option<
16510        unsafe extern "C" fn(
16511            layerH: AEGP_LayerH,
16512            which_stream: AEGP_LayerStream,
16513            is_legalP: *mut A_Boolean,
16514        ) -> A_Err,
16515    >,
16516    pub AEGP_CanVaryOverTime: ::std::option::Option<
16517        unsafe extern "C" fn(streamH: AEGP_StreamRefH, can_varyPB: *mut A_Boolean) -> A_Err,
16518    >,
16519    pub AEGP_GetValidInterpolations: ::std::option::Option<
16520        unsafe extern "C" fn(
16521            streamH: AEGP_StreamRefH,
16522            valid_interpolationsP: *mut AEGP_KeyInterpolationMask,
16523        ) -> A_Err,
16524    >,
16525    pub AEGP_GetNewLayerStream: ::std::option::Option<
16526        unsafe extern "C" fn(
16527            aegp_plugin_id: AEGP_PluginID,
16528            layerH: AEGP_LayerH,
16529            which_stream: AEGP_LayerStream,
16530            streamPH: *mut AEGP_StreamRefH,
16531        ) -> A_Err,
16532    >,
16533    pub AEGP_GetEffectNumParamStreams: ::std::option::Option<
16534        unsafe extern "C" fn(effect_refH: AEGP_EffectRefH, num_paramsPL: *mut A_long) -> A_Err,
16535    >,
16536    pub AEGP_GetNewEffectStreamByIndex: ::std::option::Option<
16537        unsafe extern "C" fn(
16538            aegp_plugin_id: AEGP_PluginID,
16539            effect_refH: AEGP_EffectRefH,
16540            param_index: PF_ParamIndex,
16541            streamPH: *mut AEGP_StreamRefH,
16542        ) -> A_Err,
16543    >,
16544    pub AEGP_GetNewMaskStream: ::std::option::Option<
16545        unsafe extern "C" fn(
16546            aegp_plugin_id: AEGP_PluginID,
16547            mask_refH: AEGP_MaskRefH,
16548            which_stream: AEGP_MaskStream,
16549            mask_streamPH: *mut AEGP_StreamRefH,
16550        ) -> A_Err,
16551    >,
16552    pub AEGP_DisposeStream:
16553        ::std::option::Option<unsafe extern "C" fn(streamH: AEGP_StreamRefH) -> A_Err>,
16554    pub AEGP_GetStreamName: ::std::option::Option<
16555        unsafe extern "C" fn(
16556            pluginID: AEGP_PluginID,
16557            streamH: AEGP_StreamRefH,
16558            force_englishB: A_Boolean,
16559            utf_stream_namePH: *mut AEGP_MemHandle,
16560        ) -> A_Err,
16561    >,
16562    pub AEGP_GetStreamUnitsText: ::std::option::Option<
16563        unsafe extern "C" fn(
16564            streamH: AEGP_StreamRefH,
16565            force_englishB: A_Boolean,
16566            unitsZ: *mut A_char,
16567        ) -> A_Err,
16568    >,
16569    pub AEGP_GetStreamProperties: ::std::option::Option<
16570        unsafe extern "C" fn(
16571            streamH: AEGP_StreamRefH,
16572            flagsP: *mut AEGP_StreamFlags,
16573            minP0: *mut A_FpLong,
16574            maxP0: *mut A_FpLong,
16575        ) -> A_Err,
16576    >,
16577    pub AEGP_IsStreamTimevarying: ::std::option::Option<
16578        unsafe extern "C" fn(streamH: AEGP_StreamRefH, is_timevaryingPB: *mut A_Boolean) -> A_Err,
16579    >,
16580    pub AEGP_GetStreamType: ::std::option::Option<
16581        unsafe extern "C" fn(streamH: AEGP_StreamRefH, stream_typeP: *mut AEGP_StreamType) -> A_Err,
16582    >,
16583    pub AEGP_GetNewStreamValue: ::std::option::Option<
16584        unsafe extern "C" fn(
16585            aegp_plugin_id: AEGP_PluginID,
16586            streamH: AEGP_StreamRefH,
16587            time_mode: AEGP_LTimeMode,
16588            timePT: *const A_Time,
16589            pre_expressionB: A_Boolean,
16590            valueP: *mut AEGP_StreamValue2,
16591        ) -> A_Err,
16592    >,
16593    pub AEGP_DisposeStreamValue:
16594        ::std::option::Option<unsafe extern "C" fn(valueP: *mut AEGP_StreamValue2) -> A_Err>,
16595    pub AEGP_SetStreamValue: ::std::option::Option<
16596        unsafe extern "C" fn(
16597            aegp_plugin_id: AEGP_PluginID,
16598            streamH: AEGP_StreamRefH,
16599            valueP: *mut AEGP_StreamValue2,
16600        ) -> A_Err,
16601    >,
16602    pub AEGP_GetLayerStreamValue: ::std::option::Option<
16603        unsafe extern "C" fn(
16604            layerH: AEGP_LayerH,
16605            which_stream: AEGP_LayerStream,
16606            time_mode: AEGP_LTimeMode,
16607            timePT: *const A_Time,
16608            pre_expressionB: A_Boolean,
16609            stream_valP: *mut AEGP_StreamVal2,
16610            stream_typeP0: *mut AEGP_StreamType,
16611        ) -> A_Err,
16612    >,
16613    pub AEGP_GetExpressionState: ::std::option::Option<
16614        unsafe extern "C" fn(
16615            aegp_plugin_id: AEGP_PluginID,
16616            streamH: AEGP_StreamRefH,
16617            enabledPB: *mut A_Boolean,
16618        ) -> A_Err,
16619    >,
16620    pub AEGP_SetExpressionState: ::std::option::Option<
16621        unsafe extern "C" fn(
16622            aegp_plugin_id: AEGP_PluginID,
16623            streamH: AEGP_StreamRefH,
16624            enabledB: A_Boolean,
16625        ) -> A_Err,
16626    >,
16627    pub AEGP_GetExpression: ::std::option::Option<
16628        unsafe extern "C" fn(
16629            aegp_plugin_id: AEGP_PluginID,
16630            streamH: AEGP_StreamRefH,
16631            unicodeHZ: *mut AEGP_MemHandle,
16632        ) -> A_Err,
16633    >,
16634    pub AEGP_SetExpression: ::std::option::Option<
16635        unsafe extern "C" fn(
16636            aegp_plugin_id: AEGP_PluginID,
16637            streamH: AEGP_StreamRefH,
16638            expressionP: *const A_UTF16Char,
16639        ) -> A_Err,
16640    >,
16641    pub AEGP_DuplicateStreamRef: ::std::option::Option<
16642        unsafe extern "C" fn(
16643            aegp_plugin_id: AEGP_PluginID,
16644            streamH: AEGP_StreamRefH,
16645            dup_streamPH: *mut AEGP_StreamRefH,
16646        ) -> A_Err,
16647    >,
16648}
16649#[repr(C)]
16650#[derive(Debug, Copy, Clone)]
16651pub struct AEGP_StreamSuite4 {
16652    pub AEGP_IsStreamLegal: ::std::option::Option<
16653        unsafe extern "C" fn(
16654            layerH: AEGP_LayerH,
16655            which_stream: AEGP_LayerStream,
16656            is_legalP: *mut A_Boolean,
16657        ) -> A_Err,
16658    >,
16659    pub AEGP_CanVaryOverTime: ::std::option::Option<
16660        unsafe extern "C" fn(streamH: AEGP_StreamRefH, can_varyPB: *mut A_Boolean) -> A_Err,
16661    >,
16662    pub AEGP_GetValidInterpolations: ::std::option::Option<
16663        unsafe extern "C" fn(
16664            streamH: AEGP_StreamRefH,
16665            valid_interpolationsP: *mut AEGP_KeyInterpolationMask,
16666        ) -> A_Err,
16667    >,
16668    pub AEGP_GetNewLayerStream: ::std::option::Option<
16669        unsafe extern "C" fn(
16670            aegp_plugin_id: AEGP_PluginID,
16671            layerH: AEGP_LayerH,
16672            which_stream: AEGP_LayerStream,
16673            streamPH: *mut AEGP_StreamRefH,
16674        ) -> A_Err,
16675    >,
16676    pub AEGP_GetEffectNumParamStreams: ::std::option::Option<
16677        unsafe extern "C" fn(effect_refH: AEGP_EffectRefH, num_paramsPL: *mut A_long) -> A_Err,
16678    >,
16679    pub AEGP_GetNewEffectStreamByIndex: ::std::option::Option<
16680        unsafe extern "C" fn(
16681            aegp_plugin_id: AEGP_PluginID,
16682            effect_refH: AEGP_EffectRefH,
16683            param_index: PF_ParamIndex,
16684            streamPH: *mut AEGP_StreamRefH,
16685        ) -> A_Err,
16686    >,
16687    pub AEGP_GetNewMaskStream: ::std::option::Option<
16688        unsafe extern "C" fn(
16689            aegp_plugin_id: AEGP_PluginID,
16690            mask_refH: AEGP_MaskRefH,
16691            which_stream: AEGP_MaskStream,
16692            mask_streamPH: *mut AEGP_StreamRefH,
16693        ) -> A_Err,
16694    >,
16695    pub AEGP_DisposeStream:
16696        ::std::option::Option<unsafe extern "C" fn(streamH: AEGP_StreamRefH) -> A_Err>,
16697    pub AEGP_GetStreamName: ::std::option::Option<
16698        unsafe extern "C" fn(
16699            pluginID: AEGP_PluginID,
16700            streamH: AEGP_StreamRefH,
16701            force_englishB: A_Boolean,
16702            utf_stream_namePH: *mut AEGP_MemHandle,
16703        ) -> A_Err,
16704    >,
16705    pub AEGP_GetStreamUnitsText: ::std::option::Option<
16706        unsafe extern "C" fn(
16707            streamH: AEGP_StreamRefH,
16708            force_englishB: A_Boolean,
16709            unitsZ: *mut A_char,
16710        ) -> A_Err,
16711    >,
16712    pub AEGP_GetStreamProperties: ::std::option::Option<
16713        unsafe extern "C" fn(
16714            streamH: AEGP_StreamRefH,
16715            flagsP: *mut AEGP_StreamFlags,
16716            minP0: *mut A_FpLong,
16717            maxP0: *mut A_FpLong,
16718        ) -> A_Err,
16719    >,
16720    pub AEGP_IsStreamTimevarying: ::std::option::Option<
16721        unsafe extern "C" fn(streamH: AEGP_StreamRefH, is_timevaryingPB: *mut A_Boolean) -> A_Err,
16722    >,
16723    pub AEGP_GetStreamType: ::std::option::Option<
16724        unsafe extern "C" fn(streamH: AEGP_StreamRefH, stream_typeP: *mut AEGP_StreamType) -> A_Err,
16725    >,
16726    pub AEGP_GetNewStreamValue: ::std::option::Option<
16727        unsafe extern "C" fn(
16728            aegp_plugin_id: AEGP_PluginID,
16729            streamH: AEGP_StreamRefH,
16730            time_mode: AEGP_LTimeMode,
16731            timePT: *const A_Time,
16732            pre_expressionB: A_Boolean,
16733            valueP: *mut AEGP_StreamValue2,
16734        ) -> A_Err,
16735    >,
16736    pub AEGP_DisposeStreamValue:
16737        ::std::option::Option<unsafe extern "C" fn(valueP: *mut AEGP_StreamValue2) -> A_Err>,
16738    pub AEGP_SetStreamValue: ::std::option::Option<
16739        unsafe extern "C" fn(
16740            aegp_plugin_id: AEGP_PluginID,
16741            streamH: AEGP_StreamRefH,
16742            valueP: *mut AEGP_StreamValue2,
16743        ) -> A_Err,
16744    >,
16745    pub AEGP_GetLayerStreamValue: ::std::option::Option<
16746        unsafe extern "C" fn(
16747            layerH: AEGP_LayerH,
16748            which_stream: AEGP_LayerStream,
16749            time_mode: AEGP_LTimeMode,
16750            timePT: *const A_Time,
16751            pre_expressionB: A_Boolean,
16752            stream_valP: *mut AEGP_StreamVal2,
16753            stream_typeP0: *mut AEGP_StreamType,
16754        ) -> A_Err,
16755    >,
16756    pub AEGP_GetExpressionState: ::std::option::Option<
16757        unsafe extern "C" fn(
16758            aegp_plugin_id: AEGP_PluginID,
16759            streamH: AEGP_StreamRefH,
16760            enabledPB: *mut A_Boolean,
16761        ) -> A_Err,
16762    >,
16763    pub AEGP_SetExpressionState: ::std::option::Option<
16764        unsafe extern "C" fn(
16765            aegp_plugin_id: AEGP_PluginID,
16766            streamH: AEGP_StreamRefH,
16767            enabledB: A_Boolean,
16768        ) -> A_Err,
16769    >,
16770    pub AEGP_GetExpression: ::std::option::Option<
16771        unsafe extern "C" fn(
16772            aegp_plugin_id: AEGP_PluginID,
16773            streamH: AEGP_StreamRefH,
16774            expressionHZ: *mut AEGP_MemHandle,
16775        ) -> A_Err,
16776    >,
16777    pub AEGP_SetExpression: ::std::option::Option<
16778        unsafe extern "C" fn(
16779            aegp_plugin_id: AEGP_PluginID,
16780            streamH: AEGP_StreamRefH,
16781            expressionP: *const A_char,
16782        ) -> A_Err,
16783    >,
16784    pub AEGP_DuplicateStreamRef: ::std::option::Option<
16785        unsafe extern "C" fn(
16786            aegp_plugin_id: AEGP_PluginID,
16787            streamH: AEGP_StreamRefH,
16788            dup_streamPH: *mut AEGP_StreamRefH,
16789        ) -> A_Err,
16790    >,
16791}
16792#[repr(C)]
16793#[derive(Debug, Copy, Clone)]
16794pub struct AEGP_StreamSuite3 {
16795    pub AEGP_IsStreamLegal: ::std::option::Option<
16796        unsafe extern "C" fn(
16797            layerH: AEGP_LayerH,
16798            which_stream: AEGP_LayerStream,
16799            is_legalP: *mut A_Boolean,
16800        ) -> A_Err,
16801    >,
16802    pub AEGP_CanVaryOverTime: ::std::option::Option<
16803        unsafe extern "C" fn(streamH: AEGP_StreamRefH, can_varyPB: *mut A_Boolean) -> A_Err,
16804    >,
16805    pub AEGP_GetValidInterpolations: ::std::option::Option<
16806        unsafe extern "C" fn(
16807            streamH: AEGP_StreamRefH,
16808            valid_interpolationsP: *mut AEGP_KeyInterpolationMask,
16809        ) -> A_Err,
16810    >,
16811    pub AEGP_GetNewLayerStream: ::std::option::Option<
16812        unsafe extern "C" fn(
16813            aegp_plugin_id: AEGP_PluginID,
16814            layerH: AEGP_LayerH,
16815            which_stream: AEGP_LayerStream,
16816            streamPH: *mut AEGP_StreamRefH,
16817        ) -> A_Err,
16818    >,
16819    pub AEGP_GetEffectNumParamStreams: ::std::option::Option<
16820        unsafe extern "C" fn(effect_refH: AEGP_EffectRefH, num_paramsPL: *mut A_long) -> A_Err,
16821    >,
16822    pub AEGP_GetNewEffectStreamByIndex: ::std::option::Option<
16823        unsafe extern "C" fn(
16824            aegp_plugin_id: AEGP_PluginID,
16825            effect_refH: AEGP_EffectRefH,
16826            param_index: PF_ParamIndex,
16827            streamPH: *mut AEGP_StreamRefH,
16828        ) -> A_Err,
16829    >,
16830    pub AEGP_GetNewMaskStream: ::std::option::Option<
16831        unsafe extern "C" fn(
16832            aegp_plugin_id: AEGP_PluginID,
16833            mask_refH: AEGP_MaskRefH,
16834            which_stream: AEGP_MaskStream,
16835            mask_streamPH: *mut AEGP_StreamRefH,
16836        ) -> A_Err,
16837    >,
16838    pub AEGP_DisposeStream:
16839        ::std::option::Option<unsafe extern "C" fn(streamH: AEGP_StreamRefH) -> A_Err>,
16840    pub AEGP_GetStreamName: ::std::option::Option<
16841        unsafe extern "C" fn(
16842            streamH: AEGP_StreamRefH,
16843            force_englishB: A_Boolean,
16844            nameZ: *mut A_char,
16845        ) -> A_Err,
16846    >,
16847    pub AEGP_GetStreamUnitsText: ::std::option::Option<
16848        unsafe extern "C" fn(
16849            streamH: AEGP_StreamRefH,
16850            force_englishB: A_Boolean,
16851            unitsZ: *mut A_char,
16852        ) -> A_Err,
16853    >,
16854    pub AEGP_GetStreamProperties: ::std::option::Option<
16855        unsafe extern "C" fn(
16856            streamH: AEGP_StreamRefH,
16857            flagsP: *mut AEGP_StreamFlags,
16858            minP0: *mut A_FpLong,
16859            maxP0: *mut A_FpLong,
16860        ) -> A_Err,
16861    >,
16862    pub AEGP_IsStreamTimevarying: ::std::option::Option<
16863        unsafe extern "C" fn(streamH: AEGP_StreamRefH, is_timevaryingPB: *mut A_Boolean) -> A_Err,
16864    >,
16865    pub AEGP_GetStreamType: ::std::option::Option<
16866        unsafe extern "C" fn(streamH: AEGP_StreamRefH, stream_typeP: *mut AEGP_StreamType) -> A_Err,
16867    >,
16868    pub AEGP_GetNewStreamValue: ::std::option::Option<
16869        unsafe extern "C" fn(
16870            aegp_plugin_id: AEGP_PluginID,
16871            streamH: AEGP_StreamRefH,
16872            time_mode: AEGP_LTimeMode,
16873            timePT: *const A_Time,
16874            pre_expressionB: A_Boolean,
16875            valueP: *mut AEGP_StreamValue2,
16876        ) -> A_Err,
16877    >,
16878    pub AEGP_DisposeStreamValue:
16879        ::std::option::Option<unsafe extern "C" fn(valueP: *mut AEGP_StreamValue2) -> A_Err>,
16880    pub AEGP_SetStreamValue: ::std::option::Option<
16881        unsafe extern "C" fn(
16882            aegp_plugin_id: AEGP_PluginID,
16883            streamH: AEGP_StreamRefH,
16884            valueP: *mut AEGP_StreamValue2,
16885        ) -> A_Err,
16886    >,
16887    pub AEGP_GetLayerStreamValue: ::std::option::Option<
16888        unsafe extern "C" fn(
16889            layerH: AEGP_LayerH,
16890            which_stream: AEGP_LayerStream,
16891            time_mode: AEGP_LTimeMode,
16892            timePT: *const A_Time,
16893            pre_expressionB: A_Boolean,
16894            stream_valP: *mut AEGP_StreamVal2,
16895            stream_typeP0: *mut AEGP_StreamType,
16896        ) -> A_Err,
16897    >,
16898    pub AEGP_GetExpressionState: ::std::option::Option<
16899        unsafe extern "C" fn(
16900            aegp_plugin_id: AEGP_PluginID,
16901            streamH: AEGP_StreamRefH,
16902            enabledPB: *mut A_Boolean,
16903        ) -> A_Err,
16904    >,
16905    pub AEGP_SetExpressionState: ::std::option::Option<
16906        unsafe extern "C" fn(
16907            aegp_plugin_id: AEGP_PluginID,
16908            streamH: AEGP_StreamRefH,
16909            enabledB: A_Boolean,
16910        ) -> A_Err,
16911    >,
16912    pub AEGP_GetExpression: ::std::option::Option<
16913        unsafe extern "C" fn(
16914            aegp_plugin_id: AEGP_PluginID,
16915            streamH: AEGP_StreamRefH,
16916            expressionHZ: *mut AEGP_MemHandle,
16917        ) -> A_Err,
16918    >,
16919    pub AEGP_SetExpression: ::std::option::Option<
16920        unsafe extern "C" fn(
16921            aegp_plugin_id: AEGP_PluginID,
16922            streamH: AEGP_StreamRefH,
16923            expressionP: *const A_char,
16924        ) -> A_Err,
16925    >,
16926    pub AEGP_DuplicateStreamRef: ::std::option::Option<
16927        unsafe extern "C" fn(
16928            aegp_plugin_id: AEGP_PluginID,
16929            streamH: AEGP_StreamRefH,
16930            dup_streamPH: *mut AEGP_StreamRefH,
16931        ) -> A_Err,
16932    >,
16933}
16934#[repr(C)]
16935#[derive(Debug, Copy, Clone)]
16936pub struct AEGP_StreamSuite2 {
16937    pub AEGP_IsStreamLegal: ::std::option::Option<
16938        unsafe extern "C" fn(
16939            layerH: AEGP_LayerH,
16940            which_stream: AEGP_LayerStream,
16941            is_legalP: *mut A_Boolean,
16942        ) -> A_Err,
16943    >,
16944    pub AEGP_CanVaryOverTime: ::std::option::Option<
16945        unsafe extern "C" fn(streamH: AEGP_StreamRefH, can_varyPB: *mut A_Boolean) -> A_Err,
16946    >,
16947    pub AEGP_GetValidInterpolations: ::std::option::Option<
16948        unsafe extern "C" fn(
16949            streamH: AEGP_StreamRefH,
16950            valid_interpolationsP: *mut AEGP_KeyInterpolationMask,
16951        ) -> A_Err,
16952    >,
16953    pub AEGP_GetNewLayerStream: ::std::option::Option<
16954        unsafe extern "C" fn(
16955            aegp_plugin_id: AEGP_PluginID,
16956            layerH: AEGP_LayerH,
16957            which_stream: AEGP_LayerStream,
16958            streamPH: *mut AEGP_StreamRefH,
16959        ) -> A_Err,
16960    >,
16961    pub AEGP_GetEffectNumParamStreams: ::std::option::Option<
16962        unsafe extern "C" fn(effect_refH: AEGP_EffectRefH, num_paramsPL: *mut A_long) -> A_Err,
16963    >,
16964    pub AEGP_GetNewEffectStreamByIndex: ::std::option::Option<
16965        unsafe extern "C" fn(
16966            aegp_plugin_id: AEGP_PluginID,
16967            effect_refH: AEGP_EffectRefH,
16968            param_index: PF_ParamIndex,
16969            streamPH: *mut AEGP_StreamRefH,
16970        ) -> A_Err,
16971    >,
16972    pub AEGP_GetNewMaskStream: ::std::option::Option<
16973        unsafe extern "C" fn(
16974            aegp_plugin_id: AEGP_PluginID,
16975            mask_refH: AEGP_MaskRefH,
16976            which_stream: AEGP_MaskStream,
16977            mask_streamPH: *mut AEGP_StreamRefH,
16978        ) -> A_Err,
16979    >,
16980    pub AEGP_DisposeStream:
16981        ::std::option::Option<unsafe extern "C" fn(streamH: AEGP_StreamRefH) -> A_Err>,
16982    pub AEGP_GetStreamName: ::std::option::Option<
16983        unsafe extern "C" fn(
16984            streamH: AEGP_StreamRefH,
16985            force_englishB: A_Boolean,
16986            nameZ: *mut A_char,
16987        ) -> A_Err,
16988    >,
16989    pub AEGP_GetStreamUnitsText: ::std::option::Option<
16990        unsafe extern "C" fn(
16991            streamH: AEGP_StreamRefH,
16992            force_englishB: A_Boolean,
16993            unitsZ: *mut A_char,
16994        ) -> A_Err,
16995    >,
16996    pub AEGP_GetStreamProperties: ::std::option::Option<
16997        unsafe extern "C" fn(
16998            streamH: AEGP_StreamRefH,
16999            flagsP: *mut AEGP_StreamFlags,
17000            minP0: *mut A_FpLong,
17001            maxP0: *mut A_FpLong,
17002        ) -> A_Err,
17003    >,
17004    pub AEGP_IsStreamTimevarying: ::std::option::Option<
17005        unsafe extern "C" fn(streamH: AEGP_StreamRefH, is_timevaryingPB: *mut A_Boolean) -> A_Err,
17006    >,
17007    pub AEGP_GetStreamType: ::std::option::Option<
17008        unsafe extern "C" fn(streamH: AEGP_StreamRefH, stream_typeP: *mut AEGP_StreamType) -> A_Err,
17009    >,
17010    pub AEGP_GetNewStreamValue: ::std::option::Option<
17011        unsafe extern "C" fn(
17012            aegp_plugin_id: AEGP_PluginID,
17013            streamH: AEGP_StreamRefH,
17014            time_mode: AEGP_LTimeMode,
17015            timePT: *const A_Time,
17016            pre_expressionB: A_Boolean,
17017            valueP: *mut AEGP_StreamValue,
17018        ) -> A_Err,
17019    >,
17020    pub AEGP_DisposeStreamValue:
17021        ::std::option::Option<unsafe extern "C" fn(valueP: *mut AEGP_StreamValue) -> A_Err>,
17022    pub AEGP_SetStreamValue: ::std::option::Option<
17023        unsafe extern "C" fn(
17024            aegp_plugin_id: AEGP_PluginID,
17025            streamH: AEGP_StreamRefH,
17026            valueP: *mut AEGP_StreamValue,
17027        ) -> A_Err,
17028    >,
17029    pub AEGP_GetLayerStreamValue: ::std::option::Option<
17030        unsafe extern "C" fn(
17031            layerH: AEGP_LayerH,
17032            which_stream: AEGP_LayerStream,
17033            time_mode: AEGP_LTimeMode,
17034            timePT: *const A_Time,
17035            pre_expressionB: A_Boolean,
17036            stream_valP: *mut AEGP_StreamVal,
17037            stream_typeP0: *mut AEGP_StreamType,
17038        ) -> A_Err,
17039    >,
17040    pub AEGP_GetExpressionState: ::std::option::Option<
17041        unsafe extern "C" fn(
17042            aegp_plugin_id: AEGP_PluginID,
17043            streamH: AEGP_StreamRefH,
17044            enabledPB: *mut A_Boolean,
17045        ) -> A_Err,
17046    >,
17047    pub AEGP_SetExpressionState: ::std::option::Option<
17048        unsafe extern "C" fn(
17049            aegp_plugin_id: AEGP_PluginID,
17050            streamH: AEGP_StreamRefH,
17051            enabledB: A_Boolean,
17052        ) -> A_Err,
17053    >,
17054    pub AEGP_GetExpression: ::std::option::Option<
17055        unsafe extern "C" fn(
17056            aegp_plugin_id: AEGP_PluginID,
17057            streamH: AEGP_StreamRefH,
17058            expressionHZ: *mut AEGP_MemHandle,
17059        ) -> A_Err,
17060    >,
17061    pub AEGP_SetExpression: ::std::option::Option<
17062        unsafe extern "C" fn(
17063            aegp_plugin_id: AEGP_PluginID,
17064            streamH: AEGP_StreamRefH,
17065            expressionP: *const A_char,
17066        ) -> A_Err,
17067    >,
17068    pub AEGP_DuplicateStreamRef: ::std::option::Option<
17069        unsafe extern "C" fn(
17070            aegp_plugin_id: AEGP_PluginID,
17071            streamH: AEGP_StreamRefH,
17072            dup_streamPH: *mut AEGP_StreamRefH,
17073        ) -> A_Err,
17074    >,
17075}
17076#[repr(C)]
17077#[derive(Debug, Copy, Clone)]
17078pub struct AEGP_StreamSuite1 {
17079    pub AEGP_IsStreamLegal: ::std::option::Option<
17080        unsafe extern "C" fn(
17081            layerH: AEGP_LayerH,
17082            which_stream: AEGP_LayerStream,
17083            is_legalP: *mut A_Boolean,
17084        ) -> A_Err,
17085    >,
17086    pub AEGP_CanVaryOverTime: ::std::option::Option<
17087        unsafe extern "C" fn(streamH: AEGP_StreamRefH, can_varyPB: *mut A_Boolean) -> A_Err,
17088    >,
17089    pub AEGP_GetNewLayerStream: ::std::option::Option<
17090        unsafe extern "C" fn(
17091            aegp_plugin_id: AEGP_PluginID,
17092            layerH: AEGP_LayerH,
17093            which_stream: AEGP_LayerStream,
17094            streamPH: *mut AEGP_StreamRefH,
17095        ) -> A_Err,
17096    >,
17097    pub AEGP_GetEffectNumParamStreams: ::std::option::Option<
17098        unsafe extern "C" fn(effect_refH: AEGP_EffectRefH, num_paramsPL: *mut A_long) -> A_Err,
17099    >,
17100    pub AEGP_GetNewEffectStreamByIndex: ::std::option::Option<
17101        unsafe extern "C" fn(
17102            aegp_plugin_id: AEGP_PluginID,
17103            effect_refH: AEGP_EffectRefH,
17104            param_index: PF_ParamIndex,
17105            streamPH: *mut AEGP_StreamRefH,
17106        ) -> A_Err,
17107    >,
17108    pub AEGP_GetNewMaskStream: ::std::option::Option<
17109        unsafe extern "C" fn(
17110            aegp_plugin_id: AEGP_PluginID,
17111            mask_refH: AEGP_MaskRefH,
17112            which_stream: AEGP_MaskStream,
17113            mask_streamPH: *mut AEGP_StreamRefH,
17114        ) -> A_Err,
17115    >,
17116    pub AEGP_DisposeStream:
17117        ::std::option::Option<unsafe extern "C" fn(streamH: AEGP_StreamRefH) -> A_Err>,
17118    pub AEGP_GetStreamName: ::std::option::Option<
17119        unsafe extern "C" fn(
17120            streamH: AEGP_StreamRefH,
17121            force_englishB: A_Boolean,
17122            nameZ: *mut A_char,
17123        ) -> A_Err,
17124    >,
17125    pub AEGP_GetStreamUnitsText: ::std::option::Option<
17126        unsafe extern "C" fn(
17127            streamH: AEGP_StreamRefH,
17128            force_englishB: A_Boolean,
17129            unitsZ: *mut A_char,
17130        ) -> A_Err,
17131    >,
17132    pub AEGP_GetStreamProperties: ::std::option::Option<
17133        unsafe extern "C" fn(
17134            streamH: AEGP_StreamRefH,
17135            flagsP: *mut AEGP_StreamFlags,
17136            minP0: *mut A_FpLong,
17137            maxP0: *mut A_FpLong,
17138        ) -> A_Err,
17139    >,
17140    pub AEGP_IsStreamTimevarying: ::std::option::Option<
17141        unsafe extern "C" fn(streamH: AEGP_StreamRefH, is_timevaryingPB: *mut A_Boolean) -> A_Err,
17142    >,
17143    pub AEGP_GetStreamType: ::std::option::Option<
17144        unsafe extern "C" fn(streamH: AEGP_StreamRefH, stream_typeP: *mut AEGP_StreamType) -> A_Err,
17145    >,
17146    pub AEGP_GetNewStreamValue: ::std::option::Option<
17147        unsafe extern "C" fn(
17148            aegp_plugin_id: AEGP_PluginID,
17149            streamH: AEGP_StreamRefH,
17150            time_mode: AEGP_LTimeMode,
17151            timePT: *const A_Time,
17152            pre_expressionB: A_Boolean,
17153            valueP: *mut AEGP_StreamValue,
17154        ) -> A_Err,
17155    >,
17156    pub AEGP_DisposeStreamValue:
17157        ::std::option::Option<unsafe extern "C" fn(valueP: *mut AEGP_StreamValue) -> A_Err>,
17158    pub AEGP_SetStreamValue: ::std::option::Option<
17159        unsafe extern "C" fn(
17160            aegp_plugin_id: AEGP_PluginID,
17161            streamH: AEGP_StreamRefH,
17162            valueP: *mut AEGP_StreamValue,
17163        ) -> A_Err,
17164    >,
17165    pub AEGP_GetLayerStreamValue: ::std::option::Option<
17166        unsafe extern "C" fn(
17167            layerH: AEGP_LayerH,
17168            which_stream: AEGP_LayerStream,
17169            time_mode: AEGP_LTimeMode,
17170            timePT: *const A_Time,
17171            pre_expressionB: A_Boolean,
17172            stream_valP: *mut AEGP_StreamVal,
17173            stream_typeP0: *mut AEGP_StreamType,
17174        ) -> A_Err,
17175    >,
17176    pub AEGP_GetExpressionState: ::std::option::Option<
17177        unsafe extern "C" fn(
17178            aegp_plugin_id: AEGP_PluginID,
17179            streamH: AEGP_StreamRefH,
17180            enabledPB: *mut A_Boolean,
17181        ) -> A_Err,
17182    >,
17183    pub AEGP_SetExpressionState: ::std::option::Option<
17184        unsafe extern "C" fn(
17185            aegp_plugin_id: AEGP_PluginID,
17186            streamH: AEGP_StreamRefH,
17187            enabledB: A_Boolean,
17188        ) -> A_Err,
17189    >,
17190    pub AEGP_GetExpression: ::std::option::Option<
17191        unsafe extern "C" fn(
17192            aegp_plugin_id: AEGP_PluginID,
17193            streamH: AEGP_StreamRefH,
17194            expressionHZ: *mut AEGP_MemHandle,
17195        ) -> A_Err,
17196    >,
17197    pub AEGP_SetExpression: ::std::option::Option<
17198        unsafe extern "C" fn(
17199            aegp_plugin_id: AEGP_PluginID,
17200            streamH: AEGP_StreamRefH,
17201            expressionP: *const A_char,
17202        ) -> A_Err,
17203    >,
17204}
17205#[repr(C)]
17206#[derive(Debug, Copy, Clone)]
17207pub struct AEGP_LayerSuite1 {
17208    pub AEGP_GetCompNumLayers: ::std::option::Option<
17209        unsafe extern "C" fn(compH: AEGP_CompH, num_layersPL: *mut A_long) -> A_Err,
17210    >,
17211    pub AEGP_GetCompLayerByIndex: ::std::option::Option<
17212        unsafe extern "C" fn(
17213            compH: AEGP_CompH,
17214            layer_indexL: A_long,
17215            layerPH: *mut AEGP_LayerH,
17216        ) -> A_Err,
17217    >,
17218    pub AEGP_GetActiveLayer:
17219        ::std::option::Option<unsafe extern "C" fn(layerPH: *mut AEGP_LayerH) -> A_Err>,
17220    pub AEGP_GetLayerIndex: ::std::option::Option<
17221        unsafe extern "C" fn(layerH: AEGP_LayerH, layer_indexPL: *mut A_long) -> A_Err,
17222    >,
17223    pub AEGP_GetLayerSourceItem: ::std::option::Option<
17224        unsafe extern "C" fn(layerH: AEGP_LayerH, source_itemPH: *mut AEGP_ItemH) -> A_Err,
17225    >,
17226    pub AEGP_GetLayerParentComp: ::std::option::Option<
17227        unsafe extern "C" fn(layerH: AEGP_LayerH, compPH: *mut AEGP_CompH) -> A_Err,
17228    >,
17229    pub AEGP_GetLayerName: ::std::option::Option<
17230        unsafe extern "C" fn(
17231            layerH: AEGP_LayerH,
17232            layer_nameZ0: *mut A_char,
17233            source_nameZ0: *mut A_char,
17234        ) -> A_Err,
17235    >,
17236    pub AEGP_GetLayerQuality: ::std::option::Option<
17237        unsafe extern "C" fn(layerH: AEGP_LayerH, qualityP: *mut AEGP_LayerQuality) -> A_Err,
17238    >,
17239    pub AEGP_SetLayerQuality: ::std::option::Option<
17240        unsafe extern "C" fn(layerH: AEGP_LayerH, quality: AEGP_LayerQuality) -> A_Err,
17241    >,
17242    pub AEGP_GetLayerFlags: ::std::option::Option<
17243        unsafe extern "C" fn(layerH: AEGP_LayerH, layer_flagsP: *mut AEGP_LayerFlags) -> A_Err,
17244    >,
17245    pub AEGP_SetLayerFlag: ::std::option::Option<
17246        unsafe extern "C" fn(
17247            layerH: AEGP_LayerH,
17248            single_flag: AEGP_LayerFlags,
17249            valueB: A_Boolean,
17250        ) -> A_Err,
17251    >,
17252    pub AEGP_IsLayerVideoReallyOn: ::std::option::Option<
17253        unsafe extern "C" fn(layerH: AEGP_LayerH, onPB: *mut A_Boolean) -> A_Err,
17254    >,
17255    pub AEGP_IsLayerAudioReallyOn: ::std::option::Option<
17256        unsafe extern "C" fn(layerH: AEGP_LayerH, onPB: *mut A_Boolean) -> A_Err,
17257    >,
17258    pub AEGP_GetLayerCurrentTime: ::std::option::Option<
17259        unsafe extern "C" fn(
17260            layerH: AEGP_LayerH,
17261            time_mode: AEGP_LTimeMode,
17262            curr_timePT: *mut A_Time,
17263        ) -> A_Err,
17264    >,
17265    pub AEGP_GetLayerInPoint: ::std::option::Option<
17266        unsafe extern "C" fn(
17267            layerH: AEGP_LayerH,
17268            time_mode: AEGP_LTimeMode,
17269            in_pointPT: *mut A_Time,
17270        ) -> A_Err,
17271    >,
17272    pub AEGP_GetLayerDuration: ::std::option::Option<
17273        unsafe extern "C" fn(
17274            layerH: AEGP_LayerH,
17275            time_mode: AEGP_LTimeMode,
17276            durationPT: *mut A_Time,
17277        ) -> A_Err,
17278    >,
17279    pub AEGP_SetLayerInPointAndDuration: ::std::option::Option<
17280        unsafe extern "C" fn(
17281            layerH: AEGP_LayerH,
17282            time_mode: AEGP_LTimeMode,
17283            in_pointPT: *const A_Time,
17284            durationPT: *const A_Time,
17285        ) -> A_Err,
17286    >,
17287    pub AEGP_GetLayerOffset: ::std::option::Option<
17288        unsafe extern "C" fn(layerH: AEGP_LayerH, offsetPT: *mut A_Time) -> A_Err,
17289    >,
17290    pub AEGP_SetLayerOffset: ::std::option::Option<
17291        unsafe extern "C" fn(layerH: AEGP_LayerH, offsetPT: *const A_Time) -> A_Err,
17292    >,
17293    pub AEGP_GetLayerStretch: ::std::option::Option<
17294        unsafe extern "C" fn(layerH: AEGP_LayerH, stretchPRt: *mut A_Ratio) -> A_Err,
17295    >,
17296    pub AEGP_SetLayerStretch: ::std::option::Option<
17297        unsafe extern "C" fn(layerH: AEGP_LayerH, stretchPRt: *const A_Ratio) -> A_Err,
17298    >,
17299    pub AEGP_GetLayerTransferMode: ::std::option::Option<
17300        unsafe extern "C" fn(
17301            layerH: AEGP_LayerH,
17302            transfer_modeP: *mut AEGP_LayerTransferMode,
17303        ) -> A_Err,
17304    >,
17305    pub AEGP_SetLayerTransferMode: ::std::option::Option<
17306        unsafe extern "C" fn(
17307            layerH: AEGP_LayerH,
17308            transfer_modeP: *const AEGP_LayerTransferMode,
17309        ) -> A_Err,
17310    >,
17311    pub AEGP_IsAddLayerValid: ::std::option::Option<
17312        unsafe extern "C" fn(
17313            item_to_addH: AEGP_ItemH,
17314            into_compH: AEGP_CompH,
17315            validPB: *mut A_Boolean,
17316        ) -> A_Err,
17317    >,
17318    pub AEGP_AddLayer: ::std::option::Option<
17319        unsafe extern "C" fn(
17320            item_to_addH: AEGP_ItemH,
17321            into_compH: AEGP_CompH,
17322            added_layerPH0: *mut AEGP_LayerH,
17323        ) -> A_Err,
17324    >,
17325    pub AEGP_ReorderLayer: ::std::option::Option<
17326        unsafe extern "C" fn(layerH: AEGP_LayerH, layer_indexL: A_long) -> A_Err,
17327    >,
17328    pub AEGP_GetLayerMaskedBounds: ::std::option::Option<
17329        unsafe extern "C" fn(
17330            layerH: AEGP_LayerH,
17331            time_mode: AEGP_LTimeMode,
17332            timePT: *const A_Time,
17333            boundsPR: *mut A_FloatRect,
17334        ) -> A_Err,
17335    >,
17336    pub AEGP_GetLayerObjectType: ::std::option::Option<
17337        unsafe extern "C" fn(layerH: AEGP_LayerH, object_type: *mut AEGP_ObjectType) -> A_Err,
17338    >,
17339    pub AEGP_IsLayer3D: ::std::option::Option<
17340        unsafe extern "C" fn(layerH: AEGP_LayerH, is_3DPB: *mut A_Boolean) -> A_Err,
17341    >,
17342    pub AEGP_IsLayer2D: ::std::option::Option<
17343        unsafe extern "C" fn(layerH: AEGP_LayerH, is_2DPB: *mut A_Boolean) -> A_Err,
17344    >,
17345    pub AEGP_IsVideoActive: ::std::option::Option<
17346        unsafe extern "C" fn(
17347            layerH: AEGP_LayerH,
17348            time_mode: AEGP_LTimeMode,
17349            timePT: *const A_Time,
17350            is_activePB: *mut A_Boolean,
17351        ) -> A_Err,
17352    >,
17353    pub AEGP_IsLayerUsedAsTrackMatte: ::std::option::Option<
17354        unsafe extern "C" fn(
17355            layerH: AEGP_LayerH,
17356            fill_must_be_activeB: A_Boolean,
17357            is_track_mattePB: *mut A_Boolean,
17358        ) -> A_Err,
17359    >,
17360    pub AEGP_DoesLayerHaveTrackMatte: ::std::option::Option<
17361        unsafe extern "C" fn(layerH: AEGP_LayerH, has_track_mattePB: *mut A_Boolean) -> A_Err,
17362    >,
17363    pub AEGP_ConvertCompToLayerTime: ::std::option::Option<
17364        unsafe extern "C" fn(
17365            layerH: AEGP_LayerH,
17366            comp_timeP: *const A_Time,
17367            layer_timeP: *mut A_Time,
17368        ) -> A_Err,
17369    >,
17370    pub AEGP_GetLayerDancingRandValue: ::std::option::Option<
17371        unsafe extern "C" fn(
17372            layerH: AEGP_LayerH,
17373            comp_timePT: *const A_Time,
17374            rand_valuePL: *mut A_long,
17375        ) -> A_Err,
17376    >,
17377    pub AEGP_GetLayerID: ::std::option::Option<
17378        unsafe extern "C" fn(layerH: AEGP_LayerH, id_valP: *mut AEGP_LayerIDVal) -> A_Err,
17379    >,
17380    pub AEGP_GetLayerToWorldXform: ::std::option::Option<
17381        unsafe extern "C" fn(
17382            aegp_layerH: AEGP_LayerH,
17383            comp_timeP: *const A_Time,
17384            tranform: *mut A_Matrix4,
17385        ) -> A_Err,
17386    >,
17387    pub AEGP_GetLayerToWorldXformFromView: ::std::option::Option<
17388        unsafe extern "C" fn(
17389            aegp_layerH: AEGP_LayerH,
17390            view_timeP: *const A_Time,
17391            comp_timeP: *const A_Time,
17392            tranform: *mut A_Matrix4,
17393        ) -> A_Err,
17394    >,
17395    pub AEGP_SetLayerName: ::std::option::Option<
17396        unsafe extern "C" fn(aegp_layerH: AEGP_LayerH, new_nameZ: *const A_char) -> A_Err,
17397    >,
17398}
17399#[repr(C)]
17400#[derive(Debug, Copy, Clone)]
17401pub struct AEGP_LayerSuite2 {
17402    pub AEGP_GetCompNumLayers: ::std::option::Option<
17403        unsafe extern "C" fn(compH: AEGP_CompH, num_layersPL: *mut A_long) -> A_Err,
17404    >,
17405    pub AEGP_GetCompLayerByIndex: ::std::option::Option<
17406        unsafe extern "C" fn(
17407            compH: AEGP_CompH,
17408            layer_indexL: A_long,
17409            layerPH: *mut AEGP_LayerH,
17410        ) -> A_Err,
17411    >,
17412    pub AEGP_GetActiveLayer:
17413        ::std::option::Option<unsafe extern "C" fn(layerPH: *mut AEGP_LayerH) -> A_Err>,
17414    pub AEGP_GetLayerIndex: ::std::option::Option<
17415        unsafe extern "C" fn(layerH: AEGP_LayerH, layer_indexPL: *mut A_long) -> A_Err,
17416    >,
17417    pub AEGP_GetLayerSourceItem: ::std::option::Option<
17418        unsafe extern "C" fn(layerH: AEGP_LayerH, source_itemPH: *mut AEGP_ItemH) -> A_Err,
17419    >,
17420    pub AEGP_GetLayerParentComp: ::std::option::Option<
17421        unsafe extern "C" fn(layerH: AEGP_LayerH, compPH: *mut AEGP_CompH) -> A_Err,
17422    >,
17423    pub AEGP_GetLayerName: ::std::option::Option<
17424        unsafe extern "C" fn(
17425            layerH: AEGP_LayerH,
17426            layer_nameZ0: *mut A_char,
17427            source_nameZ0: *mut A_char,
17428        ) -> A_Err,
17429    >,
17430    pub AEGP_GetLayerQuality: ::std::option::Option<
17431        unsafe extern "C" fn(layerH: AEGP_LayerH, qualityP: *mut AEGP_LayerQuality) -> A_Err,
17432    >,
17433    pub AEGP_SetLayerQuality: ::std::option::Option<
17434        unsafe extern "C" fn(layerH: AEGP_LayerH, quality: AEGP_LayerQuality) -> A_Err,
17435    >,
17436    pub AEGP_GetLayerFlags: ::std::option::Option<
17437        unsafe extern "C" fn(layerH: AEGP_LayerH, layer_flagsP: *mut AEGP_LayerFlags) -> A_Err,
17438    >,
17439    pub AEGP_SetLayerFlag: ::std::option::Option<
17440        unsafe extern "C" fn(
17441            layerH: AEGP_LayerH,
17442            single_flag: AEGP_LayerFlags,
17443            valueB: A_Boolean,
17444        ) -> A_Err,
17445    >,
17446    pub AEGP_IsLayerVideoReallyOn: ::std::option::Option<
17447        unsafe extern "C" fn(layerH: AEGP_LayerH, onPB: *mut A_Boolean) -> A_Err,
17448    >,
17449    pub AEGP_IsLayerAudioReallyOn: ::std::option::Option<
17450        unsafe extern "C" fn(layerH: AEGP_LayerH, onPB: *mut A_Boolean) -> A_Err,
17451    >,
17452    pub AEGP_GetLayerCurrentTime: ::std::option::Option<
17453        unsafe extern "C" fn(
17454            layerH: AEGP_LayerH,
17455            time_mode: AEGP_LTimeMode,
17456            curr_timePT: *mut A_Time,
17457        ) -> A_Err,
17458    >,
17459    pub AEGP_GetLayerInPoint: ::std::option::Option<
17460        unsafe extern "C" fn(
17461            layerH: AEGP_LayerH,
17462            time_mode: AEGP_LTimeMode,
17463            in_pointPT: *mut A_Time,
17464        ) -> A_Err,
17465    >,
17466    pub AEGP_GetLayerDuration: ::std::option::Option<
17467        unsafe extern "C" fn(
17468            layerH: AEGP_LayerH,
17469            time_mode: AEGP_LTimeMode,
17470            durationPT: *mut A_Time,
17471        ) -> A_Err,
17472    >,
17473    pub AEGP_SetLayerInPointAndDuration: ::std::option::Option<
17474        unsafe extern "C" fn(
17475            layerH: AEGP_LayerH,
17476            time_mode: AEGP_LTimeMode,
17477            in_pointPT: *const A_Time,
17478            durationPT: *const A_Time,
17479        ) -> A_Err,
17480    >,
17481    pub AEGP_GetLayerOffset: ::std::option::Option<
17482        unsafe extern "C" fn(layerH: AEGP_LayerH, offsetPT: *mut A_Time) -> A_Err,
17483    >,
17484    pub AEGP_SetLayerOffset: ::std::option::Option<
17485        unsafe extern "C" fn(layerH: AEGP_LayerH, offsetPT: *const A_Time) -> A_Err,
17486    >,
17487    pub AEGP_GetLayerStretch: ::std::option::Option<
17488        unsafe extern "C" fn(layerH: AEGP_LayerH, stretchPRt: *mut A_Ratio) -> A_Err,
17489    >,
17490    pub AEGP_SetLayerStretch: ::std::option::Option<
17491        unsafe extern "C" fn(layerH: AEGP_LayerH, stretchPRt: *const A_Ratio) -> A_Err,
17492    >,
17493    pub AEGP_GetLayerTransferMode: ::std::option::Option<
17494        unsafe extern "C" fn(
17495            layerH: AEGP_LayerH,
17496            transfer_modeP: *mut AEGP_LayerTransferMode,
17497        ) -> A_Err,
17498    >,
17499    pub AEGP_SetLayerTransferMode: ::std::option::Option<
17500        unsafe extern "C" fn(
17501            layerH: AEGP_LayerH,
17502            transfer_modeP: *const AEGP_LayerTransferMode,
17503        ) -> A_Err,
17504    >,
17505    pub AEGP_IsAddLayerValid: ::std::option::Option<
17506        unsafe extern "C" fn(
17507            item_to_addH: AEGP_ItemH,
17508            into_compH: AEGP_CompH,
17509            validPB: *mut A_Boolean,
17510        ) -> A_Err,
17511    >,
17512    pub AEGP_AddLayer: ::std::option::Option<
17513        unsafe extern "C" fn(
17514            item_to_addH: AEGP_ItemH,
17515            into_compH: AEGP_CompH,
17516            added_layerPH0: *mut AEGP_LayerH,
17517        ) -> A_Err,
17518    >,
17519    pub AEGP_ReorderLayer: ::std::option::Option<
17520        unsafe extern "C" fn(layerH: AEGP_LayerH, layer_indexL: A_long) -> A_Err,
17521    >,
17522    pub AEGP_GetLayerMaskedBounds: ::std::option::Option<
17523        unsafe extern "C" fn(
17524            layerH: AEGP_LayerH,
17525            time_mode: AEGP_LTimeMode,
17526            timePT: *const A_Time,
17527            boundsPR: *mut A_FloatRect,
17528        ) -> A_Err,
17529    >,
17530    pub AEGP_GetLayerObjectType: ::std::option::Option<
17531        unsafe extern "C" fn(layerH: AEGP_LayerH, object_type: *mut AEGP_ObjectType) -> A_Err,
17532    >,
17533    pub AEGP_IsLayer3D: ::std::option::Option<
17534        unsafe extern "C" fn(layerH: AEGP_LayerH, is_3DPB: *mut A_Boolean) -> A_Err,
17535    >,
17536    pub AEGP_IsLayer2D: ::std::option::Option<
17537        unsafe extern "C" fn(layerH: AEGP_LayerH, is_2DPB: *mut A_Boolean) -> A_Err,
17538    >,
17539    pub AEGP_IsVideoActive: ::std::option::Option<
17540        unsafe extern "C" fn(
17541            layerH: AEGP_LayerH,
17542            time_mode: AEGP_LTimeMode,
17543            timePT: *const A_Time,
17544            is_activePB: *mut A_Boolean,
17545        ) -> A_Err,
17546    >,
17547    pub AEGP_IsLayerUsedAsTrackMatte: ::std::option::Option<
17548        unsafe extern "C" fn(
17549            layerH: AEGP_LayerH,
17550            fill_must_be_activeB: A_Boolean,
17551            is_track_mattePB: *mut A_Boolean,
17552        ) -> A_Err,
17553    >,
17554    pub AEGP_DoesLayerHaveTrackMatte: ::std::option::Option<
17555        unsafe extern "C" fn(layerH: AEGP_LayerH, has_track_mattePB: *mut A_Boolean) -> A_Err,
17556    >,
17557    pub AEGP_ConvertCompToLayerTime: ::std::option::Option<
17558        unsafe extern "C" fn(
17559            layerH: AEGP_LayerH,
17560            comp_timePT: *const A_Time,
17561            layer_timePT: *mut A_Time,
17562        ) -> A_Err,
17563    >,
17564    pub AEGP_ConvertLayerToCompTime: ::std::option::Option<
17565        unsafe extern "C" fn(
17566            layerH: AEGP_LayerH,
17567            layer_timePT: *const A_Time,
17568            comp_timePT: *mut A_Time,
17569        ) -> A_Err,
17570    >,
17571    pub AEGP_GetLayerDancingRandValue: ::std::option::Option<
17572        unsafe extern "C" fn(
17573            layerH: AEGP_LayerH,
17574            comp_timePT: *const A_Time,
17575            rand_valuePL: *mut A_long,
17576        ) -> A_Err,
17577    >,
17578    pub AEGP_GetLayerID: ::std::option::Option<
17579        unsafe extern "C" fn(layerH: AEGP_LayerH, id_valP: *mut AEGP_LayerIDVal) -> A_Err,
17580    >,
17581    pub AEGP_GetLayerToWorldXform: ::std::option::Option<
17582        unsafe extern "C" fn(
17583            aegp_layerH: AEGP_LayerH,
17584            comp_timeP: *const A_Time,
17585            tranform: *mut A_Matrix4,
17586        ) -> A_Err,
17587    >,
17588    pub AEGP_GetLayerToWorldXformFromView: ::std::option::Option<
17589        unsafe extern "C" fn(
17590            aegp_layerH: AEGP_LayerH,
17591            view_timeP: *const A_Time,
17592            comp_timeP: *const A_Time,
17593            tranform: *mut A_Matrix4,
17594        ) -> A_Err,
17595    >,
17596    pub AEGP_SetLayerName: ::std::option::Option<
17597        unsafe extern "C" fn(aegp_layerH: AEGP_LayerH, new_nameZ: *const A_char) -> A_Err,
17598    >,
17599    pub AEGP_GetLayerParent: ::std::option::Option<
17600        unsafe extern "C" fn(layerH: AEGP_LayerH, parent_layerPH: *mut AEGP_LayerH) -> A_Err,
17601    >,
17602    pub AEGP_SetLayerParent: ::std::option::Option<
17603        unsafe extern "C" fn(layerH: AEGP_LayerH, parent_layerH: AEGP_LayerH) -> A_Err,
17604    >,
17605}
17606#[repr(C)]
17607#[derive(Debug, Copy, Clone)]
17608pub struct AEGP_EffectSuite1 {
17609    pub AEGP_GetLayerNumEffects: ::std::option::Option<
17610        unsafe extern "C" fn(layerH: AEGP_LayerH, num_effectsPL: *mut A_long) -> A_Err,
17611    >,
17612    pub AEGP_GetLayerEffectByIndex: ::std::option::Option<
17613        unsafe extern "C" fn(
17614            aegp_plugin_id: AEGP_PluginID,
17615            layerH: AEGP_LayerH,
17616            layer_effect_indexL: AEGP_EffectIndex,
17617            effectPH: *mut AEGP_EffectRefH,
17618        ) -> A_Err,
17619    >,
17620    pub AEGP_GetInstalledKeyFromLayerEffect: ::std::option::Option<
17621        unsafe extern "C" fn(
17622            effect_refH: AEGP_EffectRefH,
17623            installed_effect_keyP: *mut AEGP_InstalledEffectKey,
17624        ) -> A_Err,
17625    >,
17626    pub AEGP_GetEffectParamUnionByIndex: ::std::option::Option<
17627        unsafe extern "C" fn(
17628            aegp_plugin_id: AEGP_PluginID,
17629            effect_refH: AEGP_EffectRefH,
17630            param_index: PF_ParamIndex,
17631            param_typeP: *mut PF_ParamType,
17632            uP0: *mut PF_ParamDefUnion,
17633        ) -> A_Err,
17634    >,
17635    pub AEGP_GetEffectFlags: ::std::option::Option<
17636        unsafe extern "C" fn(
17637            effect_refH: AEGP_EffectRefH,
17638            effect_flagsP: *mut AEGP_EffectFlags,
17639        ) -> A_Err,
17640    >,
17641    pub AEGP_SetEffectFlags: ::std::option::Option<
17642        unsafe extern "C" fn(
17643            effect_refH: AEGP_EffectRefH,
17644            effect_flags_set_mask: AEGP_EffectFlags,
17645            effect_flags: AEGP_EffectFlags,
17646        ) -> A_Err,
17647    >,
17648    pub AEGP_ReorderEffect: ::std::option::Option<
17649        unsafe extern "C" fn(effect_refH: AEGP_EffectRefH, effect_indexL: A_long) -> A_Err,
17650    >,
17651    pub AEGP_EffectCallGeneric: ::std::option::Option<
17652        unsafe extern "C" fn(
17653            aegp_plugin_id: AEGP_PluginID,
17654            effect_refH: AEGP_EffectRefH,
17655            timePT: *const A_Time,
17656            effect_extraPV: *mut ::std::os::raw::c_void,
17657        ) -> A_Err,
17658    >,
17659    pub AEGP_DisposeEffect:
17660        ::std::option::Option<unsafe extern "C" fn(effect_refH: AEGP_EffectRefH) -> A_Err>,
17661    pub AEGP_ApplyEffect: ::std::option::Option<
17662        unsafe extern "C" fn(
17663            aegp_plugin_id: AEGP_PluginID,
17664            layerH: AEGP_LayerH,
17665            installed_effect_key: AEGP_InstalledEffectKey,
17666            effect_refPH: *mut AEGP_EffectRefH,
17667        ) -> A_Err,
17668    >,
17669    pub AEGP_DeleteLayerEffect:
17670        ::std::option::Option<unsafe extern "C" fn(effect_refH: AEGP_EffectRefH) -> A_Err>,
17671    pub AEGP_GetNumInstalledEffects:
17672        ::std::option::Option<unsafe extern "C" fn(num_installed_effectsPL: *mut A_long) -> A_Err>,
17673    pub AEGP_GetNextInstalledEffect: ::std::option::Option<
17674        unsafe extern "C" fn(
17675            installed_effect_key: AEGP_InstalledEffectKey,
17676            next_effectPH: *mut AEGP_InstalledEffectKey,
17677        ) -> A_Err,
17678    >,
17679    pub AEGP_GetEffectName: ::std::option::Option<
17680        unsafe extern "C" fn(
17681            installed_effect_key: AEGP_InstalledEffectKey,
17682            nameZ: *mut A_char,
17683        ) -> A_Err,
17684    >,
17685    pub AEGP_GetEffectMatchName: ::std::option::Option<
17686        unsafe extern "C" fn(
17687            installed_effect_key: AEGP_InstalledEffectKey,
17688            match_nameZ: *mut A_char,
17689        ) -> A_Err,
17690    >,
17691    pub AEGP_GetEffectCategory: ::std::option::Option<
17692        unsafe extern "C" fn(
17693            installed_effect_key: AEGP_InstalledEffectKey,
17694            categoryZ: *mut A_char,
17695        ) -> A_Err,
17696    >,
17697}
17698#[repr(C)]
17699#[derive(Debug, Copy, Clone)]
17700pub struct AEGP_EffectSuite2 {
17701    pub AEGP_GetLayerNumEffects: ::std::option::Option<
17702        unsafe extern "C" fn(layerH: AEGP_LayerH, num_effectsPL: *mut A_long) -> A_Err,
17703    >,
17704    pub AEGP_GetLayerEffectByIndex: ::std::option::Option<
17705        unsafe extern "C" fn(
17706            aegp_plugin_id: AEGP_PluginID,
17707            layerH: AEGP_LayerH,
17708            layer_effect_indexL: AEGP_EffectIndex,
17709            effectPH: *mut AEGP_EffectRefH,
17710        ) -> A_Err,
17711    >,
17712    pub AEGP_GetInstalledKeyFromLayerEffect: ::std::option::Option<
17713        unsafe extern "C" fn(
17714            effect_refH: AEGP_EffectRefH,
17715            installed_effect_keyP: *mut AEGP_InstalledEffectKey,
17716        ) -> A_Err,
17717    >,
17718    pub AEGP_GetEffectParamUnionByIndex: ::std::option::Option<
17719        unsafe extern "C" fn(
17720            aegp_plugin_id: AEGP_PluginID,
17721            effect_refH: AEGP_EffectRefH,
17722            param_index: PF_ParamIndex,
17723            param_typeP: *mut PF_ParamType,
17724            uP0: *mut PF_ParamDefUnion,
17725        ) -> A_Err,
17726    >,
17727    pub AEGP_GetEffectFlags: ::std::option::Option<
17728        unsafe extern "C" fn(
17729            effect_refH: AEGP_EffectRefH,
17730            effect_flagsP: *mut AEGP_EffectFlags,
17731        ) -> A_Err,
17732    >,
17733    pub AEGP_SetEffectFlags: ::std::option::Option<
17734        unsafe extern "C" fn(
17735            effect_refH: AEGP_EffectRefH,
17736            effect_flags_set_mask: AEGP_EffectFlags,
17737            effect_flags: AEGP_EffectFlags,
17738        ) -> A_Err,
17739    >,
17740    pub AEGP_ReorderEffect: ::std::option::Option<
17741        unsafe extern "C" fn(effect_refH: AEGP_EffectRefH, effect_indexL: A_long) -> A_Err,
17742    >,
17743    pub AEGP_EffectCallGeneric: ::std::option::Option<
17744        unsafe extern "C" fn(
17745            aegp_plugin_id: AEGP_PluginID,
17746            effect_refH: AEGP_EffectRefH,
17747            timePT: *const A_Time,
17748            effect_extraPV: *mut ::std::os::raw::c_void,
17749        ) -> A_Err,
17750    >,
17751    pub AEGP_DisposeEffect:
17752        ::std::option::Option<unsafe extern "C" fn(effect_refH: AEGP_EffectRefH) -> A_Err>,
17753    pub AEGP_ApplyEffect: ::std::option::Option<
17754        unsafe extern "C" fn(
17755            aegp_plugin_id: AEGP_PluginID,
17756            layerH: AEGP_LayerH,
17757            installed_effect_key: AEGP_InstalledEffectKey,
17758            effect_refPH: *mut AEGP_EffectRefH,
17759        ) -> A_Err,
17760    >,
17761    pub AEGP_DeleteLayerEffect:
17762        ::std::option::Option<unsafe extern "C" fn(effect_refH: AEGP_EffectRefH) -> A_Err>,
17763    pub AEGP_GetNumInstalledEffects:
17764        ::std::option::Option<unsafe extern "C" fn(num_installed_effectsPL: *mut A_long) -> A_Err>,
17765    pub AEGP_GetNextInstalledEffect: ::std::option::Option<
17766        unsafe extern "C" fn(
17767            installed_effect_key: AEGP_InstalledEffectKey,
17768            next_effectPH: *mut AEGP_InstalledEffectKey,
17769        ) -> A_Err,
17770    >,
17771    pub AEGP_GetEffectName: ::std::option::Option<
17772        unsafe extern "C" fn(
17773            installed_effect_key: AEGP_InstalledEffectKey,
17774            nameZ: *mut A_char,
17775        ) -> A_Err,
17776    >,
17777    pub AEGP_GetEffectMatchName: ::std::option::Option<
17778        unsafe extern "C" fn(
17779            installed_effect_key: AEGP_InstalledEffectKey,
17780            match_nameZ: *mut A_char,
17781        ) -> A_Err,
17782    >,
17783    pub AEGP_GetEffectCategory: ::std::option::Option<
17784        unsafe extern "C" fn(
17785            installed_effect_key: AEGP_InstalledEffectKey,
17786            categoryZ: *mut A_char,
17787        ) -> A_Err,
17788    >,
17789    pub AEGP_DuplicateEffect: ::std::option::Option<
17790        unsafe extern "C" fn(
17791            original_effect_refH: AEGP_EffectRefH,
17792            duplicate_effect_refPH: *mut AEGP_EffectRefH,
17793        ) -> A_Err,
17794    >,
17795}
17796#[repr(C)]
17797#[derive(Debug, Copy, Clone)]
17798pub struct AEGP_EffectSuite3 {
17799    pub AEGP_GetLayerNumEffects: ::std::option::Option<
17800        unsafe extern "C" fn(layerH: AEGP_LayerH, num_effectsPL: *mut A_long) -> A_Err,
17801    >,
17802    pub AEGP_GetLayerEffectByIndex: ::std::option::Option<
17803        unsafe extern "C" fn(
17804            aegp_plugin_id: AEGP_PluginID,
17805            layerH: AEGP_LayerH,
17806            layer_effect_indexL: AEGP_EffectIndex,
17807            effectPH: *mut AEGP_EffectRefH,
17808        ) -> A_Err,
17809    >,
17810    pub AEGP_GetInstalledKeyFromLayerEffect: ::std::option::Option<
17811        unsafe extern "C" fn(
17812            effect_refH: AEGP_EffectRefH,
17813            installed_effect_keyP: *mut AEGP_InstalledEffectKey,
17814        ) -> A_Err,
17815    >,
17816    pub AEGP_GetEffectParamUnionByIndex: ::std::option::Option<
17817        unsafe extern "C" fn(
17818            aegp_plugin_id: AEGP_PluginID,
17819            effect_refH: AEGP_EffectRefH,
17820            param_index: PF_ParamIndex,
17821            param_typeP: *mut PF_ParamType,
17822            uP0: *mut PF_ParamDefUnion,
17823        ) -> A_Err,
17824    >,
17825    pub AEGP_GetEffectFlags: ::std::option::Option<
17826        unsafe extern "C" fn(
17827            effect_refH: AEGP_EffectRefH,
17828            effect_flagsP: *mut AEGP_EffectFlags,
17829        ) -> A_Err,
17830    >,
17831    pub AEGP_SetEffectFlags: ::std::option::Option<
17832        unsafe extern "C" fn(
17833            effect_refH: AEGP_EffectRefH,
17834            effect_flags_set_mask: AEGP_EffectFlags,
17835            effect_flags: AEGP_EffectFlags,
17836        ) -> A_Err,
17837    >,
17838    pub AEGP_ReorderEffect: ::std::option::Option<
17839        unsafe extern "C" fn(effect_refH: AEGP_EffectRefH, effect_indexL: A_long) -> A_Err,
17840    >,
17841    #[doc = " new command parameter addded. To get old behaviour pass in PF_Cmd_COMPLETELY_GENERAL for effect_command"]
17842    pub AEGP_EffectCallGeneric: ::std::option::Option<
17843        unsafe extern "C" fn(
17844            aegp_plugin_id: AEGP_PluginID,
17845            effect_refH: AEGP_EffectRefH,
17846            timePT: *const A_Time,
17847            effect_cmd: PF_Cmd,
17848            effect_extraPV: *mut ::std::os::raw::c_void,
17849        ) -> A_Err,
17850    >,
17851    pub AEGP_DisposeEffect:
17852        ::std::option::Option<unsafe extern "C" fn(effect_refH: AEGP_EffectRefH) -> A_Err>,
17853    pub AEGP_ApplyEffect: ::std::option::Option<
17854        unsafe extern "C" fn(
17855            aegp_plugin_id: AEGP_PluginID,
17856            layerH: AEGP_LayerH,
17857            installed_effect_key: AEGP_InstalledEffectKey,
17858            effect_refPH: *mut AEGP_EffectRefH,
17859        ) -> A_Err,
17860    >,
17861    pub AEGP_DeleteLayerEffect:
17862        ::std::option::Option<unsafe extern "C" fn(effect_refH: AEGP_EffectRefH) -> A_Err>,
17863    pub AEGP_GetNumInstalledEffects:
17864        ::std::option::Option<unsafe extern "C" fn(num_installed_effectsPL: *mut A_long) -> A_Err>,
17865    pub AEGP_GetNextInstalledEffect: ::std::option::Option<
17866        unsafe extern "C" fn(
17867            installed_effect_key: AEGP_InstalledEffectKey,
17868            next_effectPH: *mut AEGP_InstalledEffectKey,
17869        ) -> A_Err,
17870    >,
17871    pub AEGP_GetEffectName: ::std::option::Option<
17872        unsafe extern "C" fn(
17873            installed_effect_key: AEGP_InstalledEffectKey,
17874            nameZ: *mut A_char,
17875        ) -> A_Err,
17876    >,
17877    pub AEGP_GetEffectMatchName: ::std::option::Option<
17878        unsafe extern "C" fn(
17879            installed_effect_key: AEGP_InstalledEffectKey,
17880            match_nameZ: *mut A_char,
17881        ) -> A_Err,
17882    >,
17883    pub AEGP_GetEffectCategory: ::std::option::Option<
17884        unsafe extern "C" fn(
17885            installed_effect_key: AEGP_InstalledEffectKey,
17886            categoryZ: *mut A_char,
17887        ) -> A_Err,
17888    >,
17889    pub AEGP_DuplicateEffect: ::std::option::Option<
17890        unsafe extern "C" fn(
17891            original_effect_refH: AEGP_EffectRefH,
17892            duplicate_effect_refPH: *mut AEGP_EffectRefH,
17893        ) -> A_Err,
17894    >,
17895}
17896#[repr(C)]
17897#[derive(Debug, Copy, Clone)]
17898pub struct AEGP_EffectSuite4 {
17899    pub AEGP_GetLayerNumEffects: ::std::option::Option<
17900        unsafe extern "C" fn(layerH: AEGP_LayerH, num_effectsPL: *mut A_long) -> A_Err,
17901    >,
17902    pub AEGP_GetLayerEffectByIndex: ::std::option::Option<
17903        unsafe extern "C" fn(
17904            aegp_plugin_id: AEGP_PluginID,
17905            layerH: AEGP_LayerH,
17906            layer_effect_indexL: AEGP_EffectIndex,
17907            effectPH: *mut AEGP_EffectRefH,
17908        ) -> A_Err,
17909    >,
17910    pub AEGP_GetInstalledKeyFromLayerEffect: ::std::option::Option<
17911        unsafe extern "C" fn(
17912            effect_refH: AEGP_EffectRefH,
17913            installed_effect_keyP: *mut AEGP_InstalledEffectKey,
17914        ) -> A_Err,
17915    >,
17916    pub AEGP_GetEffectParamUnionByIndex: ::std::option::Option<
17917        unsafe extern "C" fn(
17918            aegp_plugin_id: AEGP_PluginID,
17919            effect_refH: AEGP_EffectRefH,
17920            param_index: PF_ParamIndex,
17921            param_typeP: *mut PF_ParamType,
17922            uP0: *mut PF_ParamDefUnion,
17923        ) -> A_Err,
17924    >,
17925    pub AEGP_GetEffectFlags: ::std::option::Option<
17926        unsafe extern "C" fn(
17927            effect_refH: AEGP_EffectRefH,
17928            effect_flagsP: *mut AEGP_EffectFlags,
17929        ) -> A_Err,
17930    >,
17931    pub AEGP_SetEffectFlags: ::std::option::Option<
17932        unsafe extern "C" fn(
17933            effect_refH: AEGP_EffectRefH,
17934            effect_flags_set_mask: AEGP_EffectFlags,
17935            effect_flags: AEGP_EffectFlags,
17936        ) -> A_Err,
17937    >,
17938    pub AEGP_ReorderEffect: ::std::option::Option<
17939        unsafe extern "C" fn(effect_refH: AEGP_EffectRefH, effect_indexL: A_long) -> A_Err,
17940    >,
17941    #[doc = " new command parameter addded. To get old behaviour pass in PF_Cmd_COMPLETELY_GENERAL for effect_command"]
17942    pub AEGP_EffectCallGeneric: ::std::option::Option<
17943        unsafe extern "C" fn(
17944            aegp_plugin_id: AEGP_PluginID,
17945            effect_refH: AEGP_EffectRefH,
17946            timePT: *const A_Time,
17947            effect_cmd: PF_Cmd,
17948            effect_extraPV: *mut ::std::os::raw::c_void,
17949        ) -> A_Err,
17950    >,
17951    pub AEGP_DisposeEffect:
17952        ::std::option::Option<unsafe extern "C" fn(effect_refH: AEGP_EffectRefH) -> A_Err>,
17953    pub AEGP_ApplyEffect: ::std::option::Option<
17954        unsafe extern "C" fn(
17955            aegp_plugin_id: AEGP_PluginID,
17956            layerH: AEGP_LayerH,
17957            installed_effect_key: AEGP_InstalledEffectKey,
17958            effect_refPH: *mut AEGP_EffectRefH,
17959        ) -> A_Err,
17960    >,
17961    pub AEGP_DeleteLayerEffect:
17962        ::std::option::Option<unsafe extern "C" fn(effect_refH: AEGP_EffectRefH) -> A_Err>,
17963    pub AEGP_GetNumInstalledEffects:
17964        ::std::option::Option<unsafe extern "C" fn(num_installed_effectsPL: *mut A_long) -> A_Err>,
17965    pub AEGP_GetNextInstalledEffect: ::std::option::Option<
17966        unsafe extern "C" fn(
17967            installed_effect_key: AEGP_InstalledEffectKey,
17968            next_effectPH: *mut AEGP_InstalledEffectKey,
17969        ) -> A_Err,
17970    >,
17971    pub AEGP_GetEffectName: ::std::option::Option<
17972        unsafe extern "C" fn(
17973            installed_effect_key: AEGP_InstalledEffectKey,
17974            nameZ: *mut A_char,
17975        ) -> A_Err,
17976    >,
17977    pub AEGP_GetEffectMatchName: ::std::option::Option<
17978        unsafe extern "C" fn(
17979            installed_effect_key: AEGP_InstalledEffectKey,
17980            utf8_match_nameZ: *mut A_char,
17981        ) -> A_Err,
17982    >,
17983    pub AEGP_GetEffectCategory: ::std::option::Option<
17984        unsafe extern "C" fn(
17985            installed_effect_key: AEGP_InstalledEffectKey,
17986            categoryZ: *mut A_char,
17987        ) -> A_Err,
17988    >,
17989    pub AEGP_DuplicateEffect: ::std::option::Option<
17990        unsafe extern "C" fn(
17991            original_effect_refH: AEGP_EffectRefH,
17992            duplicate_effect_refPH: *mut AEGP_EffectRefH,
17993        ) -> A_Err,
17994    >,
17995    #[doc = " new in AE 13.0: effect masks"]
17996    pub AEGP_NumEffectMask: ::std::option::Option<
17997        unsafe extern "C" fn(effect_refH: AEGP_EffectRefH, num_masksPL: *mut A_u_long) -> A_Err,
17998    >,
17999    pub AEGP_GetEffectMaskID: ::std::option::Option<
18000        unsafe extern "C" fn(
18001            effect_refH: AEGP_EffectRefH,
18002            mask_indexL: A_u_long,
18003            id_valP: *mut AEGP_MaskIDVal,
18004        ) -> A_Err,
18005    >,
18006    pub AEGP_AddEffectMask: ::std::option::Option<
18007        unsafe extern "C" fn(
18008            effect_refH: AEGP_EffectRefH,
18009            id_val: AEGP_MaskIDVal,
18010            streamPH0: *mut AEGP_StreamRefH,
18011        ) -> A_Err,
18012    >,
18013    pub AEGP_RemoveEffectMask: ::std::option::Option<
18014        unsafe extern "C" fn(effect_refH: AEGP_EffectRefH, id_val: AEGP_MaskIDVal) -> A_Err,
18015    >,
18016    pub AEGP_SetEffectMask: ::std::option::Option<
18017        unsafe extern "C" fn(
18018            effect_refH: AEGP_EffectRefH,
18019            mask_indexL: A_u_long,
18020            id_val: AEGP_MaskIDVal,
18021            streamPH0: *mut AEGP_StreamRefH,
18022        ) -> A_Err,
18023    >,
18024}
18025#[repr(C)]
18026#[derive(Debug, Copy, Clone)]
18027pub struct AEGP_LightSuite1 {
18028    pub AEGP_GetLightType: ::std::option::Option<
18029        unsafe extern "C" fn(light_layerH: AEGP_LayerH, light_typeP: *mut AEGP_LightType) -> A_Err,
18030    >,
18031}
18032#[repr(C)]
18033#[derive(Debug, Copy, Clone)]
18034pub struct AEGP_MaskSuite5 {
18035    pub AEGP_GetLayerNumMasks: ::std::option::Option<
18036        unsafe extern "C" fn(aegp_layerH: AEGP_LayerH, num_masksPL: *mut A_long) -> A_Err,
18037    >,
18038    pub AEGP_GetLayerMaskByIndex: ::std::option::Option<
18039        unsafe extern "C" fn(
18040            aegp_layerH: AEGP_LayerH,
18041            mask_indexL: AEGP_MaskIndex,
18042            maskPH: *mut AEGP_MaskRefH,
18043        ) -> A_Err,
18044    >,
18045    pub AEGP_DisposeMask:
18046        ::std::option::Option<unsafe extern "C" fn(mask_refH: AEGP_MaskRefH) -> A_Err>,
18047    pub AEGP_GetMaskInvert: ::std::option::Option<
18048        unsafe extern "C" fn(mask_refH: AEGP_MaskRefH, invertPB: *mut A_Boolean) -> A_Err,
18049    >,
18050    pub AEGP_SetMaskInvert: ::std::option::Option<
18051        unsafe extern "C" fn(mask_refH: AEGP_MaskRefH, invertB: A_Boolean) -> A_Err,
18052    >,
18053    pub AEGP_GetMaskMode: ::std::option::Option<
18054        unsafe extern "C" fn(mask_refH: AEGP_MaskRefH, modeP: *mut PF_MaskMode) -> A_Err,
18055    >,
18056    pub AEGP_SetMaskMode: ::std::option::Option<
18057        unsafe extern "C" fn(maskH: AEGP_MaskRefH, mode: PF_MaskMode) -> A_Err,
18058    >,
18059    pub AEGP_GetMaskMotionBlurState: ::std::option::Option<
18060        unsafe extern "C" fn(mask_refH: AEGP_MaskRefH, blur_stateP: *mut AEGP_MaskMBlur) -> A_Err,
18061    >,
18062    pub AEGP_SetMaskMotionBlurState: ::std::option::Option<
18063        unsafe extern "C" fn(mask_refH: AEGP_MaskRefH, blur_state: AEGP_MaskMBlur) -> A_Err,
18064    >,
18065    pub AEGP_GetMaskID: ::std::option::Option<
18066        unsafe extern "C" fn(mask_refH: AEGP_MaskRefH, id_valP: *mut AEGP_MaskIDVal) -> A_Err,
18067    >,
18068    pub AEGP_CreateNewMask: ::std::option::Option<
18069        unsafe extern "C" fn(
18070            layerH: AEGP_LayerH,
18071            mask_refPH: *mut AEGP_MaskRefH,
18072            mask_indexPL0: *mut A_long,
18073        ) -> A_Err,
18074    >,
18075    pub AEGP_DeleteMaskFromLayer:
18076        ::std::option::Option<unsafe extern "C" fn(mask_refH: AEGP_MaskRefH) -> A_Err>,
18077    pub AEGP_GetMaskColor: ::std::option::Option<
18078        unsafe extern "C" fn(mask_refH: AEGP_MaskRefH, colorP: *mut AEGP_ColorVal) -> A_Err,
18079    >,
18080    pub AEGP_SetMaskColor: ::std::option::Option<
18081        unsafe extern "C" fn(mask_refH: AEGP_MaskRefH, colorP: *const AEGP_ColorVal) -> A_Err,
18082    >,
18083    pub AEGP_GetMaskLockState: ::std::option::Option<
18084        unsafe extern "C" fn(mask_refH: AEGP_MaskRefH, is_lockedPB: *mut A_Boolean) -> A_Err,
18085    >,
18086    pub AEGP_SetMaskLockState: ::std::option::Option<
18087        unsafe extern "C" fn(mask_refH: AEGP_MaskRefH, lockB: A_Boolean) -> A_Err,
18088    >,
18089    pub AEGP_GetMaskIsRotoBezier: ::std::option::Option<
18090        unsafe extern "C" fn(mask_refH: AEGP_MaskRefH, is_roto_bezierPB: *mut A_Boolean) -> A_Err,
18091    >,
18092    pub AEGP_SetMaskIsRotoBezier: ::std::option::Option<
18093        unsafe extern "C" fn(mask_refH: AEGP_MaskRefH, is_roto_bezierB: A_Boolean) -> A_Err,
18094    >,
18095    pub AEGP_DuplicateMask: ::std::option::Option<
18096        unsafe extern "C" fn(
18097            orig_mask_refH: AEGP_MaskRefH,
18098            duplicate_mask_refPH: *mut AEGP_MaskRefH,
18099        ) -> A_Err,
18100    >,
18101}
18102#[repr(C)]
18103#[derive(Debug, Copy, Clone)]
18104pub struct AEGP_MaskSuite4 {
18105    pub AEGP_GetLayerNumMasks: ::std::option::Option<
18106        unsafe extern "C" fn(aegp_layerH: AEGP_LayerH, num_masksPL: *mut A_long) -> A_Err,
18107    >,
18108    pub AEGP_GetLayerMaskByIndex: ::std::option::Option<
18109        unsafe extern "C" fn(
18110            aegp_layerH: AEGP_LayerH,
18111            mask_indexL: AEGP_MaskIndex,
18112            maskPH: *mut AEGP_MaskRefH,
18113        ) -> A_Err,
18114    >,
18115    pub AEGP_DisposeMask:
18116        ::std::option::Option<unsafe extern "C" fn(mask_refH: AEGP_MaskRefH) -> A_Err>,
18117    pub AEGP_GetMaskInvert: ::std::option::Option<
18118        unsafe extern "C" fn(mask_refH: AEGP_MaskRefH, invertPB: *mut A_Boolean) -> A_Err,
18119    >,
18120    pub AEGP_SetMaskInvert: ::std::option::Option<
18121        unsafe extern "C" fn(mask_refH: AEGP_MaskRefH, invertB: A_Boolean) -> A_Err,
18122    >,
18123    pub AEGP_GetMaskMode: ::std::option::Option<
18124        unsafe extern "C" fn(mask_refH: AEGP_MaskRefH, modeP: *mut PF_MaskMode) -> A_Err,
18125    >,
18126    pub AEGP_SetMaskMode: ::std::option::Option<
18127        unsafe extern "C" fn(maskH: AEGP_MaskRefH, mode: PF_MaskMode) -> A_Err,
18128    >,
18129    pub AEGP_GetMaskMotionBlurState: ::std::option::Option<
18130        unsafe extern "C" fn(mask_refH: AEGP_MaskRefH, blur_stateP: *mut AEGP_MaskMBlur) -> A_Err,
18131    >,
18132    pub AEGP_SetMaskMotionBlurState: ::std::option::Option<
18133        unsafe extern "C" fn(mask_refH: AEGP_MaskRefH, blur_state: AEGP_MaskMBlur) -> A_Err,
18134    >,
18135    pub AEGP_GetMaskName: ::std::option::Option<
18136        unsafe extern "C" fn(mask_refH: AEGP_MaskRefH, nameZ: *mut A_char) -> A_Err,
18137    >,
18138    pub AEGP_SetMaskName: ::std::option::Option<
18139        unsafe extern "C" fn(mask_refH: AEGP_MaskRefH, nameZ: *mut A_char) -> A_Err,
18140    >,
18141    pub AEGP_GetMaskID: ::std::option::Option<
18142        unsafe extern "C" fn(mask_refH: AEGP_MaskRefH, id_valP: *mut AEGP_MaskIDVal) -> A_Err,
18143    >,
18144    pub AEGP_CreateNewMask: ::std::option::Option<
18145        unsafe extern "C" fn(
18146            layerH: AEGP_LayerH,
18147            mask_refPH: *mut AEGP_MaskRefH,
18148            mask_indexPL0: *mut A_long,
18149        ) -> A_Err,
18150    >,
18151    pub AEGP_DeleteMaskFromLayer:
18152        ::std::option::Option<unsafe extern "C" fn(mask_refH: AEGP_MaskRefH) -> A_Err>,
18153    pub AEGP_GetMaskColor: ::std::option::Option<
18154        unsafe extern "C" fn(mask_refH: AEGP_MaskRefH, colorP: *mut AEGP_ColorVal) -> A_Err,
18155    >,
18156    pub AEGP_SetMaskColor: ::std::option::Option<
18157        unsafe extern "C" fn(mask_refH: AEGP_MaskRefH, colorP: *const AEGP_ColorVal) -> A_Err,
18158    >,
18159    pub AEGP_GetMaskLockState: ::std::option::Option<
18160        unsafe extern "C" fn(mask_refH: AEGP_MaskRefH, is_lockedPB: *mut A_Boolean) -> A_Err,
18161    >,
18162    pub AEGP_SetMaskLockState: ::std::option::Option<
18163        unsafe extern "C" fn(mask_refH: AEGP_MaskRefH, lockB: A_Boolean) -> A_Err,
18164    >,
18165    pub AEGP_GetMaskIsRotoBezier: ::std::option::Option<
18166        unsafe extern "C" fn(mask_refH: AEGP_MaskRefH, is_roto_bezierPB: *mut A_Boolean) -> A_Err,
18167    >,
18168    pub AEGP_SetMaskIsRotoBezier: ::std::option::Option<
18169        unsafe extern "C" fn(mask_refH: AEGP_MaskRefH, is_roto_bezierB: A_Boolean) -> A_Err,
18170    >,
18171    pub AEGP_DuplicateMask: ::std::option::Option<
18172        unsafe extern "C" fn(
18173            orig_mask_refH: AEGP_MaskRefH,
18174            duplicate_mask_refPH: *mut AEGP_MaskRefH,
18175        ) -> A_Err,
18176    >,
18177}
18178#[repr(C)]
18179#[derive(Debug, Copy, Clone)]
18180pub struct AEGP_MaskSuite3 {
18181    pub AEGP_GetLayerNumMasks: ::std::option::Option<
18182        unsafe extern "C" fn(aegp_layerH: AEGP_LayerH, num_masksPL: *mut A_long) -> A_Err,
18183    >,
18184    pub AEGP_GetLayerMaskByIndex: ::std::option::Option<
18185        unsafe extern "C" fn(
18186            aegp_layerH: AEGP_LayerH,
18187            mask_indexL: AEGP_MaskIndex,
18188            maskPH: *mut AEGP_MaskRefH,
18189        ) -> A_Err,
18190    >,
18191    pub AEGP_DisposeMask:
18192        ::std::option::Option<unsafe extern "C" fn(mask_refH: AEGP_MaskRefH) -> A_Err>,
18193    pub AEGP_GetMaskInvert: ::std::option::Option<
18194        unsafe extern "C" fn(mask_refH: AEGP_MaskRefH, invertPB: *mut A_Boolean) -> A_Err,
18195    >,
18196    pub AEGP_SetMaskInvert: ::std::option::Option<
18197        unsafe extern "C" fn(mask_refH: AEGP_MaskRefH, invertB: A_Boolean) -> A_Err,
18198    >,
18199    pub AEGP_GetMaskMode: ::std::option::Option<
18200        unsafe extern "C" fn(mask_refH: AEGP_MaskRefH, modeP: *mut PF_MaskMode) -> A_Err,
18201    >,
18202    pub AEGP_SetMaskMode: ::std::option::Option<
18203        unsafe extern "C" fn(maskH: AEGP_MaskRefH, mode: PF_MaskMode) -> A_Err,
18204    >,
18205    pub AEGP_GetMaskMotionBlurState: ::std::option::Option<
18206        unsafe extern "C" fn(mask_refH: AEGP_MaskRefH, blur_stateP: *mut AEGP_MaskMBlur) -> A_Err,
18207    >,
18208    pub AEGP_SetMaskMotionBlurState: ::std::option::Option<
18209        unsafe extern "C" fn(mask_refH: AEGP_MaskRefH, blur_state: AEGP_MaskMBlur) -> A_Err,
18210    >,
18211    pub AEGP_GetMaskName: ::std::option::Option<
18212        unsafe extern "C" fn(mask_refH: AEGP_MaskRefH, nameZ: *mut A_char) -> A_Err,
18213    >,
18214    pub AEGP_SetMaskName: ::std::option::Option<
18215        unsafe extern "C" fn(mask_refH: AEGP_MaskRefH, nameZ: *mut A_char) -> A_Err,
18216    >,
18217    pub AEGP_GetMaskID: ::std::option::Option<
18218        unsafe extern "C" fn(mask_refH: AEGP_MaskRefH, id_valP: *mut AEGP_MaskIDVal) -> A_Err,
18219    >,
18220    pub AEGP_CreateNewMask: ::std::option::Option<
18221        unsafe extern "C" fn(
18222            layerH: AEGP_LayerH,
18223            mask_refPH: *mut AEGP_MaskRefH,
18224            mask_indexPL0: *mut A_long,
18225        ) -> A_Err,
18226    >,
18227    pub AEGP_DeleteMaskFromLayer:
18228        ::std::option::Option<unsafe extern "C" fn(mask_refH: AEGP_MaskRefH) -> A_Err>,
18229    pub AEGP_GetMaskColor: ::std::option::Option<
18230        unsafe extern "C" fn(mask_refH: AEGP_MaskRefH, colorP: *mut AEGP_ColorVal) -> A_Err,
18231    >,
18232    pub AEGP_SetMaskColor: ::std::option::Option<
18233        unsafe extern "C" fn(mask_refH: AEGP_MaskRefH, colorP: *const AEGP_ColorVal) -> A_Err,
18234    >,
18235    pub AEGP_GetMaskLockState: ::std::option::Option<
18236        unsafe extern "C" fn(mask_refH: AEGP_MaskRefH, is_lockedPB: *mut A_Boolean) -> A_Err,
18237    >,
18238    pub AEGP_SetMaskLockState: ::std::option::Option<
18239        unsafe extern "C" fn(mask_refH: AEGP_MaskRefH, lockB: A_Boolean) -> A_Err,
18240    >,
18241    pub AEGP_GetMaskIsRotoBezier: ::std::option::Option<
18242        unsafe extern "C" fn(mask_refH: AEGP_MaskRefH, is_roto_bezierPB: *mut A_Boolean) -> A_Err,
18243    >,
18244    pub AEGP_SetMaskIsRotoBezier: ::std::option::Option<
18245        unsafe extern "C" fn(mask_refH: AEGP_MaskRefH, is_roto_bezierB: A_Boolean) -> A_Err,
18246    >,
18247}
18248#[repr(C)]
18249#[derive(Debug, Copy, Clone)]
18250pub struct AEGP_MaskSuite1 {
18251    pub AEGP_GetLayerNumMasks: ::std::option::Option<
18252        unsafe extern "C" fn(aegp_layerH: AEGP_LayerH, num_masksPL: *mut A_long) -> A_Err,
18253    >,
18254    pub AEGP_GetLayerMaskByIndex: ::std::option::Option<
18255        unsafe extern "C" fn(
18256            aegp_layerH: AEGP_LayerH,
18257            mask_indexL: AEGP_MaskIndex,
18258            maskPH: *mut AEGP_MaskRefH,
18259        ) -> A_Err,
18260    >,
18261    pub AEGP_DisposeMask:
18262        ::std::option::Option<unsafe extern "C" fn(mask_refH: AEGP_MaskRefH) -> A_Err>,
18263    pub AEGP_GetMaskInvert: ::std::option::Option<
18264        unsafe extern "C" fn(mask_refH: AEGP_MaskRefH, invertPB: *mut A_Boolean) -> A_Err,
18265    >,
18266    pub AEGP_GetMaskMode: ::std::option::Option<
18267        unsafe extern "C" fn(mask_refH: AEGP_MaskRefH, modeP: *mut PF_MaskMode) -> A_Err,
18268    >,
18269    pub AEGP_GetMaskName: ::std::option::Option<
18270        unsafe extern "C" fn(mask_refH: AEGP_MaskRefH, nameZ: *mut A_char) -> A_Err,
18271    >,
18272    pub AEGP_GetMaskID: ::std::option::Option<
18273        unsafe extern "C" fn(mask_refH: AEGP_MaskRefH, id_valP: *mut AEGP_MaskIDVal) -> A_Err,
18274    >,
18275    pub AEGP_CreateNewMask: ::std::option::Option<
18276        unsafe extern "C" fn(
18277            layerH: AEGP_LayerH,
18278            mask_refPH: *mut AEGP_MaskRefH,
18279            mask_indexPL0: *mut A_long,
18280        ) -> A_Err,
18281    >,
18282    pub AEGP_DeleteMaskFromLayer:
18283        ::std::option::Option<unsafe extern "C" fn(mask_refH: AEGP_MaskRefH) -> A_Err>,
18284}
18285#[repr(C)]
18286#[derive(Debug, Copy, Clone)]
18287pub struct AEGP_MaskSuite2 {
18288    pub AEGP_GetLayerNumMasks: ::std::option::Option<
18289        unsafe extern "C" fn(aegp_layerH: AEGP_LayerH, num_masksPL: *mut A_long) -> A_Err,
18290    >,
18291    pub AEGP_GetLayerMaskByIndex: ::std::option::Option<
18292        unsafe extern "C" fn(
18293            aegp_layerH: AEGP_LayerH,
18294            mask_indexL: AEGP_MaskIndex,
18295            maskPH: *mut AEGP_MaskRefH,
18296        ) -> A_Err,
18297    >,
18298    pub AEGP_DisposeMask:
18299        ::std::option::Option<unsafe extern "C" fn(mask_refH: AEGP_MaskRefH) -> A_Err>,
18300    pub AEGP_GetMaskInvert: ::std::option::Option<
18301        unsafe extern "C" fn(mask_refH: AEGP_MaskRefH, invertPB: *mut A_Boolean) -> A_Err,
18302    >,
18303    pub AEGP_SetMaskInvert: ::std::option::Option<
18304        unsafe extern "C" fn(mask_refH: AEGP_MaskRefH, invertB: A_Boolean) -> A_Err,
18305    >,
18306    pub AEGP_GetMaskMode: ::std::option::Option<
18307        unsafe extern "C" fn(mask_refH: AEGP_MaskRefH, modeP: *mut PF_MaskMode) -> A_Err,
18308    >,
18309    pub AEGP_SetMaskMode: ::std::option::Option<
18310        unsafe extern "C" fn(maskH: AEGP_MaskRefH, mode: PF_MaskMode) -> A_Err,
18311    >,
18312    pub AEGP_GetMaskMotionBlurState: ::std::option::Option<
18313        unsafe extern "C" fn(mask_refH: AEGP_MaskRefH, blur_stateP: *mut AEGP_MaskMBlur) -> A_Err,
18314    >,
18315    pub AEGP_SetMaskMotionBlurState: ::std::option::Option<
18316        unsafe extern "C" fn(mask_refH: AEGP_MaskRefH, blur_state: AEGP_MaskMBlur) -> A_Err,
18317    >,
18318    pub AEGP_GetMaskName: ::std::option::Option<
18319        unsafe extern "C" fn(mask_refH: AEGP_MaskRefH, nameZ: *mut A_char) -> A_Err,
18320    >,
18321    pub AEGP_GetMaskID: ::std::option::Option<
18322        unsafe extern "C" fn(mask_refH: AEGP_MaskRefH, id_valP: *mut AEGP_MaskIDVal) -> A_Err,
18323    >,
18324    pub AEGP_CreateNewMask: ::std::option::Option<
18325        unsafe extern "C" fn(
18326            layerH: AEGP_LayerH,
18327            mask_refPH: *mut AEGP_MaskRefH,
18328            mask_indexPL0: *mut A_long,
18329        ) -> A_Err,
18330    >,
18331    pub AEGP_DeleteMaskFromLayer:
18332        ::std::option::Option<unsafe extern "C" fn(mask_refH: AEGP_MaskRefH) -> A_Err>,
18333}
18334#[repr(C)]
18335#[derive(Debug, Copy, Clone)]
18336pub struct AEGP_CameraSuite1 {
18337    pub AEGP_GetCamera: ::std::option::Option<
18338        unsafe extern "C" fn(
18339            render_contextH: PR_RenderContextH,
18340            comp_timeP: *const A_Time,
18341            camera_layerPH: *mut AEGP_LayerH,
18342        ) -> A_Err,
18343    >,
18344    pub AEGP_GetCameraType: ::std::option::Option<
18345        unsafe extern "C" fn(
18346            camera_layerH: AEGP_LayerH,
18347            camera_typeP: *mut AEGP_CameraType,
18348        ) -> A_Err,
18349    >,
18350    pub AEGP_GetDefaultCameraDistanceToImagePlane: ::std::option::Option<
18351        unsafe extern "C" fn(compH: AEGP_CompH, dist_to_planePF: *mut A_FpLong) -> A_Err,
18352    >,
18353}
18354#[repr(C)]
18355#[derive(Debug, Copy, Clone)]
18356pub struct AEGP_ItemSuite8 {
18357    pub AEGP_GetFirstProjItem: ::std::option::Option<
18358        unsafe extern "C" fn(projectH: AEGP_ProjectH, itemPH: *mut AEGP_ItemH) -> A_Err,
18359    >,
18360    pub AEGP_GetNextProjItem: ::std::option::Option<
18361        unsafe extern "C" fn(
18362            projectH: AEGP_ProjectH,
18363            itemH: AEGP_ItemH,
18364            next_itemPH: *mut AEGP_ItemH,
18365        ) -> A_Err,
18366    >,
18367    pub AEGP_GetActiveItem:
18368        ::std::option::Option<unsafe extern "C" fn(itemPH: *mut AEGP_ItemH) -> A_Err>,
18369    pub AEGP_IsItemSelected: ::std::option::Option<
18370        unsafe extern "C" fn(itemH: AEGP_ItemH, selectedPB: *mut A_Boolean) -> A_Err,
18371    >,
18372    pub AEGP_SelectItem: ::std::option::Option<
18373        unsafe extern "C" fn(
18374            itemH: AEGP_ItemH,
18375            selectB: A_Boolean,
18376            deselect_othersB: A_Boolean,
18377        ) -> A_Err,
18378    >,
18379    pub AEGP_GetItemType: ::std::option::Option<
18380        unsafe extern "C" fn(itemH: AEGP_ItemH, item_typeP: *mut AEGP_ItemType) -> A_Err,
18381    >,
18382    pub AEGP_GetTypeName: ::std::option::Option<
18383        unsafe extern "C" fn(item_type: AEGP_ItemType, nameZ: *mut A_char) -> A_Err,
18384    >,
18385    pub AEGP_GetItemName: ::std::option::Option<
18386        unsafe extern "C" fn(
18387            pluginID: AEGP_PluginID,
18388            itemH: AEGP_ItemH,
18389            unicode_namePH: *mut AEGP_MemHandle,
18390        ) -> A_Err,
18391    >,
18392    pub AEGP_SetItemName: ::std::option::Option<
18393        unsafe extern "C" fn(itemH: AEGP_ItemH, nameZ: *const A_UTF16Char) -> A_Err,
18394    >,
18395    pub AEGP_GetItemID: ::std::option::Option<
18396        unsafe extern "C" fn(itemH: AEGP_ItemH, item_idPL: *mut A_long) -> A_Err,
18397    >,
18398    pub AEGP_GetItemFlags: ::std::option::Option<
18399        unsafe extern "C" fn(itemH: AEGP_ItemH, item_flagsP: *mut AEGP_ItemFlags) -> A_Err,
18400    >,
18401    pub AEGP_SetItemUseProxy: ::std::option::Option<
18402        unsafe extern "C" fn(itemH: AEGP_ItemH, use_proxyB: A_Boolean) -> A_Err,
18403    >,
18404    pub AEGP_GetItemParentFolder: ::std::option::Option<
18405        unsafe extern "C" fn(itemH: AEGP_ItemH, parent_folder_itemPH: *mut AEGP_ItemH) -> A_Err,
18406    >,
18407    pub AEGP_SetItemParentFolder: ::std::option::Option<
18408        unsafe extern "C" fn(itemH: AEGP_ItemH, parent_folder_itemH: AEGP_ItemH) -> A_Err,
18409    >,
18410    pub AEGP_GetItemDuration: ::std::option::Option<
18411        unsafe extern "C" fn(itemH: AEGP_ItemH, durationPT: *mut A_Time) -> A_Err,
18412    >,
18413    pub AEGP_GetItemCurrentTime: ::std::option::Option<
18414        unsafe extern "C" fn(itemH: AEGP_ItemH, curr_timePT: *mut A_Time) -> A_Err,
18415    >,
18416    pub AEGP_GetItemDimensions: ::std::option::Option<
18417        unsafe extern "C" fn(
18418            itemH: AEGP_ItemH,
18419            widthPL: *mut A_long,
18420            heightPL: *mut A_long,
18421        ) -> A_Err,
18422    >,
18423    pub AEGP_GetItemPixelAspectRatio: ::std::option::Option<
18424        unsafe extern "C" fn(itemH: AEGP_ItemH, pix_aspect_ratioPRt: *mut A_Ratio) -> A_Err,
18425    >,
18426    pub AEGP_DeleteItem: ::std::option::Option<unsafe extern "C" fn(itemH: AEGP_ItemH) -> A_Err>,
18427    pub AEGP_CreateNewFolder: ::std::option::Option<
18428        unsafe extern "C" fn(
18429            nameZ: *const A_UTF16Char,
18430            parent_folderH0: AEGP_ItemH,
18431            new_folderPH: *mut AEGP_ItemH,
18432        ) -> A_Err,
18433    >,
18434    pub AEGP_SetItemCurrentTime: ::std::option::Option<
18435        unsafe extern "C" fn(itemH: AEGP_ItemH, new_timePT: *const A_Time) -> A_Err,
18436    >,
18437    pub AEGP_GetItemCommentLength: ::std::option::Option<
18438        unsafe extern "C" fn(itemH: AEGP_ItemH, buf_sizePLu: *mut A_u_long) -> A_Err,
18439    >,
18440    pub AEGP_GetItemComment: ::std::option::Option<
18441        unsafe extern "C" fn(
18442            itemH: AEGP_ItemH,
18443            buf_sizeLu: A_u_long,
18444            commentZ: *mut A_char,
18445        ) -> A_Err,
18446    >,
18447    pub AEGP_SetItemComment: ::std::option::Option<
18448        unsafe extern "C" fn(itemH: AEGP_ItemH, commentZ: *const A_char) -> A_Err,
18449    >,
18450    pub AEGP_GetItemLabel: ::std::option::Option<
18451        unsafe extern "C" fn(itemH: AEGP_ItemH, labelP: *mut AEGP_LabelID) -> A_Err,
18452    >,
18453    pub AEGP_SetItemLabel: ::std::option::Option<
18454        unsafe extern "C" fn(itemH: AEGP_ItemH, label: AEGP_LabelID) -> A_Err,
18455    >,
18456    pub AEGP_GetItemMRUView: ::std::option::Option<
18457        unsafe extern "C" fn(itemH: AEGP_ItemH, mru_viewP: *mut AEGP_ItemViewP) -> A_Err,
18458    >,
18459}
18460#[repr(C)]
18461#[derive(Debug, Copy, Clone)]
18462pub struct AEGP_ItemSuite7 {
18463    pub AEGP_GetFirstProjItem: ::std::option::Option<
18464        unsafe extern "C" fn(projectH: AEGP_ProjectH, itemPH: *mut AEGP_ItemH) -> A_Err,
18465    >,
18466    pub AEGP_GetNextProjItem: ::std::option::Option<
18467        unsafe extern "C" fn(
18468            projectH: AEGP_ProjectH,
18469            itemH: AEGP_ItemH,
18470            next_itemPH: *mut AEGP_ItemH,
18471        ) -> A_Err,
18472    >,
18473    pub AEGP_GetActiveItem:
18474        ::std::option::Option<unsafe extern "C" fn(itemPH: *mut AEGP_ItemH) -> A_Err>,
18475    pub AEGP_IsItemSelected: ::std::option::Option<
18476        unsafe extern "C" fn(itemH: AEGP_ItemH, selectedPB: *mut A_Boolean) -> A_Err,
18477    >,
18478    pub AEGP_SelectItem: ::std::option::Option<
18479        unsafe extern "C" fn(
18480            itemH: AEGP_ItemH,
18481            selectB: A_Boolean,
18482            deselect_othersB: A_Boolean,
18483        ) -> A_Err,
18484    >,
18485    pub AEGP_GetItemType: ::std::option::Option<
18486        unsafe extern "C" fn(itemH: AEGP_ItemH, item_typeP: *mut AEGP_ItemType) -> A_Err,
18487    >,
18488    pub AEGP_GetTypeName: ::std::option::Option<
18489        unsafe extern "C" fn(item_type: AEGP_ItemType, nameZ: *mut A_char) -> A_Err,
18490    >,
18491    pub AEGP_GetItemName:
18492        ::std::option::Option<unsafe extern "C" fn(itemH: AEGP_ItemH, nameZ: *mut A_char) -> A_Err>,
18493    pub AEGP_SetItemName: ::std::option::Option<
18494        unsafe extern "C" fn(itemH: AEGP_ItemH, nameZ: *const A_char) -> A_Err,
18495    >,
18496    pub AEGP_GetItemID: ::std::option::Option<
18497        unsafe extern "C" fn(itemH: AEGP_ItemH, item_idPL: *mut A_long) -> A_Err,
18498    >,
18499    pub AEGP_GetItemFlags: ::std::option::Option<
18500        unsafe extern "C" fn(itemH: AEGP_ItemH, item_flagsP: *mut AEGP_ItemFlags) -> A_Err,
18501    >,
18502    pub AEGP_SetItemUseProxy: ::std::option::Option<
18503        unsafe extern "C" fn(itemH: AEGP_ItemH, use_proxyB: A_Boolean) -> A_Err,
18504    >,
18505    pub AEGP_GetItemParentFolder: ::std::option::Option<
18506        unsafe extern "C" fn(itemH: AEGP_ItemH, parent_folder_itemPH: *mut AEGP_ItemH) -> A_Err,
18507    >,
18508    pub AEGP_SetItemParentFolder: ::std::option::Option<
18509        unsafe extern "C" fn(itemH: AEGP_ItemH, parent_folder_itemH: AEGP_ItemH) -> A_Err,
18510    >,
18511    pub AEGP_GetItemDuration: ::std::option::Option<
18512        unsafe extern "C" fn(itemH: AEGP_ItemH, durationPT: *mut A_Time) -> A_Err,
18513    >,
18514    pub AEGP_GetItemCurrentTime: ::std::option::Option<
18515        unsafe extern "C" fn(itemH: AEGP_ItemH, curr_timePT: *mut A_Time) -> A_Err,
18516    >,
18517    pub AEGP_GetItemDimensions: ::std::option::Option<
18518        unsafe extern "C" fn(
18519            itemH: AEGP_ItemH,
18520            widthPL: *mut A_long,
18521            heightPL: *mut A_long,
18522        ) -> A_Err,
18523    >,
18524    pub AEGP_GetItemPixelAspectRatio: ::std::option::Option<
18525        unsafe extern "C" fn(itemH: AEGP_ItemH, pix_aspect_ratioPRt: *mut A_Ratio) -> A_Err,
18526    >,
18527    pub AEGP_DeleteItem: ::std::option::Option<unsafe extern "C" fn(itemH: AEGP_ItemH) -> A_Err>,
18528    pub AEGP_CreateNewFolder: ::std::option::Option<
18529        unsafe extern "C" fn(
18530            nameZ: *const A_char,
18531            parent_folderH0: AEGP_ItemH,
18532            new_folderPH: *mut AEGP_ItemH,
18533        ) -> A_Err,
18534    >,
18535    pub AEGP_SetItemCurrentTime: ::std::option::Option<
18536        unsafe extern "C" fn(itemH: AEGP_ItemH, new_timePT: *const A_Time) -> A_Err,
18537    >,
18538    pub AEGP_GetItemCommentLength: ::std::option::Option<
18539        unsafe extern "C" fn(itemH: AEGP_ItemH, buf_sizePLu: *mut A_u_long) -> A_Err,
18540    >,
18541    pub AEGP_GetItemComment: ::std::option::Option<
18542        unsafe extern "C" fn(
18543            itemH: AEGP_ItemH,
18544            buf_sizeLu: A_u_long,
18545            commentZ: *mut A_char,
18546        ) -> A_Err,
18547    >,
18548    pub AEGP_SetItemComment: ::std::option::Option<
18549        unsafe extern "C" fn(itemH: AEGP_ItemH, commentZ: *const A_char) -> A_Err,
18550    >,
18551    pub AEGP_GetItemLabel: ::std::option::Option<
18552        unsafe extern "C" fn(itemH: AEGP_ItemH, labelP: *mut AEGP_LabelID) -> A_Err,
18553    >,
18554    pub AEGP_SetItemLabel: ::std::option::Option<
18555        unsafe extern "C" fn(itemH: AEGP_ItemH, label: AEGP_LabelID) -> A_Err,
18556    >,
18557    pub AEGP_GetItemMRUView: ::std::option::Option<
18558        unsafe extern "C" fn(itemH: AEGP_ItemH, mru_viewP: *mut AEGP_ItemViewP) -> A_Err,
18559    >,
18560}
18561#[repr(C)]
18562#[derive(Debug, Copy, Clone)]
18563pub struct AEGP_ItemSuite6 {
18564    pub AEGP_GetFirstProjItem: ::std::option::Option<
18565        unsafe extern "C" fn(projectH: AEGP_ProjectH, itemPH: *mut AEGP_ItemH) -> A_Err,
18566    >,
18567    pub AEGP_GetNextProjItem: ::std::option::Option<
18568        unsafe extern "C" fn(
18569            projectH: AEGP_ProjectH,
18570            itemH: AEGP_ItemH,
18571            next_itemPH: *mut AEGP_ItemH,
18572        ) -> A_Err,
18573    >,
18574    pub AEGP_GetActiveItem:
18575        ::std::option::Option<unsafe extern "C" fn(itemPH: *mut AEGP_ItemH) -> A_Err>,
18576    pub AEGP_IsItemSelected: ::std::option::Option<
18577        unsafe extern "C" fn(itemH: AEGP_ItemH, selectedPB: *mut A_Boolean) -> A_Err,
18578    >,
18579    pub AEGP_SelectItem: ::std::option::Option<
18580        unsafe extern "C" fn(
18581            itemH: AEGP_ItemH,
18582            selectB: A_Boolean,
18583            deselect_othersB: A_Boolean,
18584        ) -> A_Err,
18585    >,
18586    pub AEGP_GetItemType: ::std::option::Option<
18587        unsafe extern "C" fn(itemH: AEGP_ItemH, item_typeP: *mut AEGP_ItemType) -> A_Err,
18588    >,
18589    pub AEGP_GetTypeName: ::std::option::Option<
18590        unsafe extern "C" fn(item_type: AEGP_ItemType, nameZ: *mut A_char) -> A_Err,
18591    >,
18592    pub AEGP_GetItemName:
18593        ::std::option::Option<unsafe extern "C" fn(itemH: AEGP_ItemH, nameZ: *mut A_char) -> A_Err>,
18594    pub AEGP_SetItemName: ::std::option::Option<
18595        unsafe extern "C" fn(itemH: AEGP_ItemH, nameZ: *const A_char) -> A_Err,
18596    >,
18597    pub AEGP_GetItemID: ::std::option::Option<
18598        unsafe extern "C" fn(itemH: AEGP_ItemH, item_idPL: *mut A_long) -> A_Err,
18599    >,
18600    pub AEGP_GetItemFlags: ::std::option::Option<
18601        unsafe extern "C" fn(itemH: AEGP_ItemH, item_flagsP: *mut AEGP_ItemFlags) -> A_Err,
18602    >,
18603    pub AEGP_SetItemUseProxy: ::std::option::Option<
18604        unsafe extern "C" fn(itemH: AEGP_ItemH, use_proxyB: A_Boolean) -> A_Err,
18605    >,
18606    pub AEGP_GetItemParentFolder: ::std::option::Option<
18607        unsafe extern "C" fn(itemH: AEGP_ItemH, parent_folder_itemPH: *mut AEGP_ItemH) -> A_Err,
18608    >,
18609    pub AEGP_SetItemParentFolder: ::std::option::Option<
18610        unsafe extern "C" fn(itemH: AEGP_ItemH, parent_folder_itemH: AEGP_ItemH) -> A_Err,
18611    >,
18612    pub AEGP_GetItemDuration: ::std::option::Option<
18613        unsafe extern "C" fn(itemH: AEGP_ItemH, durationPT: *mut A_Time) -> A_Err,
18614    >,
18615    pub AEGP_GetItemCurrentTime: ::std::option::Option<
18616        unsafe extern "C" fn(itemH: AEGP_ItemH, curr_timePT: *mut A_Time) -> A_Err,
18617    >,
18618    pub AEGP_GetItemDimensions: ::std::option::Option<
18619        unsafe extern "C" fn(
18620            itemH: AEGP_ItemH,
18621            widthPL: *mut A_long,
18622            heightPL: *mut A_long,
18623        ) -> A_Err,
18624    >,
18625    pub AEGP_GetItemPixelAspectRatio: ::std::option::Option<
18626        unsafe extern "C" fn(itemH: AEGP_ItemH, pix_aspect_ratioPRt: *mut A_Ratio) -> A_Err,
18627    >,
18628    pub AEGP_DeleteItem: ::std::option::Option<unsafe extern "C" fn(itemH: AEGP_ItemH) -> A_Err>,
18629    pub AEGP_CreateNewFolder: ::std::option::Option<
18630        unsafe extern "C" fn(
18631            nameZ: *const A_char,
18632            parent_folderH0: AEGP_ItemH,
18633            new_folderPH: *mut AEGP_ItemH,
18634        ) -> A_Err,
18635    >,
18636    pub AEGP_SetItemCurrentTime: ::std::option::Option<
18637        unsafe extern "C" fn(itemH: AEGP_ItemH, new_timePT: *const A_Time) -> A_Err,
18638    >,
18639    pub AEGP_GetItemCommentLength: ::std::option::Option<
18640        unsafe extern "C" fn(itemH: AEGP_ItemH, buf_sizePLu: *mut A_u_long) -> A_Err,
18641    >,
18642    pub AEGP_GetItemComment: ::std::option::Option<
18643        unsafe extern "C" fn(
18644            itemH: AEGP_ItemH,
18645            buf_sizeLu: A_u_long,
18646            commentZ: *mut A_char,
18647        ) -> A_Err,
18648    >,
18649    pub AEGP_SetItemComment: ::std::option::Option<
18650        unsafe extern "C" fn(itemH: AEGP_ItemH, commentZ: *const A_char) -> A_Err,
18651    >,
18652    pub AEGP_GetItemLabel: ::std::option::Option<
18653        unsafe extern "C" fn(itemH: AEGP_ItemH, labelP: *mut AEGP_LabelID) -> A_Err,
18654    >,
18655    pub AEGP_SetItemLabel: ::std::option::Option<
18656        unsafe extern "C" fn(itemH: AEGP_ItemH, label: AEGP_LabelID) -> A_Err,
18657    >,
18658}
18659#[repr(C)]
18660#[derive(Debug, Copy, Clone)]
18661pub struct AEGP_ItemSuite5 {
18662    pub AEGP_GetNextItem: ::std::option::Option<
18663        unsafe extern "C" fn(itemH: AEGP_ItemH, next_itemPH: *mut AEGP_ItemH) -> A_Err,
18664    >,
18665    pub AEGP_GetActiveItem:
18666        ::std::option::Option<unsafe extern "C" fn(itemPH: *mut AEGP_ItemH) -> A_Err>,
18667    pub AEGP_IsItemSelected: ::std::option::Option<
18668        unsafe extern "C" fn(itemH: AEGP_ItemH, selectedPB: *mut A_Boolean) -> A_Err,
18669    >,
18670    pub AEGP_SelectItem: ::std::option::Option<
18671        unsafe extern "C" fn(
18672            itemH: AEGP_ItemH,
18673            selectB: A_Boolean,
18674            deselect_othersB: A_Boolean,
18675        ) -> A_Err,
18676    >,
18677    pub AEGP_GetItemType: ::std::option::Option<
18678        unsafe extern "C" fn(itemH: AEGP_ItemH, item_typeP: *mut AEGP_ItemType) -> A_Err,
18679    >,
18680    pub AEGP_GetTypeName: ::std::option::Option<
18681        unsafe extern "C" fn(item_type: AEGP_ItemType, nameZ: *mut A_char) -> A_Err,
18682    >,
18683    pub AEGP_GetItemName:
18684        ::std::option::Option<unsafe extern "C" fn(itemH: AEGP_ItemH, nameZ: *mut A_char) -> A_Err>,
18685    pub AEGP_GetItemID: ::std::option::Option<
18686        unsafe extern "C" fn(itemH: AEGP_ItemH, item_idPL: *mut A_long) -> A_Err,
18687    >,
18688    pub AEGP_GetItemFlags: ::std::option::Option<
18689        unsafe extern "C" fn(itemH: AEGP_ItemH, item_flagsP: *mut AEGP_ItemFlags) -> A_Err,
18690    >,
18691    pub AEGP_SetItemUseProxy: ::std::option::Option<
18692        unsafe extern "C" fn(itemH: AEGP_ItemH, use_proxyB: A_Boolean) -> A_Err,
18693    >,
18694    pub AEGP_GetItemParentFolder: ::std::option::Option<
18695        unsafe extern "C" fn(itemH: AEGP_ItemH, parent_folder_itemPH: *mut AEGP_ItemH) -> A_Err,
18696    >,
18697    pub AEGP_SetItemParentFolder: ::std::option::Option<
18698        unsafe extern "C" fn(itemH: AEGP_ItemH, parent_folder_itemH: AEGP_ItemH) -> A_Err,
18699    >,
18700    pub AEGP_GetItemDuration: ::std::option::Option<
18701        unsafe extern "C" fn(itemH: AEGP_ItemH, durationPT: *mut A_Time) -> A_Err,
18702    >,
18703    pub AEGP_GetItemCurrentTime: ::std::option::Option<
18704        unsafe extern "C" fn(itemH: AEGP_ItemH, curr_timePT: *mut A_Time) -> A_Err,
18705    >,
18706    pub AEGP_GetItemDimensions: ::std::option::Option<
18707        unsafe extern "C" fn(
18708            itemH: AEGP_ItemH,
18709            widthPL: *mut A_long,
18710            heightPL: *mut A_long,
18711        ) -> A_Err,
18712    >,
18713    pub AEGP_GetItemPixelAspectRatio: ::std::option::Option<
18714        unsafe extern "C" fn(itemH: AEGP_ItemH, pix_aspect_ratioPRt: *mut A_Ratio) -> A_Err,
18715    >,
18716    pub AEGP_DeleteItem: ::std::option::Option<unsafe extern "C" fn(itemH: AEGP_ItemH) -> A_Err>,
18717    pub AEGP_CreateNewFolder: ::std::option::Option<
18718        unsafe extern "C" fn(
18719            nameZ: *const A_char,
18720            parent_folderH0: AEGP_ItemH,
18721            new_folderPH: *mut AEGP_ItemH,
18722        ) -> A_Err,
18723    >,
18724    pub AEGP_SetItemCurrentTime: ::std::option::Option<
18725        unsafe extern "C" fn(itemH: AEGP_ItemH, new_timePT: *const A_Time) -> A_Err,
18726    >,
18727    pub AEGP_GetItemCommentLength: ::std::option::Option<
18728        unsafe extern "C" fn(itemH: AEGP_ItemH, buf_sizePLu: *mut A_u_long) -> A_Err,
18729    >,
18730    pub AEGP_GetItemComment: ::std::option::Option<
18731        unsafe extern "C" fn(
18732            itemH: AEGP_ItemH,
18733            buf_sizeLu: A_u_long,
18734            commentZ: *mut ::std::os::raw::c_char,
18735        ) -> A_Err,
18736    >,
18737    pub AEGP_SetItemComment: ::std::option::Option<
18738        unsafe extern "C" fn(itemH: AEGP_ItemH, commentZ: *const ::std::os::raw::c_char) -> A_Err,
18739    >,
18740}
18741#[repr(C)]
18742#[derive(Debug, Copy, Clone)]
18743pub struct AEGP_ItemSuite4 {
18744    pub AEGP_GetNextItem: ::std::option::Option<
18745        unsafe extern "C" fn(itemH: AEGP_ItemH, next_itemPH: *mut AEGP_ItemH) -> A_Err,
18746    >,
18747    pub AEGP_GetActiveItem:
18748        ::std::option::Option<unsafe extern "C" fn(itemPH: *mut AEGP_ItemH) -> A_Err>,
18749    pub AEGP_IsItemSelected: ::std::option::Option<
18750        unsafe extern "C" fn(itemH: AEGP_ItemH, selectedPB: *mut A_Boolean) -> A_Err,
18751    >,
18752    pub AEGP_SelectItem: ::std::option::Option<
18753        unsafe extern "C" fn(
18754            itemH: AEGP_ItemH,
18755            selectB: A_Boolean,
18756            deselect_othersB: A_Boolean,
18757        ) -> A_Err,
18758    >,
18759    pub AEGP_GetItemType: ::std::option::Option<
18760        unsafe extern "C" fn(itemH: AEGP_ItemH, item_typeP: *mut AEGP_ItemType) -> A_Err,
18761    >,
18762    pub AEGP_GetTypeName: ::std::option::Option<
18763        unsafe extern "C" fn(item_type: AEGP_ItemType, nameZ: *mut A_char) -> A_Err,
18764    >,
18765    pub AEGP_GetItemName:
18766        ::std::option::Option<unsafe extern "C" fn(itemH: AEGP_ItemH, nameZ: *mut A_char) -> A_Err>,
18767    pub AEGP_GetItemID: ::std::option::Option<
18768        unsafe extern "C" fn(itemH: AEGP_ItemH, item_idPL: *mut A_long) -> A_Err,
18769    >,
18770    pub AEGP_GetItemFlags: ::std::option::Option<
18771        unsafe extern "C" fn(itemH: AEGP_ItemH, item_flagsP: *mut AEGP_ItemFlags) -> A_Err,
18772    >,
18773    pub AEGP_SetItemUseProxy: ::std::option::Option<
18774        unsafe extern "C" fn(itemH: AEGP_ItemH, use_proxyB: A_Boolean) -> A_Err,
18775    >,
18776    pub AEGP_GetItemParentFolder: ::std::option::Option<
18777        unsafe extern "C" fn(itemH: AEGP_ItemH, parent_folder_itemPH: *mut AEGP_ItemH) -> A_Err,
18778    >,
18779    pub AEGP_GetItemDuration: ::std::option::Option<
18780        unsafe extern "C" fn(itemH: AEGP_ItemH, durationPT: *mut A_Time) -> A_Err,
18781    >,
18782    pub AEGP_GetItemCurrentTime: ::std::option::Option<
18783        unsafe extern "C" fn(itemH: AEGP_ItemH, curr_timePT: *mut A_Time) -> A_Err,
18784    >,
18785    pub AEGP_GetItemDimensions: ::std::option::Option<
18786        unsafe extern "C" fn(
18787            itemH: AEGP_ItemH,
18788            widthPL: *mut A_long,
18789            heightPL: *mut A_long,
18790        ) -> A_Err,
18791    >,
18792    pub AEGP_GetItemPixelAspectRatio: ::std::option::Option<
18793        unsafe extern "C" fn(itemH: AEGP_ItemH, pix_aspect_ratioPRt: *mut A_Ratio) -> A_Err,
18794    >,
18795    pub AEGP_DeleteItem: ::std::option::Option<unsafe extern "C" fn(itemH: AEGP_ItemH) -> A_Err>,
18796    pub AEGP_CreateNewFolder: ::std::option::Option<
18797        unsafe extern "C" fn(
18798            nameZ: *const A_char,
18799            parent_folderH0: AEGP_ItemH,
18800            new_folderPH: *mut AEGP_ItemH,
18801        ) -> A_Err,
18802    >,
18803    pub AEGP_SetItemCurrentTime: ::std::option::Option<
18804        unsafe extern "C" fn(itemH: AEGP_ItemH, new_timePT: *const A_Time) -> A_Err,
18805    >,
18806    pub AEGP_GetItemCommentLength: ::std::option::Option<
18807        unsafe extern "C" fn(itemH: AEGP_ItemH, buf_sizePLu: *mut A_u_long) -> A_Err,
18808    >,
18809    pub AEGP_GetItemComment: ::std::option::Option<
18810        unsafe extern "C" fn(
18811            itemH: AEGP_ItemH,
18812            buf_sizeLu: A_u_long,
18813            commentZ: *mut ::std::os::raw::c_char,
18814        ) -> A_Err,
18815    >,
18816    pub AEGP_SetItemComment: ::std::option::Option<
18817        unsafe extern "C" fn(itemH: AEGP_ItemH, commentZ: *const ::std::os::raw::c_char) -> A_Err,
18818    >,
18819}
18820#[repr(C)]
18821#[derive(Debug, Copy, Clone)]
18822pub struct AEGP_ItemSuite3 {
18823    pub AEGP_GetNextItem: ::std::option::Option<
18824        unsafe extern "C" fn(itemH: AEGP_ItemH, next_itemPH: *mut AEGP_ItemH) -> A_Err,
18825    >,
18826    pub AEGP_GetActiveItem:
18827        ::std::option::Option<unsafe extern "C" fn(itemPH: *mut AEGP_ItemH) -> A_Err>,
18828    pub AEGP_IsItemSelected: ::std::option::Option<
18829        unsafe extern "C" fn(itemH: AEGP_ItemH, selectedPB: *mut A_Boolean) -> A_Err,
18830    >,
18831    pub AEGP_SelectItem: ::std::option::Option<
18832        unsafe extern "C" fn(
18833            itemH: AEGP_ItemH,
18834            selectB: A_Boolean,
18835            deselect_othersB: A_Boolean,
18836        ) -> A_Err,
18837    >,
18838    pub AEGP_GetItemType: ::std::option::Option<
18839        unsafe extern "C" fn(itemH: AEGP_ItemH, item_typeP: *mut AEGP_ItemType) -> A_Err,
18840    >,
18841    pub AEGP_GetTypeName: ::std::option::Option<
18842        unsafe extern "C" fn(item_type: AEGP_ItemType, nameZ: *mut A_char) -> A_Err,
18843    >,
18844    pub AEGP_GetItemName:
18845        ::std::option::Option<unsafe extern "C" fn(itemH: AEGP_ItemH, nameZ: *mut A_char) -> A_Err>,
18846    pub AEGP_GetItemID: ::std::option::Option<
18847        unsafe extern "C" fn(itemH: AEGP_ItemH, item_idPL: *mut A_long) -> A_Err,
18848    >,
18849    pub AEGP_GetItemFlags: ::std::option::Option<
18850        unsafe extern "C" fn(itemH: AEGP_ItemH, item_flagsP: *mut AEGP_ItemFlags) -> A_Err,
18851    >,
18852    pub AEGP_SetItemUseProxy: ::std::option::Option<
18853        unsafe extern "C" fn(itemH: AEGP_ItemH, use_proxyB: A_Boolean) -> A_Err,
18854    >,
18855    pub AEGP_GetItemParentFolder: ::std::option::Option<
18856        unsafe extern "C" fn(itemH: AEGP_ItemH, parent_folder_itemPH: *mut AEGP_ItemH) -> A_Err,
18857    >,
18858    pub AEGP_GetItemDuration: ::std::option::Option<
18859        unsafe extern "C" fn(itemH: AEGP_ItemH, durationPT: *mut A_Time) -> A_Err,
18860    >,
18861    pub AEGP_GetItemCurrentTime: ::std::option::Option<
18862        unsafe extern "C" fn(itemH: AEGP_ItemH, curr_timePT: *mut A_Time) -> A_Err,
18863    >,
18864    pub AEGP_GetItemDimensions: ::std::option::Option<
18865        unsafe extern "C" fn(
18866            itemH: AEGP_ItemH,
18867            widthPL: *mut A_long,
18868            heightPL: *mut A_long,
18869        ) -> A_Err,
18870    >,
18871    pub AEGP_GetItemPixelAspectRatio: ::std::option::Option<
18872        unsafe extern "C" fn(itemH: AEGP_ItemH, pix_aspect_ratioPRt: *mut A_Ratio) -> A_Err,
18873    >,
18874    pub AEGP_DeleteItem: ::std::option::Option<unsafe extern "C" fn(itemH: AEGP_ItemH) -> A_Err>,
18875    pub AEGP_GetItemSolidColor: ::std::option::Option<
18876        unsafe extern "C" fn(itemH: AEGP_ItemH, colorP: *mut AEGP_ColorVal) -> A_Err,
18877    >,
18878    pub AEGP_SetSolidColor: ::std::option::Option<
18879        unsafe extern "C" fn(itemH: AEGP_ItemH, color: AEGP_ColorVal) -> A_Err,
18880    >,
18881    pub AEGP_SetSolidDimensions: ::std::option::Option<
18882        unsafe extern "C" fn(itemH: AEGP_ItemH, widthS: A_short, heightS: A_short) -> A_Err,
18883    >,
18884    pub AEGP_CreateNewFolder: ::std::option::Option<
18885        unsafe extern "C" fn(
18886            nameZ: *const A_char,
18887            parent_folderH0: AEGP_ItemH,
18888            new_folderPH: *mut AEGP_ItemH,
18889        ) -> A_Err,
18890    >,
18891    pub AEGP_SetItemCurrentTime: ::std::option::Option<
18892        unsafe extern "C" fn(itemH: AEGP_ItemH, new_timePT: *const A_Time) -> A_Err,
18893    >,
18894}
18895#[repr(C)]
18896#[derive(Debug, Copy, Clone)]
18897pub struct AEGP_KeyframeSuite4 {
18898    pub AEGP_GetStreamNumKFs: ::std::option::Option<
18899        unsafe extern "C" fn(streamH: AEGP_StreamRefH, num_kfsPL: *mut A_long) -> A_Err,
18900    >,
18901    pub AEGP_GetKeyframeTime: ::std::option::Option<
18902        unsafe extern "C" fn(
18903            streamH: AEGP_StreamRefH,
18904            key_index: AEGP_KeyframeIndex,
18905            time_mode: AEGP_LTimeMode,
18906            timePT: *mut A_Time,
18907        ) -> A_Err,
18908    >,
18909    pub AEGP_InsertKeyframe: ::std::option::Option<
18910        unsafe extern "C" fn(
18911            streamH: AEGP_StreamRefH,
18912            time_mode: AEGP_LTimeMode,
18913            timePT: *const A_Time,
18914            key_indexP: *mut AEGP_KeyframeIndex,
18915        ) -> A_Err,
18916    >,
18917    pub AEGP_DeleteKeyframe: ::std::option::Option<
18918        unsafe extern "C" fn(streamH: AEGP_StreamRefH, key_index: AEGP_KeyframeIndex) -> A_Err,
18919    >,
18920    pub AEGP_GetNewKeyframeValue: ::std::option::Option<
18921        unsafe extern "C" fn(
18922            aegp_plugin_id: AEGP_PluginID,
18923            streamH: AEGP_StreamRefH,
18924            key_index: AEGP_KeyframeIndex,
18925            valueP: *mut AEGP_StreamValue2,
18926        ) -> A_Err,
18927    >,
18928    pub AEGP_SetKeyframeValue: ::std::option::Option<
18929        unsafe extern "C" fn(
18930            streamH: AEGP_StreamRefH,
18931            key_index: AEGP_KeyframeIndex,
18932            valueP: *const AEGP_StreamValue2,
18933        ) -> A_Err,
18934    >,
18935    pub AEGP_GetStreamValueDimensionality: ::std::option::Option<
18936        unsafe extern "C" fn(streamH: AEGP_StreamRefH, value_dimPS: *mut A_short) -> A_Err,
18937    >,
18938    pub AEGP_GetStreamTemporalDimensionality: ::std::option::Option<
18939        unsafe extern "C" fn(streamH: AEGP_StreamRefH, temporal_dimPS: *mut A_short) -> A_Err,
18940    >,
18941    pub AEGP_GetNewKeyframeSpatialTangents: ::std::option::Option<
18942        unsafe extern "C" fn(
18943            aegp_plugin_id: AEGP_PluginID,
18944            streamH: AEGP_StreamRefH,
18945            key_index: AEGP_KeyframeIndex,
18946            in_tanP0: *mut AEGP_StreamValue2,
18947            out_tanP0: *mut AEGP_StreamValue2,
18948        ) -> A_Err,
18949    >,
18950    pub AEGP_SetKeyframeSpatialTangents: ::std::option::Option<
18951        unsafe extern "C" fn(
18952            streamH: AEGP_StreamRefH,
18953            key_index: AEGP_KeyframeIndex,
18954            in_tanP0: *const AEGP_StreamValue2,
18955            out_tanP0: *const AEGP_StreamValue2,
18956        ) -> A_Err,
18957    >,
18958    pub AEGP_GetKeyframeTemporalEase: ::std::option::Option<
18959        unsafe extern "C" fn(
18960            streamH: AEGP_StreamRefH,
18961            key_index: AEGP_KeyframeIndex,
18962            dimensionL: A_long,
18963            in_easeP0: *mut AEGP_KeyframeEase,
18964            out_easeP0: *mut AEGP_KeyframeEase,
18965        ) -> A_Err,
18966    >,
18967    pub AEGP_SetKeyframeTemporalEase: ::std::option::Option<
18968        unsafe extern "C" fn(
18969            streamH: AEGP_StreamRefH,
18970            key_index: AEGP_KeyframeIndex,
18971            dimensionL: A_long,
18972            in_easeP0: *const AEGP_KeyframeEase,
18973            out_easeP0: *const AEGP_KeyframeEase,
18974        ) -> A_Err,
18975    >,
18976    pub AEGP_GetKeyframeFlags: ::std::option::Option<
18977        unsafe extern "C" fn(
18978            streamH: AEGP_StreamRefH,
18979            key_index: AEGP_KeyframeIndex,
18980            flagsP: *mut AEGP_KeyframeFlags,
18981        ) -> A_Err,
18982    >,
18983    pub AEGP_SetKeyframeFlag: ::std::option::Option<
18984        unsafe extern "C" fn(
18985            streamH: AEGP_StreamRefH,
18986            key_index: AEGP_KeyframeIndex,
18987            flag: AEGP_KeyframeFlags,
18988            true_falseB: A_Boolean,
18989        ) -> A_Err,
18990    >,
18991    pub AEGP_GetKeyframeInterpolation: ::std::option::Option<
18992        unsafe extern "C" fn(
18993            streamH: AEGP_StreamRefH,
18994            key_index: AEGP_KeyframeIndex,
18995            in_interpP0: *mut AEGP_KeyframeInterpolationType,
18996            out_interpP0: *mut AEGP_KeyframeInterpolationType,
18997        ) -> A_Err,
18998    >,
18999    pub AEGP_SetKeyframeInterpolation: ::std::option::Option<
19000        unsafe extern "C" fn(
19001            streamH: AEGP_StreamRefH,
19002            key_index: AEGP_KeyframeIndex,
19003            in_interp: AEGP_KeyframeInterpolationType,
19004            out_interp: AEGP_KeyframeInterpolationType,
19005        ) -> A_Err,
19006    >,
19007    pub AEGP_StartAddKeyframes: ::std::option::Option<
19008        unsafe extern "C" fn(streamH: AEGP_StreamRefH, akPH: *mut AEGP_AddKeyframesInfoH) -> A_Err,
19009    >,
19010    pub AEGP_AddKeyframes: ::std::option::Option<
19011        unsafe extern "C" fn(
19012            akH: AEGP_AddKeyframesInfoH,
19013            time_mode: AEGP_LTimeMode,
19014            timePT: *const A_Time,
19015            key_indexPL: *mut A_long,
19016        ) -> A_Err,
19017    >,
19018    pub AEGP_SetAddKeyframe: ::std::option::Option<
19019        unsafe extern "C" fn(
19020            akH: AEGP_AddKeyframesInfoH,
19021            key_indexL: A_long,
19022            valueP: *const AEGP_StreamValue2,
19023        ) -> A_Err,
19024    >,
19025    pub AEGP_EndAddKeyframes: ::std::option::Option<
19026        unsafe extern "C" fn(addB: A_Boolean, akH: AEGP_AddKeyframesInfoH) -> A_Err,
19027    >,
19028}
19029#[repr(C)]
19030#[derive(Debug, Copy, Clone)]
19031pub struct AEGP_KeyframeSuite3 {
19032    pub AEGP_GetStreamNumKFs: ::std::option::Option<
19033        unsafe extern "C" fn(streamH: AEGP_StreamRefH, num_kfsPL: *mut A_long) -> A_Err,
19034    >,
19035    pub AEGP_GetKeyframeTime: ::std::option::Option<
19036        unsafe extern "C" fn(
19037            streamH: AEGP_StreamRefH,
19038            key_index: AEGP_KeyframeIndex,
19039            time_mode: AEGP_LTimeMode,
19040            timePT: *mut A_Time,
19041        ) -> A_Err,
19042    >,
19043    pub AEGP_InsertKeyframe: ::std::option::Option<
19044        unsafe extern "C" fn(
19045            streamH: AEGP_StreamRefH,
19046            time_mode: AEGP_LTimeMode,
19047            timePT: *const A_Time,
19048            key_indexP: *mut AEGP_KeyframeIndex,
19049        ) -> A_Err,
19050    >,
19051    pub AEGP_DeleteKeyframe: ::std::option::Option<
19052        unsafe extern "C" fn(streamH: AEGP_StreamRefH, key_index: AEGP_KeyframeIndex) -> A_Err,
19053    >,
19054    pub AEGP_GetNewKeyframeValue: ::std::option::Option<
19055        unsafe extern "C" fn(
19056            aegp_plugin_id: AEGP_PluginID,
19057            streamH: AEGP_StreamRefH,
19058            key_index: AEGP_KeyframeIndex,
19059            valueP: *mut AEGP_StreamValue,
19060        ) -> A_Err,
19061    >,
19062    pub AEGP_SetKeyframeValue: ::std::option::Option<
19063        unsafe extern "C" fn(
19064            streamH: AEGP_StreamRefH,
19065            key_index: AEGP_KeyframeIndex,
19066            valueP: *const AEGP_StreamValue,
19067        ) -> A_Err,
19068    >,
19069    pub AEGP_GetStreamValueDimensionality: ::std::option::Option<
19070        unsafe extern "C" fn(streamH: AEGP_StreamRefH, value_dimPS: *mut A_short) -> A_Err,
19071    >,
19072    pub AEGP_GetStreamTemporalDimensionality: ::std::option::Option<
19073        unsafe extern "C" fn(streamH: AEGP_StreamRefH, temporal_dimPS: *mut A_short) -> A_Err,
19074    >,
19075    pub AEGP_GetNewKeyframeSpatialTangents: ::std::option::Option<
19076        unsafe extern "C" fn(
19077            aegp_plugin_id: AEGP_PluginID,
19078            streamH: AEGP_StreamRefH,
19079            key_index: AEGP_KeyframeIndex,
19080            in_tanP0: *mut AEGP_StreamValue,
19081            out_tanP0: *mut AEGP_StreamValue,
19082        ) -> A_Err,
19083    >,
19084    pub AEGP_SetKeyframeSpatialTangents: ::std::option::Option<
19085        unsafe extern "C" fn(
19086            streamH: AEGP_StreamRefH,
19087            key_index: AEGP_KeyframeIndex,
19088            in_tanP0: *const AEGP_StreamValue,
19089            out_tanP0: *const AEGP_StreamValue,
19090        ) -> A_Err,
19091    >,
19092    pub AEGP_GetKeyframeTemporalEase: ::std::option::Option<
19093        unsafe extern "C" fn(
19094            streamH: AEGP_StreamRefH,
19095            key_index: AEGP_KeyframeIndex,
19096            dimensionL: A_long,
19097            in_easeP0: *mut AEGP_KeyframeEase,
19098            out_easeP0: *mut AEGP_KeyframeEase,
19099        ) -> A_Err,
19100    >,
19101    pub AEGP_SetKeyframeTemporalEase: ::std::option::Option<
19102        unsafe extern "C" fn(
19103            streamH: AEGP_StreamRefH,
19104            key_index: AEGP_KeyframeIndex,
19105            dimensionL: A_long,
19106            in_easeP0: *const AEGP_KeyframeEase,
19107            out_easeP0: *const AEGP_KeyframeEase,
19108        ) -> A_Err,
19109    >,
19110    pub AEGP_GetKeyframeFlags: ::std::option::Option<
19111        unsafe extern "C" fn(
19112            streamH: AEGP_StreamRefH,
19113            key_index: AEGP_KeyframeIndex,
19114            flagsP: *mut AEGP_KeyframeFlags,
19115        ) -> A_Err,
19116    >,
19117    pub AEGP_SetKeyframeFlag: ::std::option::Option<
19118        unsafe extern "C" fn(
19119            streamH: AEGP_StreamRefH,
19120            key_index: AEGP_KeyframeIndex,
19121            flag: AEGP_KeyframeFlags,
19122            true_falseB: A_Boolean,
19123        ) -> A_Err,
19124    >,
19125    pub AEGP_GetKeyframeInterpolation: ::std::option::Option<
19126        unsafe extern "C" fn(
19127            streamH: AEGP_StreamRefH,
19128            key_index: AEGP_KeyframeIndex,
19129            in_interpP0: *mut AEGP_KeyframeInterpolationType,
19130            out_interpP0: *mut AEGP_KeyframeInterpolationType,
19131        ) -> A_Err,
19132    >,
19133    pub AEGP_SetKeyframeInterpolation: ::std::option::Option<
19134        unsafe extern "C" fn(
19135            streamH: AEGP_StreamRefH,
19136            key_index: AEGP_KeyframeIndex,
19137            in_interp: AEGP_KeyframeInterpolationType,
19138            out_interp: AEGP_KeyframeInterpolationType,
19139        ) -> A_Err,
19140    >,
19141    pub AEGP_StartAddKeyframes: ::std::option::Option<
19142        unsafe extern "C" fn(streamH: AEGP_StreamRefH, akPH: *mut AEGP_AddKeyframesInfoH) -> A_Err,
19143    >,
19144    pub AEGP_AddKeyframes: ::std::option::Option<
19145        unsafe extern "C" fn(
19146            akH: AEGP_AddKeyframesInfoH,
19147            time_mode: AEGP_LTimeMode,
19148            timePT: *const A_Time,
19149            key_indexPL: *mut A_long,
19150        ) -> A_Err,
19151    >,
19152    pub AEGP_SetAddKeyframe: ::std::option::Option<
19153        unsafe extern "C" fn(
19154            akH: AEGP_AddKeyframesInfoH,
19155            key_indexL: A_long,
19156            valueP: *const AEGP_StreamValue,
19157        ) -> A_Err,
19158    >,
19159    pub AEGP_EndAddKeyframes: ::std::option::Option<
19160        unsafe extern "C" fn(addB: A_Boolean, akH: AEGP_AddKeyframesInfoH) -> A_Err,
19161    >,
19162}
19163#[repr(C)]
19164#[derive(Debug, Copy, Clone)]
19165pub struct AEGP_KeyframeSuite2 {
19166    pub AEGP_GetStreamNumKFs: ::std::option::Option<
19167        unsafe extern "C" fn(streamH: AEGP_StreamRefH, num_kfsPL: *mut A_long) -> A_Err,
19168    >,
19169    pub AEGP_GetKeyframeTime: ::std::option::Option<
19170        unsafe extern "C" fn(
19171            streamH: AEGP_StreamRefH,
19172            key_index: AEGP_KeyframeIndex,
19173            time_mode: AEGP_LTimeMode,
19174            timePT: *mut A_Time,
19175        ) -> A_Err,
19176    >,
19177    pub AEGP_InsertKeyframe: ::std::option::Option<
19178        unsafe extern "C" fn(
19179            streamH: AEGP_StreamRefH,
19180            time_mode: AEGP_LTimeMode,
19181            timePT: *const A_Time,
19182            key_indexP: *mut AEGP_KeyframeIndex,
19183        ) -> A_Err,
19184    >,
19185    pub AEGP_DeleteKeyframe: ::std::option::Option<
19186        unsafe extern "C" fn(streamH: AEGP_StreamRefH, key_index: AEGP_KeyframeIndex) -> A_Err,
19187    >,
19188    pub AEGP_GetNewKeyframeValue: ::std::option::Option<
19189        unsafe extern "C" fn(
19190            aegp_plugin_id: AEGP_PluginID,
19191            streamH: AEGP_StreamRefH,
19192            key_index: AEGP_KeyframeIndex,
19193            valueP: *mut AEGP_StreamValue,
19194        ) -> A_Err,
19195    >,
19196    pub AEGP_SetKeyframeValue: ::std::option::Option<
19197        unsafe extern "C" fn(
19198            streamH: AEGP_StreamRefH,
19199            key_index: AEGP_KeyframeIndex,
19200            valueP: *const AEGP_StreamValue,
19201        ) -> A_Err,
19202    >,
19203    pub AEGP_GetStreamValueDimensionality: ::std::option::Option<
19204        unsafe extern "C" fn(streamH: AEGP_StreamRefH, value_dimPS: *mut A_short) -> A_Err,
19205    >,
19206    pub AEGP_GetStreamTemporalDimensionality: ::std::option::Option<
19207        unsafe extern "C" fn(streamH: AEGP_StreamRefH, temporal_dimPS: *mut A_short) -> A_Err,
19208    >,
19209    pub AEGP_GetNewKeyframeSpatialTangents: ::std::option::Option<
19210        unsafe extern "C" fn(
19211            aegp_plugin_id: AEGP_PluginID,
19212            streamH: AEGP_StreamRefH,
19213            key_index: AEGP_KeyframeIndex,
19214            in_tanP0: *mut AEGP_StreamValue,
19215            out_tanP0: *mut AEGP_StreamValue,
19216        ) -> A_Err,
19217    >,
19218    pub AEGP_SetKeyframeSpatialTangents: ::std::option::Option<
19219        unsafe extern "C" fn(
19220            streamH: AEGP_StreamRefH,
19221            key_index: AEGP_KeyframeIndex,
19222            in_tanP0: *const AEGP_StreamValue,
19223            out_tanP0: *const AEGP_StreamValue,
19224        ) -> A_Err,
19225    >,
19226    pub AEGP_GetKeyframeTemporalEase: ::std::option::Option<
19227        unsafe extern "C" fn(
19228            streamH: AEGP_StreamRefH,
19229            key_index: AEGP_KeyframeIndex,
19230            dimensionL: A_long,
19231            in_easeP0: *mut AEGP_KeyframeEase,
19232            out_easeP0: *mut AEGP_KeyframeEase,
19233        ) -> A_Err,
19234    >,
19235    pub AEGP_SetKeyframeTemporalEase: ::std::option::Option<
19236        unsafe extern "C" fn(
19237            streamH: AEGP_StreamRefH,
19238            key_index: AEGP_KeyframeIndex,
19239            dimensionL: A_long,
19240            in_easeP0: *const AEGP_KeyframeEase,
19241            out_easeP0: *const AEGP_KeyframeEase,
19242        ) -> A_Err,
19243    >,
19244    pub AEGP_GetKeyframeFlags: ::std::option::Option<
19245        unsafe extern "C" fn(
19246            streamH: AEGP_StreamRefH,
19247            key_index: AEGP_KeyframeIndex,
19248            flagsP: *mut AEGP_KeyframeFlags,
19249        ) -> A_Err,
19250    >,
19251    pub AEGP_SetKeyframeFlag: ::std::option::Option<
19252        unsafe extern "C" fn(
19253            streamH: AEGP_StreamRefH,
19254            key_index: AEGP_KeyframeIndex,
19255            flag: AEGP_KeyframeFlags,
19256            true_falseB: A_Boolean,
19257        ) -> A_Err,
19258    >,
19259    pub AEGP_GetKeyframeInterpolation: ::std::option::Option<
19260        unsafe extern "C" fn(
19261            streamH: AEGP_StreamRefH,
19262            key_index: AEGP_KeyframeIndex,
19263            in_interpP0: *mut AEGP_KeyframeInterpolationType,
19264            out_interpP0: *mut AEGP_KeyframeInterpolationType,
19265        ) -> A_Err,
19266    >,
19267    pub AEGP_SetKeyframeInterpolation: ::std::option::Option<
19268        unsafe extern "C" fn(
19269            streamH: AEGP_StreamRefH,
19270            key_index: AEGP_KeyframeIndex,
19271            in_interp: AEGP_KeyframeInterpolationType,
19272            out_interp: AEGP_KeyframeInterpolationType,
19273        ) -> A_Err,
19274    >,
19275    pub AEGP_StartAddKeyframes: ::std::option::Option<
19276        unsafe extern "C" fn(streamH: AEGP_StreamRefH, akPH: *mut AEGP_AddKeyframesInfoH) -> A_Err,
19277    >,
19278    pub AEGP_AddKeyframes: ::std::option::Option<
19279        unsafe extern "C" fn(
19280            akH: AEGP_AddKeyframesInfoH,
19281            time_mode: AEGP_LTimeMode,
19282            timePT: *const A_Time,
19283            key_indexPL: *mut A_long,
19284        ) -> A_Err,
19285    >,
19286    pub AEGP_SetAddKeyframe: ::std::option::Option<
19287        unsafe extern "C" fn(
19288            akH: AEGP_AddKeyframesInfoH,
19289            key_indexL: A_long,
19290            valueP: *const AEGP_StreamValue,
19291        ) -> A_Err,
19292    >,
19293    pub AEGP_EndAddKeyframes: ::std::option::Option<
19294        unsafe extern "C" fn(addB: A_Boolean, akH: AEGP_AddKeyframesInfoH) -> A_Err,
19295    >,
19296}
19297#[repr(C)]
19298#[derive(Debug, Copy, Clone)]
19299pub struct AEGP_KeyframeSuite1 {
19300    pub AEGP_GetStreamNumKFs: ::std::option::Option<
19301        unsafe extern "C" fn(streamH: AEGP_StreamRefH, num_kfsPL: *mut A_long) -> A_Err,
19302    >,
19303    pub AEGP_GetKeyframeTime: ::std::option::Option<
19304        unsafe extern "C" fn(
19305            streamH: AEGP_StreamRefH,
19306            key_index: AEGP_KeyframeIndex,
19307            time_mode: AEGP_LTimeMode,
19308            timePT: *mut A_Time,
19309        ) -> A_Err,
19310    >,
19311    pub AEGP_InsertKeyframe: ::std::option::Option<
19312        unsafe extern "C" fn(
19313            streamH: AEGP_StreamRefH,
19314            time_mode: AEGP_LTimeMode,
19315            timePT: *const A_Time,
19316            key_indexP: *mut AEGP_KeyframeIndex,
19317        ) -> A_Err,
19318    >,
19319    pub AEGP_DeleteKeyframe: ::std::option::Option<
19320        unsafe extern "C" fn(streamH: AEGP_StreamRefH, key_index: AEGP_KeyframeIndex) -> A_Err,
19321    >,
19322    pub AEGP_GetNewKeyframeValue: ::std::option::Option<
19323        unsafe extern "C" fn(
19324            aegp_plugin_id: AEGP_PluginID,
19325            streamH: AEGP_StreamRefH,
19326            key_index: AEGP_KeyframeIndex,
19327            valueP: *mut AEGP_StreamValue,
19328        ) -> A_Err,
19329    >,
19330    pub AEGP_SetKeyframeValue: ::std::option::Option<
19331        unsafe extern "C" fn(
19332            streamH: AEGP_StreamRefH,
19333            key_index: AEGP_KeyframeIndex,
19334            valueP: *const AEGP_StreamValue,
19335        ) -> A_Err,
19336    >,
19337    pub AEGP_GetStreamValueDimensionality: ::std::option::Option<
19338        unsafe extern "C" fn(
19339            streamH: AEGP_StreamRefH,
19340            value_dimPS: *mut ::std::os::raw::c_short,
19341        ) -> A_Err,
19342    >,
19343    pub AEGP_GetStreamTemporalDimensionality: ::std::option::Option<
19344        unsafe extern "C" fn(
19345            streamH: AEGP_StreamRefH,
19346            temporal_dimPS: *mut ::std::os::raw::c_short,
19347        ) -> A_Err,
19348    >,
19349    pub AEGP_GetNewKeyframeSpatialTangents: ::std::option::Option<
19350        unsafe extern "C" fn(
19351            aegp_plugin_id: AEGP_PluginID,
19352            streamH: AEGP_StreamRefH,
19353            key_index: AEGP_KeyframeIndex,
19354            in_tanP0: *mut AEGP_StreamValue,
19355            out_tanP0: *mut AEGP_StreamValue,
19356        ) -> A_Err,
19357    >,
19358    pub AEGP_SetKeyframeSpatialTangents: ::std::option::Option<
19359        unsafe extern "C" fn(
19360            streamH: AEGP_StreamRefH,
19361            key_index: AEGP_KeyframeIndex,
19362            in_tanP0: *const AEGP_StreamValue,
19363            out_tanP0: *const AEGP_StreamValue,
19364        ) -> A_Err,
19365    >,
19366    pub AEGP_GetKeyframeTemporalEase: ::std::option::Option<
19367        unsafe extern "C" fn(
19368            streamH: AEGP_StreamRefH,
19369            key_index: AEGP_KeyframeIndex,
19370            dimensionL: A_long,
19371            in_easeP0: *mut AEGP_KeyframeEase,
19372            out_easeP0: *mut AEGP_KeyframeEase,
19373        ) -> A_Err,
19374    >,
19375    pub AEGP_SetKeyframeTemporalEase: ::std::option::Option<
19376        unsafe extern "C" fn(
19377            streamH: AEGP_StreamRefH,
19378            key_index: AEGP_KeyframeIndex,
19379            dimensionL: A_long,
19380            in_easeP0: *const AEGP_KeyframeEase,
19381            out_easeP0: *const AEGP_KeyframeEase,
19382        ) -> A_Err,
19383    >,
19384    pub AEGP_GetKeyframeFlags: ::std::option::Option<
19385        unsafe extern "C" fn(
19386            streamH: AEGP_StreamRefH,
19387            key_index: AEGP_KeyframeIndex,
19388            flagsP: *mut AEGP_KeyframeFlags,
19389        ) -> A_Err,
19390    >,
19391    pub AEGP_SetKeyframeFlag: ::std::option::Option<
19392        unsafe extern "C" fn(
19393            streamH: AEGP_StreamRefH,
19394            key_index: AEGP_KeyframeIndex,
19395            flag: AEGP_KeyframeFlags,
19396            true_falseB: A_Boolean,
19397        ) -> A_Err,
19398    >,
19399    pub AEGP_GetKeyframeInterpolation: ::std::option::Option<
19400        unsafe extern "C" fn(
19401            streamH: AEGP_StreamRefH,
19402            key_index: AEGP_KeyframeIndex,
19403            in_interpP0: *mut AEGP_KeyframeInterpolationType,
19404            out_interpP0: *mut AEGP_KeyframeInterpolationType,
19405        ) -> A_Err,
19406    >,
19407    pub AEGP_SetKeyframeInterpolation: ::std::option::Option<
19408        unsafe extern "C" fn(
19409            streamH: AEGP_StreamRefH,
19410            key_index: AEGP_KeyframeIndex,
19411            in_interp: AEGP_KeyframeInterpolationType,
19412            out_interp: AEGP_KeyframeInterpolationType,
19413        ) -> A_Err,
19414    >,
19415}
19416#[repr(C)]
19417#[derive(Debug, Copy, Clone)]
19418pub struct AEGP_ItemSuite2 {
19419    pub AEGP_GetNextItem: ::std::option::Option<
19420        unsafe extern "C" fn(itemH: AEGP_ItemH, next_itemPH: *mut AEGP_ItemH) -> A_Err,
19421    >,
19422    pub AEGP_GetActiveItem:
19423        ::std::option::Option<unsafe extern "C" fn(itemPH: *mut AEGP_ItemH) -> A_Err>,
19424    pub AEGP_IsItemSelected: ::std::option::Option<
19425        unsafe extern "C" fn(itemH: AEGP_ItemH, selectedPB: *mut A_Boolean) -> A_Err,
19426    >,
19427    pub AEGP_SelectItem: ::std::option::Option<
19428        unsafe extern "C" fn(
19429            itemH: AEGP_ItemH,
19430            selectB: A_Boolean,
19431            deselect_othersB: A_Boolean,
19432        ) -> A_Err,
19433    >,
19434    pub AEGP_GetItemType: ::std::option::Option<
19435        unsafe extern "C" fn(itemH: AEGP_ItemH, item_typeP: *mut AEGP_ItemType) -> A_Err,
19436    >,
19437    pub AEGP_GetTypeName: ::std::option::Option<
19438        unsafe extern "C" fn(item_type: AEGP_ItemType, nameZ: *mut A_char) -> A_Err,
19439    >,
19440    pub AEGP_GetItemName:
19441        ::std::option::Option<unsafe extern "C" fn(itemH: AEGP_ItemH, nameZ: *mut A_char) -> A_Err>,
19442    pub AEGP_GetItemID: ::std::option::Option<
19443        unsafe extern "C" fn(itemH: AEGP_ItemH, item_idPL: *mut A_long) -> A_Err,
19444    >,
19445    pub AEGP_GetItemFlags: ::std::option::Option<
19446        unsafe extern "C" fn(itemH: AEGP_ItemH, item_flagsP: *mut AEGP_ItemFlags) -> A_Err,
19447    >,
19448    pub AEGP_SetItemUseProxy: ::std::option::Option<
19449        unsafe extern "C" fn(itemH: AEGP_ItemH, use_proxyB: A_Boolean) -> A_Err,
19450    >,
19451    pub AEGP_GetItemParentFolder: ::std::option::Option<
19452        unsafe extern "C" fn(itemH: AEGP_ItemH, parent_folder_itemPH: *mut AEGP_ItemH) -> A_Err,
19453    >,
19454    pub AEGP_GetItemDuration: ::std::option::Option<
19455        unsafe extern "C" fn(itemH: AEGP_ItemH, durationPT: *mut A_Time) -> A_Err,
19456    >,
19457    pub AEGP_GetItemCurrentTime: ::std::option::Option<
19458        unsafe extern "C" fn(itemH: AEGP_ItemH, curr_timePT: *mut A_Time) -> A_Err,
19459    >,
19460    pub AEGP_GetItemDimensions: ::std::option::Option<
19461        unsafe extern "C" fn(
19462            itemH: AEGP_ItemH,
19463            widthPL: *mut A_long,
19464            heightPL: *mut A_long,
19465        ) -> A_Err,
19466    >,
19467    pub AEGP_GetItemPixelAspectRatio: ::std::option::Option<
19468        unsafe extern "C" fn(itemH: AEGP_ItemH, pix_aspect_ratioPRt: *mut A_Ratio) -> A_Err,
19469    >,
19470    pub AEGP_DeleteItem: ::std::option::Option<unsafe extern "C" fn(itemH: AEGP_ItemH) -> A_Err>,
19471    pub AEGP_GetItemSolidColor: ::std::option::Option<
19472        unsafe extern "C" fn(itemH: AEGP_ItemH, colorP: *mut AEGP_ColorVal) -> A_Err,
19473    >,
19474    pub AEGP_SetSolidColor: ::std::option::Option<
19475        unsafe extern "C" fn(itemH: AEGP_ItemH, color: AEGP_ColorVal) -> A_Err,
19476    >,
19477    pub AEGP_SetSolidDimensions: ::std::option::Option<
19478        unsafe extern "C" fn(itemH: AEGP_ItemH, widthS: A_short, heightS: A_short) -> A_Err,
19479    >,
19480    pub AEGP_CreateNewFolder: ::std::option::Option<
19481        unsafe extern "C" fn(
19482            nameZ: *const A_char,
19483            parent_folderH0: AEGP_ItemH,
19484            new_folderPH: *mut AEGP_ItemH,
19485        ) -> A_Err,
19486    >,
19487    pub AEGP_SetItemCurrentTime: ::std::option::Option<
19488        unsafe extern "C" fn(itemH: AEGP_ItemH, new_timePT: *const A_Time) -> A_Err,
19489    >,
19490    pub AEGP_RenderNewItemSoundData: ::std::option::Option<
19491        unsafe extern "C" fn(
19492            itemH: AEGP_ItemH,
19493            start_timePT: *const A_Time,
19494            durationPT: *const A_Time,
19495            sound_formatP: *const AEGP_SoundDataFormat,
19496            new_sound_dataPH: *mut AEGP_SoundDataH,
19497        ) -> A_Err,
19498    >,
19499}
19500#[repr(C)]
19501#[derive(Debug, Copy, Clone)]
19502pub struct AEGP_ItemSuite1 {
19503    pub AEGP_GetNextItem: ::std::option::Option<
19504        unsafe extern "C" fn(itemH: AEGP_ItemH, next_itemPH: *mut AEGP_ItemH) -> A_Err,
19505    >,
19506    pub AEGP_GetActiveItem:
19507        ::std::option::Option<unsafe extern "C" fn(itemPH: *mut AEGP_ItemH) -> A_Err>,
19508    pub AEGP_IsItemSelected: ::std::option::Option<
19509        unsafe extern "C" fn(itemH: AEGP_ItemH, selectedPB: *mut A_Boolean) -> A_Err,
19510    >,
19511    pub AEGP_SelectItem: ::std::option::Option<
19512        unsafe extern "C" fn(
19513            itemH: AEGP_ItemH,
19514            selectB: A_Boolean,
19515            deselect_othersB: A_Boolean,
19516        ) -> A_Err,
19517    >,
19518    pub AEGP_GetItemType: ::std::option::Option<
19519        unsafe extern "C" fn(itemH: AEGP_ItemH, item_typeP: *mut AEGP_ItemType) -> A_Err,
19520    >,
19521    pub AEGP_GetTypeName: ::std::option::Option<
19522        unsafe extern "C" fn(item_type: AEGP_ItemType, nameZ: *mut A_char) -> A_Err,
19523    >,
19524    pub AEGP_GetItemName:
19525        ::std::option::Option<unsafe extern "C" fn(itemH: AEGP_ItemH, nameZ: *mut A_char) -> A_Err>,
19526    pub AEGP_GetItemID: ::std::option::Option<
19527        unsafe extern "C" fn(itemH: AEGP_ItemH, item_idPL: *mut A_long) -> A_Err,
19528    >,
19529    pub AEGP_GetItemFlags: ::std::option::Option<
19530        unsafe extern "C" fn(itemH: AEGP_ItemH, item_flagsP: *mut AEGP_ItemFlags) -> A_Err,
19531    >,
19532    pub AEGP_SetItemUseProxy: ::std::option::Option<
19533        unsafe extern "C" fn(itemH: AEGP_ItemH, use_proxyB: A_Boolean) -> A_Err,
19534    >,
19535    pub AEGP_GetItemParentFolder: ::std::option::Option<
19536        unsafe extern "C" fn(itemH: AEGP_ItemH, parent_folder_itemPH: *mut AEGP_ItemH) -> A_Err,
19537    >,
19538    pub AEGP_GetItemDuration: ::std::option::Option<
19539        unsafe extern "C" fn(itemH: AEGP_ItemH, durationPT: *mut A_Time) -> A_Err,
19540    >,
19541    pub AEGP_GetItemCurrentTime: ::std::option::Option<
19542        unsafe extern "C" fn(itemH: AEGP_ItemH, curr_timePT: *mut A_Time) -> A_Err,
19543    >,
19544    pub AEGP_GetItemDimensions: ::std::option::Option<
19545        unsafe extern "C" fn(
19546            itemH: AEGP_ItemH,
19547            widthPL: *mut A_long,
19548            heightPL: *mut A_long,
19549        ) -> A_Err,
19550    >,
19551    pub AEGP_GetItemPixelAspectRatio: ::std::option::Option<
19552        unsafe extern "C" fn(itemH: AEGP_ItemH, pix_aspect_ratioPRt: *mut A_Ratio) -> A_Err,
19553    >,
19554    pub AEGP_DeleteItem: ::std::option::Option<unsafe extern "C" fn(itemH: AEGP_ItemH) -> A_Err>,
19555    pub AEGP_GetItemSolidColor: ::std::option::Option<
19556        unsafe extern "C" fn(itemH: AEGP_ItemH, colorP: *mut AEGP_ColorVal) -> A_Err,
19557    >,
19558    pub AEGP_CreateNewFolder: ::std::option::Option<
19559        unsafe extern "C" fn(
19560            nameZ: *const A_char,
19561            parent_folderH0: AEGP_ItemH,
19562            new_folderPH: *mut AEGP_ItemH,
19563        ) -> A_Err,
19564    >,
19565    pub AEGP_SetItemCurrentTime: ::std::option::Option<
19566        unsafe extern "C" fn(itemH: AEGP_ItemH, new_timePT: *const A_Time) -> A_Err,
19567    >,
19568    pub AEGP_RenderNewItemSoundData: ::std::option::Option<
19569        unsafe extern "C" fn(
19570            itemH: AEGP_ItemH,
19571            start_timePT: *const A_Time,
19572            durationPT: *const A_Time,
19573            sound_formatP: *const AEGP_SoundDataFormat,
19574            new_sound_dataPH: *mut AEGP_SoundDataH,
19575        ) -> A_Err,
19576    >,
19577}
19578#[repr(C)]
19579#[derive(Debug, Copy, Clone)]
19580pub struct AEGP_UtilitySuite5 {
19581    pub AEGP_ReportInfo: ::std::option::Option<
19582        unsafe extern "C" fn(aegp_plugin_id: AEGP_PluginID, info_stringZ: *const A_char) -> A_Err,
19583    >,
19584    pub AEGP_GetDriverPluginInitFuncVersion: ::std::option::Option<
19585        unsafe extern "C" fn(major_versionPS: *mut A_short, minor_versionPS: *mut A_short) -> A_Err,
19586    >,
19587    pub AEGP_GetDriverImplementationVersion: ::std::option::Option<
19588        unsafe extern "C" fn(major_versionPS: *mut A_short, minor_versionPS: *mut A_short) -> A_Err,
19589    >,
19590    pub AEGP_StartQuietErrors:
19591        ::std::option::Option<unsafe extern "C" fn(err_stateP: *mut AEGP_ErrReportState) -> A_Err>,
19592    pub AEGP_EndQuietErrors: ::std::option::Option<
19593        unsafe extern "C" fn(
19594            report_quieted_errorsB: A_Boolean,
19595            err_stateP: *mut AEGP_ErrReportState,
19596        ) -> A_Err,
19597    >,
19598    pub AEGP_GetLastErrorMessage: ::std::option::Option<
19599        unsafe extern "C" fn(
19600            buffer_size: A_long,
19601            error_string: *mut A_char,
19602            error_num: *mut A_Err,
19603        ) -> A_Err,
19604    >,
19605    pub AEGP_StartUndoGroup:
19606        ::std::option::Option<unsafe extern "C" fn(undo_nameZ: *const A_char) -> A_Err>,
19607    pub AEGP_EndUndoGroup: ::std::option::Option<unsafe extern "C" fn() -> A_Err>,
19608    pub AEGP_RegisterWithAEGP: ::std::option::Option<
19609        unsafe extern "C" fn(
19610            global_refcon: AEGP_GlobalRefcon,
19611            plugin_nameZ: *const A_char,
19612            plugin_id: *mut AEGP_PluginID,
19613        ) -> A_Err,
19614    >,
19615    pub AEGP_GetMainHWND: ::std::option::Option<
19616        unsafe extern "C" fn(main_hwnd: *mut ::std::os::raw::c_void) -> A_Err,
19617    >,
19618    pub AEGP_ShowHideAllFloaters:
19619        ::std::option::Option<unsafe extern "C" fn(include_tool_palB: A_Boolean) -> A_Err>,
19620    pub AEGP_PaintPalGetForeColor:
19621        ::std::option::Option<unsafe extern "C" fn(fore_colorP: *mut AEGP_ColorVal) -> A_Err>,
19622    pub AEGP_PaintPalGetBackColor:
19623        ::std::option::Option<unsafe extern "C" fn(back_colorP: *mut AEGP_ColorVal) -> A_Err>,
19624    pub AEGP_PaintPalSetForeColor:
19625        ::std::option::Option<unsafe extern "C" fn(fore_colorP: *const AEGP_ColorVal) -> A_Err>,
19626    pub AEGP_PaintPalSetBackColor:
19627        ::std::option::Option<unsafe extern "C" fn(back_colorP: *const AEGP_ColorVal) -> A_Err>,
19628    pub AEGP_CharPalGetFillColor: ::std::option::Option<
19629        unsafe extern "C" fn(
19630            is_fill_color_definedPB: *mut A_Boolean,
19631            fill_colorP: *mut AEGP_ColorVal,
19632        ) -> A_Err,
19633    >,
19634    pub AEGP_CharPalGetStrokeColor: ::std::option::Option<
19635        unsafe extern "C" fn(
19636            is_stroke_color_definedPB: *mut A_Boolean,
19637            stroke_colorP: *mut AEGP_ColorVal,
19638        ) -> A_Err,
19639    >,
19640    pub AEGP_CharPalSetFillColor:
19641        ::std::option::Option<unsafe extern "C" fn(fill_colorP: *const AEGP_ColorVal) -> A_Err>,
19642    pub AEGP_CharPalSetStrokeColor:
19643        ::std::option::Option<unsafe extern "C" fn(stroke_colorP: *const AEGP_ColorVal) -> A_Err>,
19644    pub AEGP_CharPalIsFillColorUIFrontmost: ::std::option::Option<
19645        unsafe extern "C" fn(is_fill_color_selectedPB: *mut A_Boolean) -> A_Err,
19646    >,
19647    pub AEGP_ConvertFpLongToHSFRatio: ::std::option::Option<
19648        unsafe extern "C" fn(numberF: A_FpLong, ratioPR: *mut A_Ratio) -> A_Err,
19649    >,
19650    pub AEGP_ConvertHSFRatioToFpLong: ::std::option::Option<
19651        unsafe extern "C" fn(ratioR: A_Ratio, numberPF: *mut A_FpLong) -> A_Err,
19652    >,
19653    pub AEGP_CauseIdleRoutinesToBeCalled: ::std::option::Option<unsafe extern "C" fn() -> A_Err>,
19654    pub AEGP_GetSuppressInteractiveUI:
19655        ::std::option::Option<unsafe extern "C" fn(ui_is_suppressedPB: *mut A_Boolean) -> A_Err>,
19656    pub AEGP_WriteToOSConsole:
19657        ::std::option::Option<unsafe extern "C" fn(textZ: *const A_char) -> A_Err>,
19658    pub AEGP_WriteToDebugLog: ::std::option::Option<
19659        unsafe extern "C" fn(
19660            subsystemZ: *const A_char,
19661            event_typeZ: *const A_char,
19662            infoZ: *const A_char,
19663        ) -> A_Err,
19664    >,
19665    pub AEGP_IsScriptingAvailable:
19666        ::std::option::Option<unsafe extern "C" fn(outAvailablePB: *mut A_Boolean) -> A_Err>,
19667    pub AEGP_ExecuteScript: ::std::option::Option<
19668        unsafe extern "C" fn(
19669            inPlugin_id: AEGP_PluginID,
19670            inScriptZ: *const A_char,
19671            platform_encodingB: A_Boolean,
19672            outResultPH0: *mut AEGP_MemHandle,
19673            outErrorStringPH0: *mut AEGP_MemHandle,
19674        ) -> A_Err,
19675    >,
19676    pub AEGP_HostIsActivated:
19677        ::std::option::Option<unsafe extern "C" fn(is_activatedPB: *mut A_Boolean) -> A_Err>,
19678    pub AEGP_GetPluginPlatformRef: ::std::option::Option<
19679        unsafe extern "C" fn(
19680            plug_id: AEGP_PluginID,
19681            plat_refPPV: *mut *mut ::std::os::raw::c_void,
19682        ) -> A_Err,
19683    >,
19684    pub AEGP_UpdateFontList: ::std::option::Option<unsafe extern "C" fn() -> A_Err>,
19685}
19686#[repr(C)]
19687#[derive(Debug, Copy, Clone)]
19688pub struct AEGP_UtilitySuite4 {
19689    pub AEGP_ReportInfo: ::std::option::Option<
19690        unsafe extern "C" fn(aegp_plugin_id: AEGP_PluginID, info_stringZ: *const A_char) -> A_Err,
19691    >,
19692    pub AEGP_GetDriverPluginInitFuncVersion: ::std::option::Option<
19693        unsafe extern "C" fn(major_versionPS: *mut A_short, minor_versionPS: *mut A_short) -> A_Err,
19694    >,
19695    pub AEGP_GetDriverImplementationVersion: ::std::option::Option<
19696        unsafe extern "C" fn(major_versionPS: *mut A_short, minor_versionPS: *mut A_short) -> A_Err,
19697    >,
19698    pub AEGP_StartQuietErrors:
19699        ::std::option::Option<unsafe extern "C" fn(err_stateP: *mut AEGP_ErrReportState) -> A_Err>,
19700    pub AEGP_EndQuietErrors: ::std::option::Option<
19701        unsafe extern "C" fn(
19702            report_quieted_errorsB: A_Boolean,
19703            err_stateP: *mut AEGP_ErrReportState,
19704        ) -> A_Err,
19705    >,
19706    pub AEGP_GetLastErrorMessage: ::std::option::Option<
19707        unsafe extern "C" fn(
19708            buffer_size: A_long,
19709            error_string: *mut A_char,
19710            error_num: *mut A_Err,
19711        ) -> A_Err,
19712    >,
19713    pub AEGP_StartUndoGroup:
19714        ::std::option::Option<unsafe extern "C" fn(undo_nameZ: *const A_char) -> A_Err>,
19715    pub AEGP_EndUndoGroup: ::std::option::Option<unsafe extern "C" fn() -> A_Err>,
19716    pub AEGP_RegisterWithAEGP: ::std::option::Option<
19717        unsafe extern "C" fn(
19718            global_refcon: AEGP_GlobalRefcon,
19719            plugin_nameZ: *const A_char,
19720            plugin_id: *mut AEGP_PluginID,
19721        ) -> A_Err,
19722    >,
19723    pub AEGP_GetMainHWND: ::std::option::Option<
19724        unsafe extern "C" fn(main_hwnd: *mut ::std::os::raw::c_void) -> A_Err,
19725    >,
19726    pub AEGP_ShowHideAllFloaters:
19727        ::std::option::Option<unsafe extern "C" fn(include_tool_palB: A_Boolean) -> A_Err>,
19728    pub AEGP_PaintPalGetForeColor:
19729        ::std::option::Option<unsafe extern "C" fn(fore_colorP: *mut AEGP_ColorVal) -> A_Err>,
19730    pub AEGP_PaintPalGetBackColor:
19731        ::std::option::Option<unsafe extern "C" fn(back_colorP: *mut AEGP_ColorVal) -> A_Err>,
19732    pub AEGP_PaintPalSetForeColor:
19733        ::std::option::Option<unsafe extern "C" fn(fore_colorP: *const AEGP_ColorVal) -> A_Err>,
19734    pub AEGP_PaintPalSetBackColor:
19735        ::std::option::Option<unsafe extern "C" fn(back_colorP: *const AEGP_ColorVal) -> A_Err>,
19736    pub AEGP_CharPalGetFillColor: ::std::option::Option<
19737        unsafe extern "C" fn(
19738            is_fill_color_definedPB: *mut A_Boolean,
19739            fill_colorP: *mut AEGP_ColorVal,
19740        ) -> A_Err,
19741    >,
19742    pub AEGP_CharPalGetStrokeColor: ::std::option::Option<
19743        unsafe extern "C" fn(
19744            is_stroke_color_definedPB: *mut A_Boolean,
19745            stroke_colorP: *mut AEGP_ColorVal,
19746        ) -> A_Err,
19747    >,
19748    pub AEGP_CharPalSetFillColor:
19749        ::std::option::Option<unsafe extern "C" fn(fill_colorP: *const AEGP_ColorVal) -> A_Err>,
19750    pub AEGP_CharPalSetStrokeColor:
19751        ::std::option::Option<unsafe extern "C" fn(stroke_colorP: *const AEGP_ColorVal) -> A_Err>,
19752    pub AEGP_CharPalIsFillColorUIFrontmost: ::std::option::Option<
19753        unsafe extern "C" fn(is_fill_color_selectedPB: *mut A_Boolean) -> A_Err,
19754    >,
19755    pub AEGP_ConvertFpLongToHSFRatio: ::std::option::Option<
19756        unsafe extern "C" fn(numberF: A_FpLong, ratioPR: *mut A_Ratio) -> A_Err,
19757    >,
19758    pub AEGP_ConvertHSFRatioToFpLong: ::std::option::Option<
19759        unsafe extern "C" fn(ratioR: A_Ratio, numberPF: *mut A_FpLong) -> A_Err,
19760    >,
19761    pub AEGP_CauseIdleRoutinesToBeCalled: ::std::option::Option<unsafe extern "C" fn() -> A_Err>,
19762    pub AEGP_GetSuppressInteractiveUI:
19763        ::std::option::Option<unsafe extern "C" fn(ui_is_suppressedPB: *mut A_Boolean) -> A_Err>,
19764    pub AEGP_WriteToOSConsole:
19765        ::std::option::Option<unsafe extern "C" fn(textZ: *const A_char) -> A_Err>,
19766    pub AEGP_WriteToDebugLog: ::std::option::Option<
19767        unsafe extern "C" fn(
19768            subsystemZ: *const A_char,
19769            event_typeZ: *const A_char,
19770            infoZ: *const A_char,
19771        ) -> A_Err,
19772    >,
19773    pub AEGP_IsScriptingAvailable:
19774        ::std::option::Option<unsafe extern "C" fn(outAvailablePB: *mut A_Boolean) -> A_Err>,
19775    pub AEGP_ExecuteScript: ::std::option::Option<
19776        unsafe extern "C" fn(
19777            inPlugin_id: AEGP_PluginID,
19778            inScriptZ: *const A_char,
19779            platform_encodingB: A_Boolean,
19780            outResultPH0: *mut AEGP_MemHandle,
19781            outErrorStringPH0: *mut AEGP_MemHandle,
19782        ) -> A_Err,
19783    >,
19784    pub AEGP_HostIsActivated:
19785        ::std::option::Option<unsafe extern "C" fn(is_activatedPB: *mut A_Boolean) -> A_Err>,
19786    pub AEGP_GetPluginPlatformRef: ::std::option::Option<
19787        unsafe extern "C" fn(
19788            plug_id: AEGP_PluginID,
19789            plat_refPPV: *mut *mut ::std::os::raw::c_void,
19790        ) -> A_Err,
19791    >,
19792}
19793#[repr(C)]
19794#[derive(Debug, Copy, Clone)]
19795pub struct AEGP_UtilitySuite3 {
19796    pub AEGP_ReportInfo: ::std::option::Option<
19797        unsafe extern "C" fn(aegp_plugin_id: AEGP_PluginID, info_stringZ: *const A_char) -> A_Err,
19798    >,
19799    pub AEGP_GetDriverPluginInitFuncVersion: ::std::option::Option<
19800        unsafe extern "C" fn(major_versionPS: *mut A_short, minor_versionPS: *mut A_short) -> A_Err,
19801    >,
19802    pub AEGP_GetDriverImplementationVersion: ::std::option::Option<
19803        unsafe extern "C" fn(major_versionPS: *mut A_short, minor_versionPS: *mut A_short) -> A_Err,
19804    >,
19805    pub AEGP_StartQuietErrors:
19806        ::std::option::Option<unsafe extern "C" fn(err_stateP: *mut AEGP_ErrReportState) -> A_Err>,
19807    pub AEGP_EndQuietErrors: ::std::option::Option<
19808        unsafe extern "C" fn(
19809            report_quieted_errorsB: A_Boolean,
19810            err_stateP: *mut AEGP_ErrReportState,
19811        ) -> A_Err,
19812    >,
19813    pub AEGP_StartUndoGroup:
19814        ::std::option::Option<unsafe extern "C" fn(undo_nameZ: *const A_char) -> A_Err>,
19815    pub AEGP_EndUndoGroup: ::std::option::Option<unsafe extern "C" fn() -> A_Err>,
19816    pub AEGP_RegisterWithAEGP: ::std::option::Option<
19817        unsafe extern "C" fn(
19818            global_refcon: AEGP_GlobalRefcon,
19819            plugin_nameZ: *const A_char,
19820            plugin_id: *mut AEGP_PluginID,
19821        ) -> A_Err,
19822    >,
19823    pub AEGP_GetMainHWND: ::std::option::Option<
19824        unsafe extern "C" fn(main_hwnd: *mut ::std::os::raw::c_void) -> A_Err,
19825    >,
19826    pub AEGP_ShowHideAllFloaters:
19827        ::std::option::Option<unsafe extern "C" fn(include_tool_palB: A_Boolean) -> A_Err>,
19828    pub AEGP_PaintPalGetForeColor:
19829        ::std::option::Option<unsafe extern "C" fn(fore_colorP: *mut AEGP_ColorVal) -> A_Err>,
19830    pub AEGP_PaintPalGetBackColor:
19831        ::std::option::Option<unsafe extern "C" fn(back_colorP: *mut AEGP_ColorVal) -> A_Err>,
19832    pub AEGP_PaintPalSetForeColor:
19833        ::std::option::Option<unsafe extern "C" fn(fore_colorP: *const AEGP_ColorVal) -> A_Err>,
19834    pub AEGP_PaintPalSetBackColor:
19835        ::std::option::Option<unsafe extern "C" fn(back_colorP: *const AEGP_ColorVal) -> A_Err>,
19836    pub AEGP_CharPalGetFillColor: ::std::option::Option<
19837        unsafe extern "C" fn(
19838            is_fill_color_definedPB: *mut A_Boolean,
19839            fill_colorP: *mut AEGP_ColorVal,
19840        ) -> A_Err,
19841    >,
19842    pub AEGP_CharPalGetStrokeColor: ::std::option::Option<
19843        unsafe extern "C" fn(
19844            is_stroke_color_definedPB: *mut A_Boolean,
19845            stroke_colorP: *mut AEGP_ColorVal,
19846        ) -> A_Err,
19847    >,
19848    pub AEGP_CharPalSetFillColor:
19849        ::std::option::Option<unsafe extern "C" fn(fill_colorP: *const AEGP_ColorVal) -> A_Err>,
19850    pub AEGP_CharPalSetStrokeColor:
19851        ::std::option::Option<unsafe extern "C" fn(stroke_colorP: *const AEGP_ColorVal) -> A_Err>,
19852    pub AEGP_CharPalIsFillColorUIFrontmost: ::std::option::Option<
19853        unsafe extern "C" fn(is_fill_color_selectedPB: *mut A_Boolean) -> A_Err,
19854    >,
19855    pub AEGP_ConvertFpLongToHSFRatio: ::std::option::Option<
19856        unsafe extern "C" fn(numberF: A_FpLong, ratioPR: *mut A_Ratio) -> A_Err,
19857    >,
19858    pub AEGP_ConvertHSFRatioToFpLong: ::std::option::Option<
19859        unsafe extern "C" fn(ratioR: A_Ratio, numberPF: *mut A_FpLong) -> A_Err,
19860    >,
19861    pub AEGP_CauseIdleRoutinesToBeCalled: ::std::option::Option<unsafe extern "C" fn() -> A_Err>,
19862    pub AEGP_GetSuppressInteractiveUI:
19863        ::std::option::Option<unsafe extern "C" fn(ui_is_suppressedPB: *mut A_Boolean) -> A_Err>,
19864    pub AEGP_WriteToOSConsole:
19865        ::std::option::Option<unsafe extern "C" fn(textZ: *const A_char) -> A_Err>,
19866    pub AEGP_WriteToDebugLog: ::std::option::Option<
19867        unsafe extern "C" fn(
19868            subsystemZ: *const A_char,
19869            event_typeZ: *const A_char,
19870            infoZ: *const A_char,
19871        ) -> A_Err,
19872    >,
19873}
19874#[repr(C)]
19875#[derive(Debug, Copy, Clone)]
19876pub struct AEGP_UtilitySuite2 {
19877    pub AEGP_ReportInfo: ::std::option::Option<
19878        unsafe extern "C" fn(aegp_plugin_id: AEGP_PluginID, info_stringZ: *const A_char) -> A_Err,
19879    >,
19880    pub AEGP_GetDriverPluginInitFuncVersion: ::std::option::Option<
19881        unsafe extern "C" fn(major_versionPS: *mut A_short, minor_versionPS: *mut A_short) -> A_Err,
19882    >,
19883    pub AEGP_GetDriverImplementationVersion: ::std::option::Option<
19884        unsafe extern "C" fn(major_versionPS: *mut A_short, minor_versionPS: *mut A_short) -> A_Err,
19885    >,
19886    pub AEGP_StartQuietErrors:
19887        ::std::option::Option<unsafe extern "C" fn(err_stateP: *mut AEGP_ErrReportState) -> A_Err>,
19888    pub AEGP_EndQuietErrors: ::std::option::Option<
19889        unsafe extern "C" fn(
19890            report_quieted_errorsB: A_Boolean,
19891            err_stateP: *mut AEGP_ErrReportState,
19892        ) -> A_Err,
19893    >,
19894    pub AEGP_StartUndoGroup:
19895        ::std::option::Option<unsafe extern "C" fn(undo_nameZ: *const A_char) -> A_Err>,
19896    pub AEGP_EndUndoGroup: ::std::option::Option<unsafe extern "C" fn() -> A_Err>,
19897    pub AEGP_RegisterWithAEGP: ::std::option::Option<
19898        unsafe extern "C" fn(
19899            global_refcon: AEGP_GlobalRefcon,
19900            plugin_nameZ: *const A_char,
19901            plugin_id: *mut AEGP_PluginID,
19902        ) -> A_Err,
19903    >,
19904    pub AEGP_GetMainHWND: ::std::option::Option<
19905        unsafe extern "C" fn(main_hwnd: *mut ::std::os::raw::c_void) -> A_Err,
19906    >,
19907    pub AEGP_ShowHideAllFloaters:
19908        ::std::option::Option<unsafe extern "C" fn(include_tool_palB: A_Boolean) -> A_Err>,
19909    pub AEGP_PaintPalGetForeColor:
19910        ::std::option::Option<unsafe extern "C" fn(fore_colorP: *mut AEGP_ColorVal) -> A_Err>,
19911    pub AEGP_PaintPalGetBackColor:
19912        ::std::option::Option<unsafe extern "C" fn(back_colorP: *mut AEGP_ColorVal) -> A_Err>,
19913    pub AEGP_PaintPalSetForeColor:
19914        ::std::option::Option<unsafe extern "C" fn(fore_colorP: *const AEGP_ColorVal) -> A_Err>,
19915    pub AEGP_PaintPalSetBackColor:
19916        ::std::option::Option<unsafe extern "C" fn(back_colorP: *const AEGP_ColorVal) -> A_Err>,
19917    pub AEGP_CharPalGetFillColor: ::std::option::Option<
19918        unsafe extern "C" fn(
19919            is_fill_color_definedPB: *mut A_Boolean,
19920            fill_colorP: *mut AEGP_ColorVal,
19921        ) -> A_Err,
19922    >,
19923    pub AEGP_CharPalGetStrokeColor: ::std::option::Option<
19924        unsafe extern "C" fn(
19925            is_stroke_color_definedPB: *mut A_Boolean,
19926            stroke_colorP: *mut AEGP_ColorVal,
19927        ) -> A_Err,
19928    >,
19929    pub AEGP_CharPalSetFillColor:
19930        ::std::option::Option<unsafe extern "C" fn(fill_colorP: *const AEGP_ColorVal) -> A_Err>,
19931    pub AEGP_CharPalSetStrokeColor:
19932        ::std::option::Option<unsafe extern "C" fn(stroke_colorP: *const AEGP_ColorVal) -> A_Err>,
19933    pub AEGP_CharPalIsFillColorUIFrontmost: ::std::option::Option<
19934        unsafe extern "C" fn(is_fill_color_selectedPB: *mut A_Boolean) -> A_Err,
19935    >,
19936}
19937#[repr(C)]
19938#[derive(Debug, Copy, Clone)]
19939pub struct AEGP_UtilitySuite1 {
19940    pub AEGP_ReportInfo: ::std::option::Option<
19941        unsafe extern "C" fn(aegp_plugin_id: AEGP_PluginID, info_stringZ: *const A_char) -> A_Err,
19942    >,
19943    pub AEGP_GetDriverPluginInitFuncVersion: ::std::option::Option<
19944        unsafe extern "C" fn(major_versionPS: *mut A_short, minor_versionPS: *mut A_short) -> A_Err,
19945    >,
19946    pub AEGP_GetDriverImplementationVersion: ::std::option::Option<
19947        unsafe extern "C" fn(major_versionPS: *mut A_short, minor_versionPS: *mut A_short) -> A_Err,
19948    >,
19949    pub AEGP_StartQuietErrors:
19950        ::std::option::Option<unsafe extern "C" fn(err_stateP: *mut AEGP_ErrReportState) -> A_Err>,
19951    pub AEGP_EndQuietErrors: ::std::option::Option<
19952        unsafe extern "C" fn(
19953            report_quieted_errorsB: A_Boolean,
19954            err_stateP: *mut AEGP_ErrReportState,
19955        ) -> A_Err,
19956    >,
19957    pub AEGP_StartUndoGroup:
19958        ::std::option::Option<unsafe extern "C" fn(undo_nameZ: *const A_char) -> A_Err>,
19959    pub AEGP_EndUndoGroup: ::std::option::Option<unsafe extern "C" fn() -> A_Err>,
19960    pub AEGP_RegisterWithAEGP: ::std::option::Option<
19961        unsafe extern "C" fn(
19962            global_refcon: AEGP_GlobalRefcon,
19963            plugin_nameZ: *const A_char,
19964            plugin_id: *mut AEGP_PluginID,
19965        ) -> A_Err,
19966    >,
19967    pub AEGP_GetMainHWND: ::std::option::Option<
19968        unsafe extern "C" fn(main_hwnd: *mut ::std::os::raw::c_void) -> A_Err,
19969    >,
19970}
19971#[repr(C)]
19972#[derive(Debug, Copy, Clone)]
19973pub struct AEGP_QueryXformSuite1 {
19974    pub AEGP_QueryXformGetSrcType: ::std::option::Option<
19975        unsafe extern "C" fn(
19976            query_contextH: PR_QueryContextH,
19977            src_type: *mut AEGP_QueryXformType,
19978        ) -> A_Err,
19979    >,
19980    pub AEGP_QueryXformGetDstType: ::std::option::Option<
19981        unsafe extern "C" fn(
19982            query_contextH: PR_QueryContextH,
19983            dst_type: *mut AEGP_QueryXformType,
19984        ) -> A_Err,
19985    >,
19986    pub AEGP_QueryXformGetLayer: ::std::option::Option<
19987        unsafe extern "C" fn(query_contextH: PR_QueryContextH, layerPH: *mut AEGP_LayerH) -> A_Err,
19988    >,
19989    pub AEGP_QueryXformGetComp: ::std::option::Option<
19990        unsafe extern "C" fn(query_contextH: PR_QueryContextH, compPH: *mut AEGP_CompH) -> A_Err,
19991    >,
19992    pub AEGP_QueryXformGetTransformTime: ::std::option::Option<
19993        unsafe extern "C" fn(query_contextH: PR_QueryContextH, time: *mut A_Time) -> A_Err,
19994    >,
19995    pub AEGP_QueryXformGetViewTime: ::std::option::Option<
19996        unsafe extern "C" fn(query_contextH: PR_QueryContextH, time: *mut A_Time) -> A_Err,
19997    >,
19998    pub AEGP_QueryXformGetCamera: ::std::option::Option<
19999        unsafe extern "C" fn(
20000            query_contextH: PR_QueryContextH,
20001            camera_layerPH: *mut AEGP_LayerH,
20002        ) -> A_Err,
20003    >,
20004    pub AEGP_QueryXformGetXform: ::std::option::Option<
20005        unsafe extern "C" fn(query_contextH: PR_QueryContextH, xform: *mut A_Matrix4) -> A_Err,
20006    >,
20007    pub AEGP_QueryXformSetXform: ::std::option::Option<
20008        unsafe extern "C" fn(query_contextH: PR_QueryContextH, xform: *mut A_Matrix4) -> A_Err,
20009    >,
20010}
20011#[repr(C)]
20012#[derive(Debug, Copy, Clone)]
20013pub struct AEGP_RenderSuite1 {
20014    pub AEGP_RenderAndCheckoutFrame: ::std::option::Option<
20015        unsafe extern "C" fn(
20016            optionsH: AEGP_RenderOptionsH,
20017            cancel_functionP0: AEGP_RenderSuiteCheckForCancel,
20018            cancel_function_refconP0: AEGP_CancelRefcon,
20019            receiptPH: *mut AEGP_FrameReceiptH,
20020        ) -> A_Err,
20021    >,
20022    pub AEGP_CheckinFrame:
20023        ::std::option::Option<unsafe extern "C" fn(receiptH: AEGP_FrameReceiptH) -> A_Err>,
20024    pub AEGP_GetReceiptWorld: ::std::option::Option<
20025        unsafe extern "C" fn(receiptH: AEGP_FrameReceiptH, worldPH: *mut AEGP_WorldH) -> A_Err,
20026    >,
20027    pub AEGP_GetRenderedRegion: ::std::option::Option<
20028        unsafe extern "C" fn(receiptH: AEGP_FrameReceiptH, rendered_regionP: *mut A_LRect) -> A_Err,
20029    >,
20030    pub AEGP_IsRenderedFrameSufficient: ::std::option::Option<
20031        unsafe extern "C" fn(
20032            rendered_optionsH: AEGP_RenderOptionsH,
20033            proposed_optionsH: AEGP_RenderOptionsH,
20034            rendered_is_sufficientPB: *mut A_Boolean,
20035        ) -> A_Err,
20036    >,
20037    pub AEGP_RenderNewItemSoundData: ::std::option::Option<
20038        unsafe extern "C" fn(
20039            itemH: AEGP_ItemH,
20040            start_timePT: *const A_Time,
20041            durationPT: *const A_Time,
20042            sound_formatP: *const AEGP_SoundDataFormat,
20043            cancel_functionP0: AEGP_RenderSuiteCheckForCancel,
20044            cancel_function_refconP0: AEGP_CancelRefcon,
20045            new_sound_dataPH: *mut AEGP_SoundDataH,
20046        ) -> A_Err,
20047    >,
20048}
20049pub type AEGP_RenderSuiteCheckForCancelv1 = ::std::option::Option<
20050    unsafe extern "C" fn(refcon: *mut ::std::os::raw::c_void, cancelPB: *mut A_Boolean) -> A_Err,
20051>;
20052#[repr(C)]
20053#[derive(Debug, Copy, Clone)]
20054pub struct AEGP_RenderSuite2 {
20055    pub AEGP_RenderAndCheckoutFrame: ::std::option::Option<
20056        unsafe extern "C" fn(
20057            optionsH: AEGP_RenderOptionsH,
20058            cancel_functionP0: AEGP_RenderSuiteCheckForCancelv1,
20059            cancel_function_refconP0: AEGP_CancelRefcon,
20060            receiptPH: *mut AEGP_FrameReceiptH,
20061        ) -> A_Err,
20062    >,
20063    pub AEGP_CheckinFrame:
20064        ::std::option::Option<unsafe extern "C" fn(receiptH: AEGP_FrameReceiptH) -> A_Err>,
20065    pub AEGP_GetReceiptWorld: ::std::option::Option<
20066        unsafe extern "C" fn(receiptH: AEGP_FrameReceiptH, worldPH: *mut AEGP_WorldH) -> A_Err,
20067    >,
20068    pub AEGP_GetRenderedRegion: ::std::option::Option<
20069        unsafe extern "C" fn(receiptH: AEGP_FrameReceiptH, rendered_regionP: *mut A_LRect) -> A_Err,
20070    >,
20071    pub AEGP_IsRenderedFrameSufficient: ::std::option::Option<
20072        unsafe extern "C" fn(
20073            rendered_optionsH: AEGP_RenderOptionsH,
20074            proposed_optionsH: AEGP_RenderOptionsH,
20075            rendered_is_sufficientPB: *mut A_Boolean,
20076        ) -> A_Err,
20077    >,
20078    pub AEGP_RenderNewItemSoundData: ::std::option::Option<
20079        unsafe extern "C" fn(
20080            itemH: AEGP_ItemH,
20081            start_timePT: *const A_Time,
20082            durationPT: *const A_Time,
20083            sound_formatP: *const AEGP_SoundDataFormat,
20084            cancel_functionP0: AEGP_RenderSuiteCheckForCancel,
20085            cancel_function_refconP0: AEGP_CancelRefcon,
20086            new_sound_dataPH: *mut AEGP_SoundDataH,
20087        ) -> A_Err,
20088    >,
20089    pub AEGP_GetCurrentTimestamp:
20090        ::std::option::Option<unsafe extern "C" fn(time_stampP: *mut AEGP_TimeStamp) -> A_Err>,
20091    pub AEGP_HasItemChangedSinceTimestamp: ::std::option::Option<
20092        unsafe extern "C" fn(
20093            itemH: AEGP_ItemH,
20094            start_timeP: *const A_Time,
20095            durationP: *const A_Time,
20096            time_stampP: *const AEGP_TimeStamp,
20097            item_has_changedPB: *mut A_Boolean,
20098        ) -> A_Err,
20099    >,
20100    pub AEGP_IsItemWorthwhileToRender: ::std::option::Option<
20101        unsafe extern "C" fn(
20102            roH: AEGP_RenderOptionsH,
20103            time_stampP: *const AEGP_TimeStamp,
20104            worthwhile_to_renderPB: *mut A_Boolean,
20105        ) -> A_Err,
20106    >,
20107    pub AEGP_CheckinRenderedFrame: ::std::option::Option<
20108        unsafe extern "C" fn(
20109            roH: AEGP_RenderOptionsH,
20110            time_stampP: *const AEGP_TimeStamp,
20111            ticks_to_renderL: A_u_long,
20112            imageH: AEGP_PlatformWorldH,
20113        ) -> A_Err,
20114    >,
20115}
20116#[repr(C)]
20117#[derive(Debug, Copy, Clone)]
20118pub struct AEGP_RenderSuite3 {
20119    pub AEGP_RenderAndCheckoutFrame: ::std::option::Option<
20120        unsafe extern "C" fn(
20121            optionsH: AEGP_RenderOptionsH,
20122            cancel_functionP0: AEGP_RenderSuiteCheckForCancel,
20123            cancel_function_refconP0: AEGP_CancelRefcon,
20124            receiptPH: *mut AEGP_FrameReceiptH,
20125        ) -> A_Err,
20126    >,
20127    pub AEGP_CheckinFrame:
20128        ::std::option::Option<unsafe extern "C" fn(receiptH: AEGP_FrameReceiptH) -> A_Err>,
20129    pub AEGP_GetReceiptWorld: ::std::option::Option<
20130        unsafe extern "C" fn(receiptH: AEGP_FrameReceiptH, worldPH: *mut AEGP_WorldH) -> A_Err,
20131    >,
20132    pub AEGP_GetRenderedRegion: ::std::option::Option<
20133        unsafe extern "C" fn(receiptH: AEGP_FrameReceiptH, rendered_regionP: *mut A_LRect) -> A_Err,
20134    >,
20135    pub AEGP_IsRenderedFrameSufficient: ::std::option::Option<
20136        unsafe extern "C" fn(
20137            rendered_optionsH: AEGP_RenderOptionsH,
20138            proposed_optionsH: AEGP_RenderOptionsH,
20139            rendered_is_sufficientPB: *mut A_Boolean,
20140        ) -> A_Err,
20141    >,
20142    pub AEGP_RenderNewItemSoundData: ::std::option::Option<
20143        unsafe extern "C" fn(
20144            itemH: AEGP_ItemH,
20145            start_timePT: *const A_Time,
20146            durationPT: *const A_Time,
20147            sound_formatP: *const AEGP_SoundDataFormat,
20148            cancel_functionP0: AEGP_RenderSuiteCheckForCancel,
20149            cancel_function_refconP0: AEGP_CancelRefcon,
20150            new_sound_dataPH: *mut AEGP_SoundDataH,
20151        ) -> A_Err,
20152    >,
20153    pub AEGP_GetCurrentTimestamp:
20154        ::std::option::Option<unsafe extern "C" fn(time_stampP: *mut AEGP_TimeStamp) -> A_Err>,
20155    pub AEGP_HasItemChangedSinceTimestamp: ::std::option::Option<
20156        unsafe extern "C" fn(
20157            itemH: AEGP_ItemH,
20158            start_timeP: *const A_Time,
20159            durationP: *const A_Time,
20160            time_stampP: *const AEGP_TimeStamp,
20161            item_has_changedPB: *mut A_Boolean,
20162        ) -> A_Err,
20163    >,
20164    pub AEGP_IsItemWorthwhileToRender: ::std::option::Option<
20165        unsafe extern "C" fn(
20166            roH: AEGP_RenderOptionsH,
20167            time_stampP: *const AEGP_TimeStamp,
20168            worthwhile_to_renderPB: *mut A_Boolean,
20169        ) -> A_Err,
20170    >,
20171    pub AEGP_CheckinRenderedFrame: ::std::option::Option<
20172        unsafe extern "C" fn(
20173            roH: AEGP_RenderOptionsH,
20174            time_stampP: *const AEGP_TimeStamp,
20175            ticks_to_renderL: A_u_long,
20176            imageH: AEGP_PlatformWorldH,
20177        ) -> A_Err,
20178    >,
20179    pub AEGP_GetReceiptGuid: ::std::option::Option<
20180        unsafe extern "C" fn(receiptH: AEGP_FrameReceiptH, guidMH: *mut AEGP_MemHandle) -> A_Err,
20181    >,
20182}
20183#[repr(C)]
20184#[derive(Debug, Copy, Clone)]
20185pub struct AEGP_RenderSuite4 {
20186    pub AEGP_RenderAndCheckoutFrame: ::std::option::Option<
20187        unsafe extern "C" fn(
20188            optionsH: AEGP_RenderOptionsH,
20189            cancel_functionP0: AEGP_RenderSuiteCheckForCancel,
20190            cancel_function_refconP0: AEGP_CancelRefcon,
20191            receiptPH: *mut AEGP_FrameReceiptH,
20192        ) -> A_Err,
20193    >,
20194    pub AEGP_RenderAndCheckoutLayerFrame: ::std::option::Option<
20195        unsafe extern "C" fn(
20196            optionsH: AEGP_LayerRenderOptionsH,
20197            render_plain_layer_frameB: A_Boolean,
20198            cancel_functionP0: AEGP_RenderSuiteCheckForCancel,
20199            cancel_function_refconP0: AEGP_CancelRefcon,
20200            receiptPH: *mut AEGP_FrameReceiptH,
20201        ) -> A_Err,
20202    >,
20203    pub AEGP_CheckinFrame:
20204        ::std::option::Option<unsafe extern "C" fn(receiptH: AEGP_FrameReceiptH) -> A_Err>,
20205    pub AEGP_GetReceiptWorld: ::std::option::Option<
20206        unsafe extern "C" fn(receiptH: AEGP_FrameReceiptH, worldPH: *mut AEGP_WorldH) -> A_Err,
20207    >,
20208    pub AEGP_GetRenderedRegion: ::std::option::Option<
20209        unsafe extern "C" fn(receiptH: AEGP_FrameReceiptH, rendered_regionP: *mut A_LRect) -> A_Err,
20210    >,
20211    pub AEGP_IsRenderedFrameSufficient: ::std::option::Option<
20212        unsafe extern "C" fn(
20213            rendered_optionsH: AEGP_RenderOptionsH,
20214            proposed_optionsH: AEGP_RenderOptionsH,
20215            rendered_is_sufficientPB: *mut A_Boolean,
20216        ) -> A_Err,
20217    >,
20218    pub AEGP_RenderNewItemSoundData: ::std::option::Option<
20219        unsafe extern "C" fn(
20220            itemH: AEGP_ItemH,
20221            start_timePT: *const A_Time,
20222            durationPT: *const A_Time,
20223            sound_formatP: *const AEGP_SoundDataFormat,
20224            cancel_functionP0: AEGP_RenderSuiteCheckForCancel,
20225            cancel_function_refconP0: AEGP_CancelRefcon,
20226            new_sound_dataPH: *mut AEGP_SoundDataH,
20227        ) -> A_Err,
20228    >,
20229    pub AEGP_GetCurrentTimestamp:
20230        ::std::option::Option<unsafe extern "C" fn(time_stampP: *mut AEGP_TimeStamp) -> A_Err>,
20231    pub AEGP_HasItemChangedSinceTimestamp: ::std::option::Option<
20232        unsafe extern "C" fn(
20233            itemH: AEGP_ItemH,
20234            start_timeP: *const A_Time,
20235            durationP: *const A_Time,
20236            time_stampP: *const AEGP_TimeStamp,
20237            item_has_changedPB: *mut A_Boolean,
20238        ) -> A_Err,
20239    >,
20240    pub AEGP_IsItemWorthwhileToRender: ::std::option::Option<
20241        unsafe extern "C" fn(
20242            roH: AEGP_RenderOptionsH,
20243            time_stampP: *const AEGP_TimeStamp,
20244            worthwhile_to_renderPB: *mut A_Boolean,
20245        ) -> A_Err,
20246    >,
20247    pub AEGP_CheckinRenderedFrame: ::std::option::Option<
20248        unsafe extern "C" fn(
20249            roH: AEGP_RenderOptionsH,
20250            time_stampP: *const AEGP_TimeStamp,
20251            ticks_to_renderL: A_u_long,
20252            imageH: AEGP_PlatformWorldH,
20253        ) -> A_Err,
20254    >,
20255    pub AEGP_GetReceiptGuid: ::std::option::Option<
20256        unsafe extern "C" fn(receiptH: AEGP_FrameReceiptH, guidMH: *mut AEGP_MemHandle) -> A_Err,
20257    >,
20258}
20259#[repr(C)]
20260#[derive(Debug, Copy, Clone)]
20261pub struct AEGP_WorldSuite2 {
20262    pub AEGP_New: ::std::option::Option<
20263        unsafe extern "C" fn(
20264            plugin_id: AEGP_PluginID,
20265            type_: AEGP_WorldType,
20266            widthL: A_long,
20267            heightL: A_long,
20268            worldPH: *mut AEGP_WorldH,
20269        ) -> A_Err,
20270    >,
20271    pub AEGP_Dispose: ::std::option::Option<unsafe extern "C" fn(worldH: AEGP_WorldH) -> A_Err>,
20272    pub AEGP_GetType: ::std::option::Option<
20273        unsafe extern "C" fn(worldH: AEGP_WorldH, typeP: *mut AEGP_WorldType) -> A_Err,
20274    >,
20275    pub AEGP_GetSize: ::std::option::Option<
20276        unsafe extern "C" fn(
20277            worldH: AEGP_WorldH,
20278            widthPL: *mut A_long,
20279            heightPL: *mut A_long,
20280        ) -> A_Err,
20281    >,
20282    pub AEGP_GetRowBytes: ::std::option::Option<
20283        unsafe extern "C" fn(worldH: AEGP_WorldH, row_bytesPL: *mut A_u_long) -> A_Err,
20284    >,
20285    pub AEGP_GetBaseAddr8: ::std::option::Option<
20286        unsafe extern "C" fn(worldH: AEGP_WorldH, base_addrP: *mut *mut PF_Pixel8) -> A_Err,
20287    >,
20288    pub AEGP_GetBaseAddr16: ::std::option::Option<
20289        unsafe extern "C" fn(worldH: AEGP_WorldH, base_addrP: *mut *mut PF_Pixel16) -> A_Err,
20290    >,
20291    pub AEGP_FillOutPFEffectWorld: ::std::option::Option<
20292        unsafe extern "C" fn(worldH: AEGP_WorldH, pf_worldP: *mut PF_EffectWorld) -> A_Err,
20293    >,
20294    pub AEGP_FastBlur: ::std::option::Option<
20295        unsafe extern "C" fn(
20296            radiusF: A_FpLong,
20297            mode: PF_ModeFlags,
20298            quality: PF_Quality,
20299            worldH: AEGP_WorldH,
20300        ) -> A_Err,
20301    >,
20302    pub AEGP_NewPlatformWorld: ::std::option::Option<
20303        unsafe extern "C" fn(
20304            plugin_id: AEGP_PluginID,
20305            type_: AEGP_WorldType,
20306            widthL: A_long,
20307            heightL: A_long,
20308            worldPH: *mut AEGP_PlatformWorldH,
20309        ) -> A_Err,
20310    >,
20311    pub AEGP_DisposePlatformWorld:
20312        ::std::option::Option<unsafe extern "C" fn(worldH: AEGP_PlatformWorldH) -> A_Err>,
20313    pub AEGP_NewReferenceFromPlatformWorld: ::std::option::Option<
20314        unsafe extern "C" fn(
20315            plugin_id: AEGP_PluginID,
20316            platform_worldH: AEGP_PlatformWorldH,
20317            worldPH: *mut AEGP_WorldH,
20318        ) -> A_Err,
20319    >,
20320}
20321#[repr(C)]
20322#[derive(Debug, Copy, Clone)]
20323pub struct AEGP_WorldSuite1 {
20324    pub AEGP_New: ::std::option::Option<
20325        unsafe extern "C" fn(
20326            plugin_id: AEGP_PluginID,
20327            type_: AEGP_WorldType,
20328            widthL: A_long,
20329            heightL: A_long,
20330            worldPH: *mut AEGP_WorldH,
20331        ) -> A_Err,
20332    >,
20333    pub AEGP_Dispose: ::std::option::Option<unsafe extern "C" fn(worldH: AEGP_WorldH) -> A_Err>,
20334    pub AEGP_GetType: ::std::option::Option<
20335        unsafe extern "C" fn(worldH: AEGP_WorldH, typeP: *mut AEGP_WorldType) -> A_Err,
20336    >,
20337    pub AEGP_GetSize: ::std::option::Option<
20338        unsafe extern "C" fn(
20339            worldH: AEGP_WorldH,
20340            widthPL: *mut A_long,
20341            heightPL: *mut A_long,
20342        ) -> A_Err,
20343    >,
20344    pub AEGP_GetRowBytes: ::std::option::Option<
20345        unsafe extern "C" fn(worldH: AEGP_WorldH, row_bytesPL: *mut A_u_long) -> A_Err,
20346    >,
20347    pub AEGP_GetBaseAddr8: ::std::option::Option<
20348        unsafe extern "C" fn(worldH: AEGP_WorldH, base_addrP: *mut *mut PF_Pixel8) -> A_Err,
20349    >,
20350    pub AEGP_GetBaseAddr16: ::std::option::Option<
20351        unsafe extern "C" fn(worldH: AEGP_WorldH, base_addrP: *mut *mut PF_Pixel16) -> A_Err,
20352    >,
20353    pub AEGP_FillOutPFEffectWorld: ::std::option::Option<
20354        unsafe extern "C" fn(worldH: AEGP_WorldH, pf_worldP: *mut PF_EffectWorld) -> A_Err,
20355    >,
20356    pub AEGP_FastBlur: ::std::option::Option<
20357        unsafe extern "C" fn(
20358            radiusF: A_FpLong,
20359            mode: PF_ModeFlags,
20360            quality: PF_Quality,
20361            worldH: AEGP_WorldH,
20362        ) -> A_Err,
20363    >,
20364}
20365#[repr(C)]
20366#[derive(Copy, Clone)]
20367pub struct AEGP_CollectionItem {
20368    pub type_: AEGP_CollectionItemType,
20369    pub u: AEGP_CollectionItem__bindgen_ty_1,
20370}
20371#[repr(C)]
20372#[derive(Copy, Clone)]
20373pub union AEGP_CollectionItem__bindgen_ty_1 {
20374    pub layer: AEGP_LayerCollectionItem,
20375    pub mask: AEGP_MaskCollectionItem,
20376    pub effect: AEGP_EffectCollectionItem,
20377    pub stream: AEGP_StreamCollectionItem,
20378    pub mask_vertex: AEGP_MaskVertexCollectionItem,
20379    pub keyframe: AEGP_KeyframeCollectionItem,
20380}
20381#[repr(C)]
20382#[derive(Debug, Copy, Clone)]
20383pub struct AEGP_CollectionSuite1 {
20384    pub AEGP_NewCollection: ::std::option::Option<
20385        unsafe extern "C" fn(
20386            plugin_id: AEGP_PluginID,
20387            collectionPH: *mut AEGP_CollectionH,
20388        ) -> A_Err,
20389    >,
20390    pub AEGP_DisposeCollection:
20391        ::std::option::Option<unsafe extern "C" fn(collectionH: AEGP_CollectionH) -> A_Err>,
20392    pub AEGP_GetCollectionNumItems: ::std::option::Option<
20393        unsafe extern "C" fn(collectionH: AEGP_CollectionH, num_itemsPL: *mut A_u_long) -> A_Err,
20394    >,
20395    pub AEGP_GetCollectionItemByIndex: ::std::option::Option<
20396        unsafe extern "C" fn(
20397            collectionH: AEGP_CollectionH,
20398            indexL: A_u_long,
20399            collection_itemP: *mut AEGP_CollectionItem,
20400        ) -> A_Err,
20401    >,
20402    pub AEGP_CollectionPushBack: ::std::option::Option<
20403        unsafe extern "C" fn(
20404            collectionH: AEGP_CollectionH,
20405            collection_itemP: *const AEGP_CollectionItem,
20406        ) -> A_Err,
20407    >,
20408    pub AEGP_CollectionErase: ::std::option::Option<
20409        unsafe extern "C" fn(
20410            collectionH: AEGP_CollectionH,
20411            index_firstL: A_u_long,
20412            index_lastL: A_u_long,
20413        ) -> A_Err,
20414    >,
20415}
20416#[repr(C)]
20417#[derive(Debug, Copy, Clone)]
20418pub struct AEGP_DynamicStreamSuite1 {
20419    pub AEGP_GetNewStreamRefForLayer: ::std::option::Option<
20420        unsafe extern "C" fn(
20421            aegp_plugin_id: AEGP_PluginID,
20422            layerH: AEGP_LayerH,
20423            streamPH: *mut AEGP_StreamRefH,
20424        ) -> A_Err,
20425    >,
20426    pub AEGP_GetStreamDepth: ::std::option::Option<
20427        unsafe extern "C" fn(streamH: AEGP_StreamRefH, depthPL: *mut A_long) -> A_Err,
20428    >,
20429    pub AEGP_GetStreamGroupingType: ::std::option::Option<
20430        unsafe extern "C" fn(
20431            streamH: AEGP_StreamRefH,
20432            group_typeP: *mut AEGP_StreamGroupingType,
20433        ) -> A_Err,
20434    >,
20435    pub AEGP_GetNumStreamsInGroup: ::std::option::Option<
20436        unsafe extern "C" fn(streamH: AEGP_StreamRefH, num_streamsPL: *mut A_long) -> A_Err,
20437    >,
20438    pub AEGP_GetDynamicStreamFlags: ::std::option::Option<
20439        unsafe extern "C" fn(
20440            streamH: AEGP_StreamRefH,
20441            stream_flagsP: *mut AEGP_DynStreamFlags,
20442        ) -> A_Err,
20443    >,
20444    pub AEGP_SetDynamicStreamFlag: ::std::option::Option<
20445        unsafe extern "C" fn(
20446            streamH: AEGP_StreamRefH,
20447            one_flag: AEGP_DynStreamFlags,
20448            setB: A_Boolean,
20449        ) -> A_Err,
20450    >,
20451    pub AEGP_GetNewStreamRefByIndex: ::std::option::Option<
20452        unsafe extern "C" fn(
20453            aegp_plugin_id: AEGP_PluginID,
20454            parent_groupH: AEGP_StreamRefH,
20455            indexL: A_long,
20456            streamPH: *mut AEGP_StreamRefH,
20457        ) -> A_Err,
20458    >,
20459    pub AEGP_GetNewStreamRefByMatchname: ::std::option::Option<
20460        unsafe extern "C" fn(
20461            aegp_plugin_id: AEGP_PluginID,
20462            parent_groupH: AEGP_StreamRefH,
20463            match_nameZ: *const A_char,
20464            streamPH: *mut AEGP_StreamRefH,
20465        ) -> A_Err,
20466    >,
20467    pub AEGP_DeleteStream:
20468        ::std::option::Option<unsafe extern "C" fn(streamH: AEGP_StreamRefH) -> A_Err>,
20469    pub AEGP_ReorderStream: ::std::option::Option<
20470        unsafe extern "C" fn(streamH: AEGP_StreamRefH, new_indexL: A_long) -> A_Err,
20471    >,
20472    pub AEGP_DuplicateStream: ::std::option::Option<
20473        unsafe extern "C" fn(
20474            aegp_plugin_id: AEGP_PluginID,
20475            streamH: AEGP_StreamRefH,
20476            new_indexPL0: *mut A_long,
20477        ) -> A_Err,
20478    >,
20479    pub AEGP_SetStreamName: ::std::option::Option<
20480        unsafe extern "C" fn(streamH: AEGP_StreamRefH, nameZ: *const A_char) -> A_Err,
20481    >,
20482    pub AEGP_CanAddStream: ::std::option::Option<
20483        unsafe extern "C" fn(
20484            group_streamH: AEGP_StreamRefH,
20485            match_nameZ: *const A_char,
20486            can_addPB: *mut A_Boolean,
20487        ) -> A_Err,
20488    >,
20489    pub AEGP_AddStream: ::std::option::Option<
20490        unsafe extern "C" fn(
20491            aegp_plugin_id: AEGP_PluginID,
20492            indexed_group_streamH: AEGP_StreamRefH,
20493            match_nameZ: *const A_char,
20494            streamPH0: *mut AEGP_StreamRefH,
20495        ) -> A_Err,
20496    >,
20497    pub AEGP_GetMatchName: ::std::option::Option<
20498        unsafe extern "C" fn(streamH: AEGP_StreamRefH, nameZ: *mut A_char) -> A_Err,
20499    >,
20500    pub AEGP_GetNewParentStreamRef: ::std::option::Option<
20501        unsafe extern "C" fn(
20502            aegp_plugin_id: AEGP_PluginID,
20503            streamH: AEGP_StreamRefH,
20504            parent_streamPH: *mut AEGP_StreamRefH,
20505        ) -> A_Err,
20506    >,
20507    pub AEGP_GetStreamIsModified: ::std::option::Option<
20508        unsafe extern "C" fn(streamH: AEGP_StreamRefH, modifiedPB: *mut A_Boolean) -> A_Err,
20509    >,
20510}
20511#[repr(C)]
20512#[derive(Debug, Copy, Clone)]
20513pub struct AEGP_DynamicStreamSuite2 {
20514    pub AEGP_GetNewStreamRefForLayer: ::std::option::Option<
20515        unsafe extern "C" fn(
20516            aegp_plugin_id: AEGP_PluginID,
20517            layerH: AEGP_LayerH,
20518            streamPH: *mut AEGP_StreamRefH,
20519        ) -> A_Err,
20520    >,
20521    pub AEGP_GetStreamDepth: ::std::option::Option<
20522        unsafe extern "C" fn(streamH: AEGP_StreamRefH, depthPL: *mut A_long) -> A_Err,
20523    >,
20524    pub AEGP_GetStreamGroupingType: ::std::option::Option<
20525        unsafe extern "C" fn(
20526            streamH: AEGP_StreamRefH,
20527            group_typeP: *mut AEGP_StreamGroupingType,
20528        ) -> A_Err,
20529    >,
20530    pub AEGP_GetNumStreamsInGroup: ::std::option::Option<
20531        unsafe extern "C" fn(streamH: AEGP_StreamRefH, num_streamsPL: *mut A_long) -> A_Err,
20532    >,
20533    pub AEGP_GetDynamicStreamFlags: ::std::option::Option<
20534        unsafe extern "C" fn(
20535            streamH: AEGP_StreamRefH,
20536            stream_flagsP: *mut AEGP_DynStreamFlags,
20537        ) -> A_Err,
20538    >,
20539    pub AEGP_SetDynamicStreamFlag: ::std::option::Option<
20540        unsafe extern "C" fn(
20541            streamH: AEGP_StreamRefH,
20542            one_flag: AEGP_DynStreamFlags,
20543            undoableB: A_Boolean,
20544            setB: A_Boolean,
20545        ) -> A_Err,
20546    >,
20547    pub AEGP_GetNewStreamRefByIndex: ::std::option::Option<
20548        unsafe extern "C" fn(
20549            aegp_plugin_id: AEGP_PluginID,
20550            parent_groupH: AEGP_StreamRefH,
20551            indexL: A_long,
20552            streamPH: *mut AEGP_StreamRefH,
20553        ) -> A_Err,
20554    >,
20555    pub AEGP_GetNewStreamRefByMatchname: ::std::option::Option<
20556        unsafe extern "C" fn(
20557            aegp_plugin_id: AEGP_PluginID,
20558            parent_groupH: AEGP_StreamRefH,
20559            match_nameZ: *const A_char,
20560            streamPH: *mut AEGP_StreamRefH,
20561        ) -> A_Err,
20562    >,
20563    pub AEGP_DeleteStream:
20564        ::std::option::Option<unsafe extern "C" fn(streamH: AEGP_StreamRefH) -> A_Err>,
20565    pub AEGP_ReorderStream: ::std::option::Option<
20566        unsafe extern "C" fn(streamH: AEGP_StreamRefH, new_indexL: A_long) -> A_Err,
20567    >,
20568    pub AEGP_DuplicateStream: ::std::option::Option<
20569        unsafe extern "C" fn(
20570            aegp_plugin_id: AEGP_PluginID,
20571            streamH: AEGP_StreamRefH,
20572            new_indexPL0: *mut A_long,
20573        ) -> A_Err,
20574    >,
20575    pub AEGP_SetStreamName: ::std::option::Option<
20576        unsafe extern "C" fn(streamH: AEGP_StreamRefH, nameZ: *const A_char) -> A_Err,
20577    >,
20578    pub AEGP_CanAddStream: ::std::option::Option<
20579        unsafe extern "C" fn(
20580            group_streamH: AEGP_StreamRefH,
20581            match_nameZ: *const A_char,
20582            can_addPB: *mut A_Boolean,
20583        ) -> A_Err,
20584    >,
20585    pub AEGP_AddStream: ::std::option::Option<
20586        unsafe extern "C" fn(
20587            aegp_plugin_id: AEGP_PluginID,
20588            indexed_group_streamH: AEGP_StreamRefH,
20589            match_nameZ: *const A_char,
20590            streamPH0: *mut AEGP_StreamRefH,
20591        ) -> A_Err,
20592    >,
20593    pub AEGP_GetMatchName: ::std::option::Option<
20594        unsafe extern "C" fn(streamH: AEGP_StreamRefH, nameZ: *mut A_char) -> A_Err,
20595    >,
20596    pub AEGP_GetNewParentStreamRef: ::std::option::Option<
20597        unsafe extern "C" fn(
20598            aegp_plugin_id: AEGP_PluginID,
20599            streamH: AEGP_StreamRefH,
20600            parent_streamPH: *mut AEGP_StreamRefH,
20601        ) -> A_Err,
20602    >,
20603    pub AEGP_GetStreamIsModified: ::std::option::Option<
20604        unsafe extern "C" fn(streamH: AEGP_StreamRefH, modifiedPB: *mut A_Boolean) -> A_Err,
20605    >,
20606}
20607#[repr(C)]
20608#[derive(Debug, Copy, Clone)]
20609pub struct AEGP_DynamicStreamSuite3 {
20610    pub AEGP_GetNewStreamRefForLayer: ::std::option::Option<
20611        unsafe extern "C" fn(
20612            aegp_plugin_id: AEGP_PluginID,
20613            layerH: AEGP_LayerH,
20614            streamPH: *mut AEGP_StreamRefH,
20615        ) -> A_Err,
20616    >,
20617    pub AEGP_GetStreamDepth: ::std::option::Option<
20618        unsafe extern "C" fn(streamH: AEGP_StreamRefH, depthPL: *mut A_long) -> A_Err,
20619    >,
20620    pub AEGP_GetStreamGroupingType: ::std::option::Option<
20621        unsafe extern "C" fn(
20622            streamH: AEGP_StreamRefH,
20623            group_typeP: *mut AEGP_StreamGroupingType,
20624        ) -> A_Err,
20625    >,
20626    pub AEGP_GetNumStreamsInGroup: ::std::option::Option<
20627        unsafe extern "C" fn(streamH: AEGP_StreamRefH, num_streamsPL: *mut A_long) -> A_Err,
20628    >,
20629    pub AEGP_GetDynamicStreamFlags: ::std::option::Option<
20630        unsafe extern "C" fn(
20631            streamH: AEGP_StreamRefH,
20632            stream_flagsP: *mut AEGP_DynStreamFlags,
20633        ) -> A_Err,
20634    >,
20635    pub AEGP_SetDynamicStreamFlag: ::std::option::Option<
20636        unsafe extern "C" fn(
20637            streamH: AEGP_StreamRefH,
20638            one_flag: AEGP_DynStreamFlags,
20639            undoableB: A_Boolean,
20640            setB: A_Boolean,
20641        ) -> A_Err,
20642    >,
20643    pub AEGP_GetNewStreamRefByIndex: ::std::option::Option<
20644        unsafe extern "C" fn(
20645            aegp_plugin_id: AEGP_PluginID,
20646            parent_groupH: AEGP_StreamRefH,
20647            indexL: A_long,
20648            streamPH: *mut AEGP_StreamRefH,
20649        ) -> A_Err,
20650    >,
20651    pub AEGP_GetNewStreamRefByMatchname: ::std::option::Option<
20652        unsafe extern "C" fn(
20653            aegp_plugin_id: AEGP_PluginID,
20654            parent_groupH: AEGP_StreamRefH,
20655            match_nameZ: *const A_char,
20656            streamPH: *mut AEGP_StreamRefH,
20657        ) -> A_Err,
20658    >,
20659    pub AEGP_DeleteStream:
20660        ::std::option::Option<unsafe extern "C" fn(streamH: AEGP_StreamRefH) -> A_Err>,
20661    pub AEGP_ReorderStream: ::std::option::Option<
20662        unsafe extern "C" fn(streamH: AEGP_StreamRefH, new_indexL: A_long) -> A_Err,
20663    >,
20664    pub AEGP_DuplicateStream: ::std::option::Option<
20665        unsafe extern "C" fn(
20666            aegp_plugin_id: AEGP_PluginID,
20667            streamH: AEGP_StreamRefH,
20668            new_indexPL0: *mut A_long,
20669        ) -> A_Err,
20670    >,
20671    pub AEGP_SetStreamName: ::std::option::Option<
20672        unsafe extern "C" fn(streamH: AEGP_StreamRefH, nameZ: *const A_char) -> A_Err,
20673    >,
20674    pub AEGP_CanAddStream: ::std::option::Option<
20675        unsafe extern "C" fn(
20676            group_streamH: AEGP_StreamRefH,
20677            match_nameZ: *const A_char,
20678            can_addPB: *mut A_Boolean,
20679        ) -> A_Err,
20680    >,
20681    pub AEGP_AddStream: ::std::option::Option<
20682        unsafe extern "C" fn(
20683            aegp_plugin_id: AEGP_PluginID,
20684            indexed_group_streamH: AEGP_StreamRefH,
20685            match_nameZ: *const A_char,
20686            streamPH0: *mut AEGP_StreamRefH,
20687        ) -> A_Err,
20688    >,
20689    pub AEGP_GetMatchName: ::std::option::Option<
20690        unsafe extern "C" fn(streamH: AEGP_StreamRefH, nameZ: *mut A_char) -> A_Err,
20691    >,
20692    pub AEGP_GetNewParentStreamRef: ::std::option::Option<
20693        unsafe extern "C" fn(
20694            aegp_plugin_id: AEGP_PluginID,
20695            streamH: AEGP_StreamRefH,
20696            parent_streamPH: *mut AEGP_StreamRefH,
20697        ) -> A_Err,
20698    >,
20699    pub AEGP_GetStreamIsModified: ::std::option::Option<
20700        unsafe extern "C" fn(streamH: AEGP_StreamRefH, modifiedPB: *mut A_Boolean) -> A_Err,
20701    >,
20702    pub AEGP_GetStreamIndexInParent: ::std::option::Option<
20703        unsafe extern "C" fn(streamH: AEGP_StreamRefH, indexPL: *mut A_long) -> A_Err,
20704    >,
20705}
20706#[repr(C)]
20707#[derive(Debug, Copy, Clone)]
20708pub struct AEGP_RenderOptionsSuite3 {
20709    pub AEGP_NewFromItem: ::std::option::Option<
20710        unsafe extern "C" fn(
20711            plugin_id: AEGP_PluginID,
20712            itemH: AEGP_ItemH,
20713            optionsPH: *mut AEGP_RenderOptionsH,
20714        ) -> A_Err,
20715    >,
20716    pub AEGP_Duplicate: ::std::option::Option<
20717        unsafe extern "C" fn(
20718            plugin_id: AEGP_PluginID,
20719            optionsH: AEGP_RenderOptionsH,
20720            copyPH: *mut AEGP_RenderOptionsH,
20721        ) -> A_Err,
20722    >,
20723    pub AEGP_Dispose:
20724        ::std::option::Option<unsafe extern "C" fn(optionsH: AEGP_RenderOptionsH) -> A_Err>,
20725    pub AEGP_SetTime: ::std::option::Option<
20726        unsafe extern "C" fn(optionsH: AEGP_RenderOptionsH, time: A_Time) -> A_Err,
20727    >,
20728    pub AEGP_GetTime: ::std::option::Option<
20729        unsafe extern "C" fn(optionsH: AEGP_RenderOptionsH, timeP: *mut A_Time) -> A_Err,
20730    >,
20731    pub AEGP_SetTimeStep: ::std::option::Option<
20732        unsafe extern "C" fn(optionsH: AEGP_RenderOptionsH, time_step: A_Time) -> A_Err,
20733    >,
20734    pub AEGP_GetTimeStep: ::std::option::Option<
20735        unsafe extern "C" fn(optionsH: AEGP_RenderOptionsH, timePT: *mut A_Time) -> A_Err,
20736    >,
20737    pub AEGP_SetFieldRender: ::std::option::Option<
20738        unsafe extern "C" fn(optionsH: AEGP_RenderOptionsH, field_render: PF_Field) -> A_Err,
20739    >,
20740    pub AEGP_GetFieldRender: ::std::option::Option<
20741        unsafe extern "C" fn(optionsH: AEGP_RenderOptionsH, field_renderP: *mut PF_Field) -> A_Err,
20742    >,
20743    pub AEGP_SetWorldType: ::std::option::Option<
20744        unsafe extern "C" fn(optionsH: AEGP_RenderOptionsH, type_: AEGP_WorldType) -> A_Err,
20745    >,
20746    pub AEGP_GetWorldType: ::std::option::Option<
20747        unsafe extern "C" fn(optionsH: AEGP_RenderOptionsH, typeP: *mut AEGP_WorldType) -> A_Err,
20748    >,
20749    pub AEGP_SetDownsampleFactor: ::std::option::Option<
20750        unsafe extern "C" fn(optionsH: AEGP_RenderOptionsH, x: A_short, y: A_short) -> A_Err,
20751    >,
20752    pub AEGP_GetDownsampleFactor: ::std::option::Option<
20753        unsafe extern "C" fn(
20754            optionsH: AEGP_RenderOptionsH,
20755            xP: *mut A_short,
20756            yP: *mut A_short,
20757        ) -> A_Err,
20758    >,
20759    pub AEGP_SetRegionOfInterest: ::std::option::Option<
20760        unsafe extern "C" fn(optionsH: AEGP_RenderOptionsH, roiP: *const A_LRect) -> A_Err,
20761    >,
20762    pub AEGP_GetRegionOfInterest: ::std::option::Option<
20763        unsafe extern "C" fn(optionsH: AEGP_RenderOptionsH, roiP: *mut A_LRect) -> A_Err,
20764    >,
20765    pub AEGP_SetMatteMode: ::std::option::Option<
20766        unsafe extern "C" fn(optionsH: AEGP_RenderOptionsH, mode: AEGP_MatteMode) -> A_Err,
20767    >,
20768    pub AEGP_GetMatteMode: ::std::option::Option<
20769        unsafe extern "C" fn(optionsH: AEGP_RenderOptionsH, modeP: *mut AEGP_MatteMode) -> A_Err,
20770    >,
20771    pub AEGP_SetChannelOrder: ::std::option::Option<
20772        unsafe extern "C" fn(
20773            optionsH: AEGP_RenderOptionsH,
20774            channel_order: AEGP_ChannelOrder,
20775        ) -> A_Err,
20776    >,
20777    pub AEGP_GetChannelOrder: ::std::option::Option<
20778        unsafe extern "C" fn(
20779            optionsH: AEGP_RenderOptionsH,
20780            channelP: *mut AEGP_ChannelOrder,
20781        ) -> A_Err,
20782    >,
20783    pub AEGP_GetRenderGuideLayers: ::std::option::Option<
20784        unsafe extern "C" fn(optionsH: AEGP_RenderOptionsH, will_renderPB: *mut A_Boolean) -> A_Err,
20785    >,
20786    pub AEGP_SetRenderGuideLayers: ::std::option::Option<
20787        unsafe extern "C" fn(optionsH: AEGP_RenderOptionsH, render_themB: A_Boolean) -> A_Err,
20788    >,
20789}
20790#[repr(C)]
20791#[derive(Debug, Copy, Clone)]
20792pub struct AEGP_RenderOptionsSuite2 {
20793    pub AEGP_NewFromItem: ::std::option::Option<
20794        unsafe extern "C" fn(
20795            plugin_id: AEGP_PluginID,
20796            itemH: AEGP_ItemH,
20797            optionsPH: *mut AEGP_RenderOptionsH,
20798        ) -> A_Err,
20799    >,
20800    pub AEGP_Duplicate: ::std::option::Option<
20801        unsafe extern "C" fn(
20802            plugin_id: AEGP_PluginID,
20803            optionsH: AEGP_RenderOptionsH,
20804            copyPH: *mut AEGP_RenderOptionsH,
20805        ) -> A_Err,
20806    >,
20807    pub AEGP_Dispose:
20808        ::std::option::Option<unsafe extern "C" fn(optionsH: AEGP_RenderOptionsH) -> A_Err>,
20809    pub AEGP_SetTime: ::std::option::Option<
20810        unsafe extern "C" fn(optionsH: AEGP_RenderOptionsH, time: A_Time) -> A_Err,
20811    >,
20812    pub AEGP_GetTime: ::std::option::Option<
20813        unsafe extern "C" fn(optionsH: AEGP_RenderOptionsH, timeP: *mut A_Time) -> A_Err,
20814    >,
20815    pub AEGP_SetTimeStep: ::std::option::Option<
20816        unsafe extern "C" fn(optionsH: AEGP_RenderOptionsH, time_step: A_Time) -> A_Err,
20817    >,
20818    pub AEGP_GetTimeStep: ::std::option::Option<
20819        unsafe extern "C" fn(optionsH: AEGP_RenderOptionsH, timePT: *mut A_Time) -> A_Err,
20820    >,
20821    pub AEGP_SetFieldRender: ::std::option::Option<
20822        unsafe extern "C" fn(optionsH: AEGP_RenderOptionsH, field_render: PF_Field) -> A_Err,
20823    >,
20824    pub AEGP_GetFieldRender: ::std::option::Option<
20825        unsafe extern "C" fn(optionsH: AEGP_RenderOptionsH, field_renderP: *mut PF_Field) -> A_Err,
20826    >,
20827    pub AEGP_SetWorldType: ::std::option::Option<
20828        unsafe extern "C" fn(optionsH: AEGP_RenderOptionsH, type_: AEGP_WorldType) -> A_Err,
20829    >,
20830    pub AEGP_GetWorldType: ::std::option::Option<
20831        unsafe extern "C" fn(optionsH: AEGP_RenderOptionsH, typeP: *mut AEGP_WorldType) -> A_Err,
20832    >,
20833    pub AEGP_SetDownsampleFactor: ::std::option::Option<
20834        unsafe extern "C" fn(optionsH: AEGP_RenderOptionsH, x: A_short, y: A_short) -> A_Err,
20835    >,
20836    pub AEGP_GetDownsampleFactor: ::std::option::Option<
20837        unsafe extern "C" fn(
20838            optionsH: AEGP_RenderOptionsH,
20839            xP: *mut A_short,
20840            yP: *mut A_short,
20841        ) -> A_Err,
20842    >,
20843    pub AEGP_SetRegionOfInterest: ::std::option::Option<
20844        unsafe extern "C" fn(optionsH: AEGP_RenderOptionsH, roiP: *const A_LRect) -> A_Err,
20845    >,
20846    pub AEGP_GetRegionOfInterest: ::std::option::Option<
20847        unsafe extern "C" fn(optionsH: AEGP_RenderOptionsH, roiP: *mut A_LRect) -> A_Err,
20848    >,
20849    pub AEGP_SetMatteMode: ::std::option::Option<
20850        unsafe extern "C" fn(optionsH: AEGP_RenderOptionsH, mode: AEGP_MatteMode) -> A_Err,
20851    >,
20852    pub AEGP_GetMatteMode: ::std::option::Option<
20853        unsafe extern "C" fn(optionsH: AEGP_RenderOptionsH, modeP: *mut AEGP_MatteMode) -> A_Err,
20854    >,
20855    pub AEGP_SetChannelOrder: ::std::option::Option<
20856        unsafe extern "C" fn(
20857            optionsH: AEGP_RenderOptionsH,
20858            channel_order: AEGP_ChannelOrder,
20859        ) -> A_Err,
20860    >,
20861    pub AEGP_GetChannelOrder: ::std::option::Option<
20862        unsafe extern "C" fn(
20863            optionsH: AEGP_RenderOptionsH,
20864            channelP: *mut AEGP_ChannelOrder,
20865        ) -> A_Err,
20866    >,
20867}
20868#[repr(C)]
20869#[derive(Debug, Copy, Clone)]
20870pub struct AEGP_RenderOptionsSuite1 {
20871    pub AEGP_NewFromItem: ::std::option::Option<
20872        unsafe extern "C" fn(
20873            plugin_id: AEGP_PluginID,
20874            itemH: AEGP_ItemH,
20875            optionsPH: *mut AEGP_RenderOptionsH,
20876        ) -> A_Err,
20877    >,
20878    pub AEGP_Duplicate: ::std::option::Option<
20879        unsafe extern "C" fn(
20880            plugin_id: AEGP_PluginID,
20881            optionsH: AEGP_RenderOptionsH,
20882            copyPH: *mut AEGP_RenderOptionsH,
20883        ) -> A_Err,
20884    >,
20885    pub AEGP_Dispose:
20886        ::std::option::Option<unsafe extern "C" fn(optionsH: AEGP_RenderOptionsH) -> A_Err>,
20887    pub AEGP_SetTime: ::std::option::Option<
20888        unsafe extern "C" fn(optionsH: AEGP_RenderOptionsH, time: A_Time) -> A_Err,
20889    >,
20890    pub AEGP_GetTime: ::std::option::Option<
20891        unsafe extern "C" fn(optionsH: AEGP_RenderOptionsH, timeP: *mut A_Time) -> A_Err,
20892    >,
20893    pub AEGP_SetTimeStep: ::std::option::Option<
20894        unsafe extern "C" fn(optionsH: AEGP_RenderOptionsH, time_step: A_Time) -> A_Err,
20895    >,
20896    pub AEGP_GetTimeStep: ::std::option::Option<
20897        unsafe extern "C" fn(optionsH: AEGP_RenderOptionsH, timePT: *mut A_Time) -> A_Err,
20898    >,
20899    pub AEGP_SetFieldRender: ::std::option::Option<
20900        unsafe extern "C" fn(optionsH: AEGP_RenderOptionsH, field_render: PF_Field) -> A_Err,
20901    >,
20902    pub AEGP_GetFieldRender: ::std::option::Option<
20903        unsafe extern "C" fn(optionsH: AEGP_RenderOptionsH, field_renderP: *mut PF_Field) -> A_Err,
20904    >,
20905    pub AEGP_SetWorldType: ::std::option::Option<
20906        unsafe extern "C" fn(optionsH: AEGP_RenderOptionsH, type_: AEGP_WorldType) -> A_Err,
20907    >,
20908    pub AEGP_GetWorldType: ::std::option::Option<
20909        unsafe extern "C" fn(optionsH: AEGP_RenderOptionsH, typeP: *mut AEGP_WorldType) -> A_Err,
20910    >,
20911    pub AEGP_SetDownsampleFactor: ::std::option::Option<
20912        unsafe extern "C" fn(optionsH: AEGP_RenderOptionsH, x: A_short, y: A_short) -> A_Err,
20913    >,
20914    pub AEGP_GetDownsampleFactor: ::std::option::Option<
20915        unsafe extern "C" fn(
20916            optionsH: AEGP_RenderOptionsH,
20917            xP: *mut A_short,
20918            yP: *mut A_short,
20919        ) -> A_Err,
20920    >,
20921    pub AEGP_SetRegionOfInterest: ::std::option::Option<
20922        unsafe extern "C" fn(optionsH: AEGP_RenderOptionsH, roiP: *const A_LRect) -> A_Err,
20923    >,
20924    pub AEGP_GetRegionOfInterest: ::std::option::Option<
20925        unsafe extern "C" fn(optionsH: AEGP_RenderOptionsH, roiP: *mut A_LRect) -> A_Err,
20926    >,
20927    pub AEGP_SetMatteMode: ::std::option::Option<
20928        unsafe extern "C" fn(optionsH: AEGP_RenderOptionsH, mode: AEGP_MatteMode) -> A_Err,
20929    >,
20930    pub AEGP_GetMatteMode: ::std::option::Option<
20931        unsafe extern "C" fn(optionsH: AEGP_RenderOptionsH, modeP: *mut AEGP_MatteMode) -> A_Err,
20932    >,
20933}
20934#[repr(C)]
20935#[derive(Debug, Copy, Clone)]
20936pub struct AEGP_LayerRenderOptionsSuite1 {
20937    pub AEGP_NewFromLayer: ::std::option::Option<
20938        unsafe extern "C" fn(
20939            plugin_id: AEGP_PluginID,
20940            layerH: AEGP_LayerH,
20941            optionsPH: *mut AEGP_LayerRenderOptionsH,
20942        ) -> A_Err,
20943    >,
20944    pub AEGP_NewFromUpstreamOfEffect: ::std::option::Option<
20945        unsafe extern "C" fn(
20946            plugin_id: AEGP_PluginID,
20947            effectH: AEGP_EffectRefH,
20948            optionsPH: *mut AEGP_LayerRenderOptionsH,
20949        ) -> A_Err,
20950    >,
20951    pub AEGP_Duplicate: ::std::option::Option<
20952        unsafe extern "C" fn(
20953            plugin_id: AEGP_PluginID,
20954            optionsH: AEGP_LayerRenderOptionsH,
20955            copyPH: *mut AEGP_LayerRenderOptionsH,
20956        ) -> A_Err,
20957    >,
20958    pub AEGP_Dispose:
20959        ::std::option::Option<unsafe extern "C" fn(optionsH: AEGP_LayerRenderOptionsH) -> A_Err>,
20960    pub AEGP_SetTime: ::std::option::Option<
20961        unsafe extern "C" fn(optionsH: AEGP_LayerRenderOptionsH, time: A_Time) -> A_Err,
20962    >,
20963    pub AEGP_GetTime: ::std::option::Option<
20964        unsafe extern "C" fn(optionsH: AEGP_LayerRenderOptionsH, timeP: *mut A_Time) -> A_Err,
20965    >,
20966    pub AEGP_SetTimeStep: ::std::option::Option<
20967        unsafe extern "C" fn(optionsH: AEGP_LayerRenderOptionsH, time_step: A_Time) -> A_Err,
20968    >,
20969    pub AEGP_GetTimeStep: ::std::option::Option<
20970        unsafe extern "C" fn(optionsH: AEGP_LayerRenderOptionsH, timePT: *mut A_Time) -> A_Err,
20971    >,
20972    pub AEGP_SetWorldType: ::std::option::Option<
20973        unsafe extern "C" fn(optionsH: AEGP_LayerRenderOptionsH, type_: AEGP_WorldType) -> A_Err,
20974    >,
20975    pub AEGP_GetWorldType: ::std::option::Option<
20976        unsafe extern "C" fn(
20977            optionsH: AEGP_LayerRenderOptionsH,
20978            typeP: *mut AEGP_WorldType,
20979        ) -> A_Err,
20980    >,
20981    pub AEGP_SetDownsampleFactor: ::std::option::Option<
20982        unsafe extern "C" fn(optionsH: AEGP_LayerRenderOptionsH, x: A_short, y: A_short) -> A_Err,
20983    >,
20984    pub AEGP_GetDownsampleFactor: ::std::option::Option<
20985        unsafe extern "C" fn(
20986            optionsH: AEGP_LayerRenderOptionsH,
20987            xP: *mut A_short,
20988            yP: *mut A_short,
20989        ) -> A_Err,
20990    >,
20991    pub AEGP_SetMatteMode: ::std::option::Option<
20992        unsafe extern "C" fn(optionsH: AEGP_LayerRenderOptionsH, mode: AEGP_MatteMode) -> A_Err,
20993    >,
20994    pub AEGP_GetMatteMode: ::std::option::Option<
20995        unsafe extern "C" fn(
20996            optionsH: AEGP_LayerRenderOptionsH,
20997            modeP: *mut AEGP_MatteMode,
20998        ) -> A_Err,
20999    >,
21000}
21001#[repr(C)]
21002#[derive(Debug, Copy, Clone)]
21003pub struct AEGP_ColorSettingsSuite1 {
21004    pub AEGP_GetBlendingTables: ::std::option::Option<
21005        unsafe extern "C" fn(
21006            render_contextH: PR_RenderContextH,
21007            blending_tables: *mut PF_EffectBlendingTables,
21008        ) -> A_Err,
21009    >,
21010}
21011#[repr(C)]
21012#[derive(Debug, Copy, Clone)]
21013pub struct AEGP_ColorSettingsSuite2 {
21014    pub AEGP_GetBlendingTables: ::std::option::Option<
21015        unsafe extern "C" fn(
21016            render_contextH: PR_RenderContextH,
21017            blending_tables: *mut PF_EffectBlendingTables,
21018        ) -> A_Err,
21019    >,
21020    pub AEGP_DoesViewHaveColorSpaceXform: ::std::option::Option<
21021        unsafe extern "C" fn(viewP: AEGP_ItemViewP, has_xformPB: *mut A_Boolean) -> A_Err,
21022    >,
21023    pub AEGP_XformWorkingToViewColorSpace: ::std::option::Option<
21024        unsafe extern "C" fn(viewP: AEGP_ItemViewP, srcH: AEGP_WorldH, dstH: AEGP_WorldH) -> A_Err,
21025    >,
21026    pub AEGP_GetNewWorkingSpaceColorProfile: ::std::option::Option<
21027        unsafe extern "C" fn(
21028            aegp_plugin_id: AEGP_PluginID,
21029            compH: AEGP_CompH,
21030            color_profilePP: *mut AEGP_ColorProfileP,
21031        ) -> A_Err,
21032    >,
21033    pub AEGP_GetNewColorProfileFromICCProfile: ::std::option::Option<
21034        unsafe extern "C" fn(
21035            aegp_plugin_id: AEGP_PluginID,
21036            icc_sizeL: A_long,
21037            icc_dataPV: *const ::std::os::raw::c_void,
21038            color_profilePP: *mut AEGP_ColorProfileP,
21039        ) -> A_Err,
21040    >,
21041    pub AEGP_GetNewICCProfileFromColorProfile: ::std::option::Option<
21042        unsafe extern "C" fn(
21043            aegp_plugin_id: AEGP_PluginID,
21044            color_profileP: AEGP_ConstColorProfileP,
21045            icc_profilePH: *mut AEGP_MemHandle,
21046        ) -> A_Err,
21047    >,
21048    pub AEGP_GetNewColorProfileDescription: ::std::option::Option<
21049        unsafe extern "C" fn(
21050            aegp_plugin_id: AEGP_PluginID,
21051            color_profileP: AEGP_ConstColorProfileP,
21052            unicode_descPH: *mut AEGP_MemHandle,
21053        ) -> A_Err,
21054    >,
21055    pub AEGP_DisposeColorProfile:
21056        ::std::option::Option<unsafe extern "C" fn(color_profileP: AEGP_ColorProfileP) -> A_Err>,
21057    pub AEGP_GetColorProfileApproximateGamma: ::std::option::Option<
21058        unsafe extern "C" fn(
21059            color_profileP: AEGP_ConstColorProfileP,
21060            approx_gammaP: *mut A_FpShort,
21061        ) -> A_Err,
21062    >,
21063    pub AEGP_IsRGBColorProfile: ::std::option::Option<
21064        unsafe extern "C" fn(
21065            color_profileP: AEGP_ConstColorProfileP,
21066            is_rgbPB: *mut A_Boolean,
21067        ) -> A_Err,
21068    >,
21069}
21070#[repr(C)]
21071#[derive(Debug, Copy, Clone)]
21072pub struct AEGP_ColorSettingsSuite3 {
21073    pub AEGP_GetBlendingTables: ::std::option::Option<
21074        unsafe extern "C" fn(
21075            render_contextH: PR_RenderContextH,
21076            blending_tables: *mut PF_EffectBlendingTables,
21077        ) -> A_Err,
21078    >,
21079    pub AEGP_DoesViewHaveColorSpaceXform: ::std::option::Option<
21080        unsafe extern "C" fn(viewP: AEGP_ItemViewP, has_xformPB: *mut A_Boolean) -> A_Err,
21081    >,
21082    pub AEGP_XformWorkingToViewColorSpace: ::std::option::Option<
21083        unsafe extern "C" fn(viewP: AEGP_ItemViewP, srcH: AEGP_WorldH, dstH: AEGP_WorldH) -> A_Err,
21084    >,
21085    pub AEGP_GetNewWorkingSpaceColorProfile: ::std::option::Option<
21086        unsafe extern "C" fn(
21087            aegp_plugin_id: AEGP_PluginID,
21088            compH: AEGP_CompH,
21089            color_profilePP: *mut AEGP_ColorProfileP,
21090        ) -> A_Err,
21091    >,
21092    pub AEGP_GetNewColorProfileFromICCProfile: ::std::option::Option<
21093        unsafe extern "C" fn(
21094            aegp_plugin_id: AEGP_PluginID,
21095            icc_sizeL: A_long,
21096            icc_dataPV: *const ::std::os::raw::c_void,
21097            color_profilePP: *mut AEGP_ColorProfileP,
21098        ) -> A_Err,
21099    >,
21100    pub AEGP_GetNewICCProfileFromColorProfile: ::std::option::Option<
21101        unsafe extern "C" fn(
21102            aegp_plugin_id: AEGP_PluginID,
21103            color_profileP: AEGP_ConstColorProfileP,
21104            icc_profilePH: *mut AEGP_MemHandle,
21105        ) -> A_Err,
21106    >,
21107    pub AEGP_GetNewColorProfileDescription: ::std::option::Option<
21108        unsafe extern "C" fn(
21109            aegp_plugin_id: AEGP_PluginID,
21110            color_profileP: AEGP_ConstColorProfileP,
21111            unicode_descPH: *mut AEGP_MemHandle,
21112        ) -> A_Err,
21113    >,
21114    pub AEGP_DisposeColorProfile:
21115        ::std::option::Option<unsafe extern "C" fn(color_profileP: AEGP_ColorProfileP) -> A_Err>,
21116    pub AEGP_GetColorProfileApproximateGamma: ::std::option::Option<
21117        unsafe extern "C" fn(
21118            color_profileP: AEGP_ConstColorProfileP,
21119            approx_gammaP: *mut A_FpShort,
21120        ) -> A_Err,
21121    >,
21122    pub AEGP_IsRGBColorProfile: ::std::option::Option<
21123        unsafe extern "C" fn(
21124            color_profileP: AEGP_ConstColorProfileP,
21125            is_rgbPB: *mut A_Boolean,
21126        ) -> A_Err,
21127    >,
21128    pub AEGP_SetWorkingColorSpace: ::std::option::Option<
21129        unsafe extern "C" fn(
21130            aegp_plugin_id: AEGP_PluginID,
21131            compH: AEGP_CompH,
21132            color_profileP: AEGP_ConstColorProfileP,
21133        ) -> A_Err,
21134    >,
21135}
21136#[repr(C)]
21137#[derive(Debug, Copy, Clone)]
21138pub struct AEGP_ColorSettingsSuite4 {
21139    pub AEGP_GetBlendingTables: ::std::option::Option<
21140        unsafe extern "C" fn(
21141            render_contextH: PR_RenderContextH,
21142            blending_tables: *mut PF_EffectBlendingTables,
21143        ) -> A_Err,
21144    >,
21145    pub AEGP_DoesViewHaveColorSpaceXform: ::std::option::Option<
21146        unsafe extern "C" fn(viewP: AEGP_ItemViewP, has_xformPB: *mut A_Boolean) -> A_Err,
21147    >,
21148    pub AEGP_XformWorkingToViewColorSpace: ::std::option::Option<
21149        unsafe extern "C" fn(viewP: AEGP_ItemViewP, srcH: AEGP_WorldH, dstH: AEGP_WorldH) -> A_Err,
21150    >,
21151    pub AEGP_GetNewWorkingSpaceColorProfile: ::std::option::Option<
21152        unsafe extern "C" fn(
21153            aegp_plugin_id: AEGP_PluginID,
21154            compH: AEGP_CompH,
21155            color_profilePP: *mut AEGP_ColorProfileP,
21156        ) -> A_Err,
21157    >,
21158    pub AEGP_GetNewColorProfileFromICCProfile: ::std::option::Option<
21159        unsafe extern "C" fn(
21160            aegp_plugin_id: AEGP_PluginID,
21161            icc_sizeL: A_long,
21162            icc_dataPV: *const ::std::os::raw::c_void,
21163            color_profilePP: *mut AEGP_ColorProfileP,
21164        ) -> A_Err,
21165    >,
21166    pub AEGP_GetNewICCProfileFromColorProfile: ::std::option::Option<
21167        unsafe extern "C" fn(
21168            aegp_plugin_id: AEGP_PluginID,
21169            color_profileP: AEGP_ConstColorProfileP,
21170            icc_profilePH: *mut AEGP_MemHandle,
21171        ) -> A_Err,
21172    >,
21173    pub AEGP_GetNewColorProfileDescription: ::std::option::Option<
21174        unsafe extern "C" fn(
21175            aegp_plugin_id: AEGP_PluginID,
21176            color_profileP: AEGP_ConstColorProfileP,
21177            unicode_descPH: *mut AEGP_MemHandle,
21178        ) -> A_Err,
21179    >,
21180    pub AEGP_DisposeColorProfile:
21181        ::std::option::Option<unsafe extern "C" fn(color_profileP: AEGP_ColorProfileP) -> A_Err>,
21182    pub AEGP_GetColorProfileApproximateGamma: ::std::option::Option<
21183        unsafe extern "C" fn(
21184            color_profileP: AEGP_ConstColorProfileP,
21185            approx_gammaP: *mut A_FpShort,
21186        ) -> A_Err,
21187    >,
21188    pub AEGP_IsRGBColorProfile: ::std::option::Option<
21189        unsafe extern "C" fn(
21190            color_profileP: AEGP_ConstColorProfileP,
21191            is_rgbPB: *mut A_Boolean,
21192        ) -> A_Err,
21193    >,
21194    pub AEGP_SetWorkingColorSpace: ::std::option::Option<
21195        unsafe extern "C" fn(
21196            aegp_plugin_id: AEGP_PluginID,
21197            compH: AEGP_CompH,
21198            color_profileP: AEGP_ConstColorProfileP,
21199        ) -> A_Err,
21200    >,
21201    pub AEGP_IsOCIOColorManagementUsed: ::std::option::Option<
21202        unsafe extern "C" fn(
21203            aegp_plugin_id: AEGP_PluginID,
21204            is_OCIOColorManagementUsedPB: *mut A_Boolean,
21205        ) -> A_Err,
21206    >,
21207    pub AEGP_GetOCIOConfigurationFile: ::std::option::Option<
21208        unsafe extern "C" fn(
21209            aegp_plugin_id: AEGP_PluginID,
21210            config_filePH: *mut AEGP_MemHandle,
21211        ) -> A_Err,
21212    >,
21213}
21214#[repr(C)]
21215#[derive(Debug, Copy, Clone)]
21216pub struct AEGP_ColorSettingsSuite5 {
21217    pub AEGP_GetBlendingTables: ::std::option::Option<
21218        unsafe extern "C" fn(
21219            render_contextH: PR_RenderContextH,
21220            blending_tables: *mut PF_EffectBlendingTables,
21221        ) -> A_Err,
21222    >,
21223    pub AEGP_DoesViewHaveColorSpaceXform: ::std::option::Option<
21224        unsafe extern "C" fn(viewP: AEGP_ItemViewP, has_xformPB: *mut A_Boolean) -> A_Err,
21225    >,
21226    pub AEGP_XformWorkingToViewColorSpace: ::std::option::Option<
21227        unsafe extern "C" fn(viewP: AEGP_ItemViewP, srcH: AEGP_WorldH, dstH: AEGP_WorldH) -> A_Err,
21228    >,
21229    pub AEGP_GetNewWorkingSpaceColorProfile: ::std::option::Option<
21230        unsafe extern "C" fn(
21231            aegp_plugin_id: AEGP_PluginID,
21232            compH: AEGP_CompH,
21233            color_profilePP: *mut AEGP_ColorProfileP,
21234        ) -> A_Err,
21235    >,
21236    pub AEGP_GetNewColorProfileFromICCProfile: ::std::option::Option<
21237        unsafe extern "C" fn(
21238            aegp_plugin_id: AEGP_PluginID,
21239            icc_sizeL: A_long,
21240            icc_dataPV: *const ::std::os::raw::c_void,
21241            color_profilePP: *mut AEGP_ColorProfileP,
21242        ) -> A_Err,
21243    >,
21244    pub AEGP_GetNewICCProfileFromColorProfile: ::std::option::Option<
21245        unsafe extern "C" fn(
21246            aegp_plugin_id: AEGP_PluginID,
21247            color_profileP: AEGP_ConstColorProfileP,
21248            icc_profilePH: *mut AEGP_MemHandle,
21249        ) -> A_Err,
21250    >,
21251    pub AEGP_GetNewColorProfileDescription: ::std::option::Option<
21252        unsafe extern "C" fn(
21253            aegp_plugin_id: AEGP_PluginID,
21254            color_profileP: AEGP_ConstColorProfileP,
21255            unicode_descPH: *mut AEGP_MemHandle,
21256        ) -> A_Err,
21257    >,
21258    pub AEGP_DisposeColorProfile:
21259        ::std::option::Option<unsafe extern "C" fn(color_profileP: AEGP_ColorProfileP) -> A_Err>,
21260    pub AEGP_GetColorProfileApproximateGamma: ::std::option::Option<
21261        unsafe extern "C" fn(
21262            color_profileP: AEGP_ConstColorProfileP,
21263            approx_gammaP: *mut A_FpShort,
21264        ) -> A_Err,
21265    >,
21266    pub AEGP_IsRGBColorProfile: ::std::option::Option<
21267        unsafe extern "C" fn(
21268            color_profileP: AEGP_ConstColorProfileP,
21269            is_rgbPB: *mut A_Boolean,
21270        ) -> A_Err,
21271    >,
21272    pub AEGP_SetWorkingColorSpace: ::std::option::Option<
21273        unsafe extern "C" fn(
21274            aegp_plugin_id: AEGP_PluginID,
21275            compH: AEGP_CompH,
21276            color_profileP: AEGP_ConstColorProfileP,
21277        ) -> A_Err,
21278    >,
21279    pub AEGP_IsOCIOColorManagementUsed: ::std::option::Option<
21280        unsafe extern "C" fn(
21281            aegp_plugin_id: AEGP_PluginID,
21282            is_OCIOColorManagementUsedPB: *mut A_Boolean,
21283        ) -> A_Err,
21284    >,
21285    pub AEGP_GetOCIOConfigurationFile: ::std::option::Option<
21286        unsafe extern "C" fn(
21287            aegp_plugin_id: AEGP_PluginID,
21288            config_filePH: *mut AEGP_MemHandle,
21289        ) -> A_Err,
21290    >,
21291    pub AEGP_GetOCIOConfigurationFilePath: ::std::option::Option<
21292        unsafe extern "C" fn(
21293            aegp_plugin_id: AEGP_PluginID,
21294            config_filePH: *mut AEGP_MemHandle,
21295        ) -> A_Err,
21296    >,
21297    pub AEGPD_GetOCIOWorkingColorSpace: ::std::option::Option<
21298        unsafe extern "C" fn(
21299            aegp_plugin_id: AEGP_PluginID,
21300            ocio_working_colorspaceH: *mut AEGP_MemHandle,
21301        ) -> A_Err,
21302    >,
21303    pub AEGPD_GetOCIODisplayColorSpace: ::std::option::Option<
21304        unsafe extern "C" fn(
21305            aegp_plugin_id: AEGP_PluginID,
21306            ocio_displayH: *mut AEGP_MemHandle,
21307            ocio_viewH: *mut AEGP_MemHandle,
21308        ) -> A_Err,
21309    >,
21310}
21311#[repr(C)]
21312#[derive(Debug, Copy, Clone)]
21313pub struct AEGP_MarkerSuite1 {
21314    pub AEGP_NewMarker:
21315        ::std::option::Option<unsafe extern "C" fn(markerPP: *mut AEGP_MarkerValP) -> A_Err>,
21316    pub AEGP_DisposeMarker:
21317        ::std::option::Option<unsafe extern "C" fn(markerP: AEGP_MarkerValP) -> A_Err>,
21318    pub AEGP_DuplicateMarker: ::std::option::Option<
21319        unsafe extern "C" fn(markerP: AEGP_MarkerValP, new_markerP: *mut AEGP_MarkerValP) -> A_Err,
21320    >,
21321    pub AEGP_SetMarkerFlag: ::std::option::Option<
21322        unsafe extern "C" fn(
21323            markerP: AEGP_MarkerValP,
21324            flagType: AEGP_MarkerFlagType,
21325            valueB: A_Boolean,
21326        ) -> A_Err,
21327    >,
21328    pub AEGP_GetMarkerFlag: ::std::option::Option<
21329        unsafe extern "C" fn(
21330            markerP: AEGP_ConstMarkerValP,
21331            flagType: AEGP_MarkerFlagType,
21332            valueBP: *mut A_Boolean,
21333        ) -> A_Err,
21334    >,
21335    pub AEGP_GetMarkerString: ::std::option::Option<
21336        unsafe extern "C" fn(
21337            aegp_plugin_id: AEGP_PluginID,
21338            markerP: AEGP_ConstMarkerValP,
21339            strType: AEGP_MarkerStringType,
21340            unicodePH: *mut AEGP_MemHandle,
21341        ) -> A_Err,
21342    >,
21343    pub AEGP_SetMarkerString: ::std::option::Option<
21344        unsafe extern "C" fn(
21345            markerP: AEGP_MarkerValP,
21346            strType: AEGP_MarkerStringType,
21347            unicodeP: *const A_u_short,
21348            lengthL: A_long,
21349        ) -> A_Err,
21350    >,
21351    pub AEGP_CountCuePointParams: ::std::option::Option<
21352        unsafe extern "C" fn(markerP: AEGP_ConstMarkerValP, paramsLP: *mut A_long) -> A_Err,
21353    >,
21354    pub AEGP_GetIndCuePointParam: ::std::option::Option<
21355        unsafe extern "C" fn(
21356            aegp_plugin_id: AEGP_PluginID,
21357            markerP: AEGP_ConstMarkerValP,
21358            param_indexL: A_long,
21359            unicodeKeyPH: *mut AEGP_MemHandle,
21360            unicodeValuePH: *mut AEGP_MemHandle,
21361        ) -> A_Err,
21362    >,
21363    pub AEGP_SetIndCuePointParam: ::std::option::Option<
21364        unsafe extern "C" fn(
21365            markerP: AEGP_MarkerValP,
21366            param_indexL: A_long,
21367            unicodeKeyP: *const A_u_short,
21368            key_lengthL: A_long,
21369            unicodeValueP: *const A_u_short,
21370            value_lengthL: A_long,
21371        ) -> A_Err,
21372    >,
21373    pub AEGP_InsertCuePointParam: ::std::option::Option<
21374        unsafe extern "C" fn(markerP: AEGP_MarkerValP, param_indexL: A_long) -> A_Err,
21375    >,
21376    pub AEGP_DeleteIndCuePointParam: ::std::option::Option<
21377        unsafe extern "C" fn(markerP: AEGP_MarkerValP, param_indexL: A_long) -> A_Err,
21378    >,
21379}
21380#[repr(C)]
21381#[derive(Debug, Copy, Clone)]
21382pub struct AEGP_MarkerSuite2 {
21383    pub AEGP_NewMarker:
21384        ::std::option::Option<unsafe extern "C" fn(markerPP: *mut AEGP_MarkerValP) -> A_Err>,
21385    pub AEGP_DisposeMarker:
21386        ::std::option::Option<unsafe extern "C" fn(markerP: AEGP_MarkerValP) -> A_Err>,
21387    pub AEGP_DuplicateMarker: ::std::option::Option<
21388        unsafe extern "C" fn(markerP: AEGP_MarkerValP, new_markerP: *mut AEGP_MarkerValP) -> A_Err,
21389    >,
21390    pub AEGP_SetMarkerFlag: ::std::option::Option<
21391        unsafe extern "C" fn(
21392            markerP: AEGP_MarkerValP,
21393            flagType: AEGP_MarkerFlagType,
21394            valueB: A_Boolean,
21395        ) -> A_Err,
21396    >,
21397    pub AEGP_GetMarkerFlag: ::std::option::Option<
21398        unsafe extern "C" fn(
21399            markerP: AEGP_ConstMarkerValP,
21400            flagType: AEGP_MarkerFlagType,
21401            valueBP: *mut A_Boolean,
21402        ) -> A_Err,
21403    >,
21404    pub AEGP_GetMarkerString: ::std::option::Option<
21405        unsafe extern "C" fn(
21406            aegp_plugin_id: AEGP_PluginID,
21407            markerP: AEGP_ConstMarkerValP,
21408            strType: AEGP_MarkerStringType,
21409            unicodePH: *mut AEGP_MemHandle,
21410        ) -> A_Err,
21411    >,
21412    pub AEGP_SetMarkerString: ::std::option::Option<
21413        unsafe extern "C" fn(
21414            markerP: AEGP_MarkerValP,
21415            strType: AEGP_MarkerStringType,
21416            unicodeP: *const A_u_short,
21417            lengthL: A_long,
21418        ) -> A_Err,
21419    >,
21420    pub AEGP_CountCuePointParams: ::std::option::Option<
21421        unsafe extern "C" fn(markerP: AEGP_ConstMarkerValP, paramsLP: *mut A_long) -> A_Err,
21422    >,
21423    pub AEGP_GetIndCuePointParam: ::std::option::Option<
21424        unsafe extern "C" fn(
21425            aegp_plugin_id: AEGP_PluginID,
21426            markerP: AEGP_ConstMarkerValP,
21427            param_indexL: A_long,
21428            unicodeKeyPH: *mut AEGP_MemHandle,
21429            unicodeValuePH: *mut AEGP_MemHandle,
21430        ) -> A_Err,
21431    >,
21432    pub AEGP_SetIndCuePointParam: ::std::option::Option<
21433        unsafe extern "C" fn(
21434            markerP: AEGP_MarkerValP,
21435            param_indexL: A_long,
21436            unicodeKeyP: *const A_u_short,
21437            key_lengthL: A_long,
21438            unicodeValueP: *const A_u_short,
21439            value_lengthL: A_long,
21440        ) -> A_Err,
21441    >,
21442    pub AEGP_InsertCuePointParam: ::std::option::Option<
21443        unsafe extern "C" fn(markerP: AEGP_MarkerValP, param_indexL: A_long) -> A_Err,
21444    >,
21445    pub AEGP_DeleteIndCuePointParam: ::std::option::Option<
21446        unsafe extern "C" fn(markerP: AEGP_MarkerValP, param_indexL: A_long) -> A_Err,
21447    >,
21448    pub AEGP_SetMarkerDuration: ::std::option::Option<
21449        unsafe extern "C" fn(markerP: AEGP_MarkerValP, durationPT: *const A_Time) -> A_Err,
21450    >,
21451    pub AEGP_GetMarkerDuration: ::std::option::Option<
21452        unsafe extern "C" fn(markerP: AEGP_ConstMarkerValP, durationPT: *mut A_Time) -> A_Err,
21453    >,
21454}
21455#[repr(C)]
21456#[derive(Debug, Copy, Clone)]
21457pub struct AEGP_ProjSuite5 {
21458    pub AEGP_GetNumProjects:
21459        ::std::option::Option<unsafe extern "C" fn(num_projPL: *mut A_long) -> A_Err>,
21460    pub AEGP_GetProjectByIndex: ::std::option::Option<
21461        unsafe extern "C" fn(proj_indexL: A_long, projPH: *mut AEGP_ProjectH) -> A_Err,
21462    >,
21463    pub AEGP_GetProjectName: ::std::option::Option<
21464        unsafe extern "C" fn(projH: AEGP_ProjectH, nameZ: *mut A_char) -> A_Err,
21465    >,
21466    pub AEGP_GetProjectPath: ::std::option::Option<
21467        unsafe extern "C" fn(projH: AEGP_ProjectH, unicode_pathPH: *mut AEGP_MemHandle) -> A_Err,
21468    >,
21469    pub AEGP_GetProjectRootFolder: ::std::option::Option<
21470        unsafe extern "C" fn(projH: AEGP_ProjectH, root_folderPH: *mut AEGP_ItemH) -> A_Err,
21471    >,
21472    pub AEGP_SaveProjectToPath: ::std::option::Option<
21473        unsafe extern "C" fn(projH: AEGP_ProjectH, pathZ: *const A_UTF16Char) -> A_Err,
21474    >,
21475    pub AEGP_GetProjectTimeDisplay: ::std::option::Option<
21476        unsafe extern "C" fn(projH: AEGP_ProjectH, time_displayP: *mut AEGP_TimeDisplay2) -> A_Err,
21477    >,
21478    pub AEGP_SetProjectTimeDisplay: ::std::option::Option<
21479        unsafe extern "C" fn(
21480            projH: AEGP_ProjectH,
21481            time_displayP: *const AEGP_TimeDisplay2,
21482        ) -> A_Err,
21483    >,
21484    pub AEGP_ProjectIsDirty: ::std::option::Option<
21485        unsafe extern "C" fn(projH: AEGP_ProjectH, is_dirtyPB: *mut A_Boolean) -> A_Err,
21486    >,
21487    pub AEGP_SaveProjectAs: ::std::option::Option<
21488        unsafe extern "C" fn(projH: AEGP_ProjectH, pathZ: *const A_UTF16Char) -> A_Err,
21489    >,
21490    pub AEGP_NewProject:
21491        ::std::option::Option<unsafe extern "C" fn(new_projectPH: *mut AEGP_ProjectH) -> A_Err>,
21492    pub AEGP_OpenProjectFromPath: ::std::option::Option<
21493        unsafe extern "C" fn(pathZ: *const A_UTF16Char, projectPH: *mut AEGP_ProjectH) -> A_Err,
21494    >,
21495    pub AEGP_GetProjectBitDepth: ::std::option::Option<
21496        unsafe extern "C" fn(projectH: AEGP_ProjectH, bit_depthP: *mut AEGP_ProjBitDepth) -> A_Err,
21497    >,
21498    pub AEGP_SetProjectBitDepth: ::std::option::Option<
21499        unsafe extern "C" fn(projectH: AEGP_ProjectH, bit_depth: AEGP_ProjBitDepth) -> A_Err,
21500    >,
21501}
21502#[repr(C)]
21503#[derive(Debug, Copy, Clone)]
21504pub struct AEGP_PersistentDataSuite3 {
21505    pub AEGP_GetApplicationBlob:
21506        ::std::option::Option<unsafe extern "C" fn(blobPH: *mut AEGP_PersistentBlobH) -> A_Err>,
21507    pub AEGP_GetNumSections: ::std::option::Option<
21508        unsafe extern "C" fn(blobH: AEGP_PersistentBlobH, num_sectionPL: *mut A_long) -> A_Err,
21509    >,
21510    pub AEGP_GetSectionKeyByIndex: ::std::option::Option<
21511        unsafe extern "C" fn(
21512            blobH: AEGP_PersistentBlobH,
21513            section_index: A_long,
21514            max_section_size: A_long,
21515            section_keyZ: *mut A_char,
21516        ) -> A_Err,
21517    >,
21518    pub AEGP_DoesKeyExist: ::std::option::Option<
21519        unsafe extern "C" fn(
21520            blobH: AEGP_PersistentBlobH,
21521            section_keyZ: *const A_char,
21522            value_keyZ: *const A_char,
21523            existsPB: *mut A_Boolean,
21524        ) -> A_Err,
21525    >,
21526    pub AEGP_GetNumKeys: ::std::option::Option<
21527        unsafe extern "C" fn(
21528            blobH: AEGP_PersistentBlobH,
21529            section_keyZ: *const A_char,
21530            num_keysPL: *mut A_long,
21531        ) -> A_Err,
21532    >,
21533    pub AEGP_GetValueKeyByIndex: ::std::option::Option<
21534        unsafe extern "C" fn(
21535            blobH: AEGP_PersistentBlobH,
21536            section_keyZ: *const A_char,
21537            key_index: A_long,
21538            max_key_size: A_long,
21539            value_keyZ: *mut A_char,
21540        ) -> A_Err,
21541    >,
21542    pub AEGP_GetDataHandle: ::std::option::Option<
21543        unsafe extern "C" fn(
21544            plugin_id: AEGP_PluginID,
21545            blobH: AEGP_PersistentBlobH,
21546            section_keyZ: *const A_char,
21547            value_keyZ: *const A_char,
21548            defaultH0: AEGP_MemHandle,
21549            valuePH: *mut AEGP_MemHandle,
21550        ) -> A_Err,
21551    >,
21552    pub AEGP_GetData: ::std::option::Option<
21553        unsafe extern "C" fn(
21554            blobH: AEGP_PersistentBlobH,
21555            section_keyZ: *const A_char,
21556            value_keyZ: *const A_char,
21557            data_sizeLu: A_u_long,
21558            defaultPV0: *const ::std::os::raw::c_void,
21559            bufPV: *mut ::std::os::raw::c_void,
21560        ) -> A_Err,
21561    >,
21562    pub AEGP_GetString: ::std::option::Option<
21563        unsafe extern "C" fn(
21564            blobH: AEGP_PersistentBlobH,
21565            section_keyZ: *const A_char,
21566            value_keyZ: *const A_char,
21567            defaultZ0: *const A_char,
21568            buf_sizeLu: A_u_long,
21569            bufZ: *mut A_char,
21570            actual_buf_sizeLu0: *mut A_u_long,
21571        ) -> A_Err,
21572    >,
21573    pub AEGP_GetLong: ::std::option::Option<
21574        unsafe extern "C" fn(
21575            blobH: AEGP_PersistentBlobH,
21576            section_keyZ: *const A_char,
21577            value_keyZ: *const A_char,
21578            defaultL: A_long,
21579            valuePL: *mut A_long,
21580        ) -> A_Err,
21581    >,
21582    pub AEGP_GetFpLong: ::std::option::Option<
21583        unsafe extern "C" fn(
21584            blobH: AEGP_PersistentBlobH,
21585            section_keyZ: *const A_char,
21586            value_keyZ: *const A_char,
21587            defaultF: A_FpLong,
21588            valuePF: *mut A_FpLong,
21589        ) -> A_Err,
21590    >,
21591    pub AEGP_SetDataHandle: ::std::option::Option<
21592        unsafe extern "C" fn(
21593            blobH: AEGP_PersistentBlobH,
21594            section_keyZ: *const A_char,
21595            value_keyZ: *const A_char,
21596            valueH: AEGP_MemHandle,
21597        ) -> A_Err,
21598    >,
21599    pub AEGP_SetData: ::std::option::Option<
21600        unsafe extern "C" fn(
21601            blobH: AEGP_PersistentBlobH,
21602            section_keyZ: *const A_char,
21603            value_keyZ: *const A_char,
21604            data_sizeLu: A_u_long,
21605            dataPV: *const ::std::os::raw::c_void,
21606        ) -> A_Err,
21607    >,
21608    pub AEGP_SetString: ::std::option::Option<
21609        unsafe extern "C" fn(
21610            blobH: AEGP_PersistentBlobH,
21611            section_keyZ: *const A_char,
21612            value_keyZ: *const A_char,
21613            strZ: *const A_char,
21614        ) -> A_Err,
21615    >,
21616    pub AEGP_SetLong: ::std::option::Option<
21617        unsafe extern "C" fn(
21618            blobH: AEGP_PersistentBlobH,
21619            section_keyZ: *const A_char,
21620            value_keyZ: *const A_char,
21621            valueL: A_long,
21622        ) -> A_Err,
21623    >,
21624    pub AEGP_SetFpLong: ::std::option::Option<
21625        unsafe extern "C" fn(
21626            blobH: AEGP_PersistentBlobH,
21627            section_keyZ: *const A_char,
21628            value_keyZ: *const A_char,
21629            valueF: A_FpLong,
21630        ) -> A_Err,
21631    >,
21632    pub AEGP_DeleteEntry: ::std::option::Option<
21633        unsafe extern "C" fn(
21634            blobH: AEGP_PersistentBlobH,
21635            section_keyZ: *const A_char,
21636            value_keyZ: *const A_char,
21637        ) -> A_Err,
21638    >,
21639    pub AEGP_GetPrefsDirectory:
21640        ::std::option::Option<unsafe extern "C" fn(unicode_pathPH: *mut AEGP_MemHandle) -> A_Err>,
21641}
21642#[repr(C)]
21643#[derive(Debug, Copy, Clone)]
21644pub struct AEGP_IterateSuite1 {
21645    pub AEGP_GetNumThreads:
21646        ::std::option::Option<unsafe extern "C" fn(num_threadsPL: *mut A_long) -> A_Err>,
21647    pub AEGP_IterateGeneric: ::std::option::Option<
21648        unsafe extern "C" fn(
21649            iterationsL: A_long,
21650            refconPV: *mut ::std::os::raw::c_void,
21651            fn_func: ::std::option::Option<
21652                unsafe extern "C" fn(
21653                    refconPV: *mut ::std::os::raw::c_void,
21654                    thread_indexL: A_long,
21655                    i: A_long,
21656                    iterationsL: A_long,
21657                ) -> A_Err,
21658            >,
21659        ) -> A_Err,
21660    >,
21661}
21662#[repr(C)]
21663#[derive(Debug, Copy, Clone)]
21664pub struct AEGP_IOInSuite6 {
21665    pub AEGP_GetInSpecOptionsHandle: ::std::option::Option<
21666        unsafe extern "C" fn(
21667            inH: AEIO_InSpecH,
21668            optionsPPV: *mut *mut ::std::os::raw::c_void,
21669        ) -> A_Err,
21670    >,
21671    pub AEGP_SetInSpecOptionsHandle: ::std::option::Option<
21672        unsafe extern "C" fn(
21673            inH: AEIO_InSpecH,
21674            optionsPV: *mut ::std::os::raw::c_void,
21675            old_optionsPPV: *mut *mut ::std::os::raw::c_void,
21676        ) -> A_Err,
21677    >,
21678    pub AEGP_GetInSpecFilePath: ::std::option::Option<
21679        unsafe extern "C" fn(inH: AEIO_InSpecH, unicode_pathPH: *mut AEGP_MemHandle) -> A_Err,
21680    >,
21681    pub AEGP_GetInSpecNativeFPS: ::std::option::Option<
21682        unsafe extern "C" fn(inH: AEIO_InSpecH, native_fpsP: *mut A_Fixed) -> A_Err,
21683    >,
21684    pub AEGP_SetInSpecNativeFPS: ::std::option::Option<
21685        unsafe extern "C" fn(inH: AEIO_InSpecH, native_fps: A_Fixed) -> A_Err,
21686    >,
21687    pub AEGP_GetInSpecDepth: ::std::option::Option<
21688        unsafe extern "C" fn(inH: AEIO_InSpecH, depthPS: *mut A_short) -> A_Err,
21689    >,
21690    pub AEGP_SetInSpecDepth:
21691        ::std::option::Option<unsafe extern "C" fn(inH: AEIO_InSpecH, depthS: A_short) -> A_Err>,
21692    pub AEGP_GetInSpecSize: ::std::option::Option<
21693        unsafe extern "C" fn(inH: AEIO_InSpecH, sizePL: *mut AEIO_FileSize) -> A_Err,
21694    >,
21695    pub AEGP_SetInSpecSize: ::std::option::Option<
21696        unsafe extern "C" fn(inH: AEIO_InSpecH, sizeL: AEIO_FileSize) -> A_Err,
21697    >,
21698    pub AEGP_GetInSpecInterlaceLabel: ::std::option::Option<
21699        unsafe extern "C" fn(inH: AEIO_InSpecH, interlaceP: *mut FIEL_Label) -> A_Err,
21700    >,
21701    pub AEGP_SetInSpecInterlaceLabel: ::std::option::Option<
21702        unsafe extern "C" fn(inH: AEIO_InSpecH, interlaceP: *const FIEL_Label) -> A_Err,
21703    >,
21704    pub AEGP_GetInSpecAlphaLabel: ::std::option::Option<
21705        unsafe extern "C" fn(inH: AEIO_InSpecH, alphaP: *mut AEIO_AlphaLabel) -> A_Err,
21706    >,
21707    pub AEGP_SetInSpecAlphaLabel: ::std::option::Option<
21708        unsafe extern "C" fn(inH: AEIO_InSpecH, alphaP: *const AEIO_AlphaLabel) -> A_Err,
21709    >,
21710    pub AEGP_GetInSpecDuration: ::std::option::Option<
21711        unsafe extern "C" fn(inH: AEIO_InSpecH, durationP: *mut A_Time) -> A_Err,
21712    >,
21713    pub AEGP_SetInSpecDuration: ::std::option::Option<
21714        unsafe extern "C" fn(inH: AEIO_InSpecH, durationP: *const A_Time) -> A_Err,
21715    >,
21716    pub AEGP_GetInSpecDimensions: ::std::option::Option<
21717        unsafe extern "C" fn(
21718            inH: AEIO_InSpecH,
21719            widthPL0: *mut A_long,
21720            heightPL0: *mut A_long,
21721        ) -> A_Err,
21722    >,
21723    pub AEGP_SetInSpecDimensions: ::std::option::Option<
21724        unsafe extern "C" fn(inH: AEIO_InSpecH, widthL: A_long, heightL: A_long) -> A_Err,
21725    >,
21726    pub AEGP_InSpecGetRationalDimensions: ::std::option::Option<
21727        unsafe extern "C" fn(
21728            inH: AEIO_InSpecH,
21729            rs0: *const AEIO_RationalScale,
21730            width0: *mut A_long,
21731            height0: *mut A_long,
21732            r0: *mut A_Rect,
21733        ) -> A_Err,
21734    >,
21735    pub AEGP_GetInSpecHSF:
21736        ::std::option::Option<unsafe extern "C" fn(inH: AEIO_InSpecH, hsfP: *mut A_Ratio) -> A_Err>,
21737    pub AEGP_SetInSpecHSF: ::std::option::Option<
21738        unsafe extern "C" fn(inH: AEIO_InSpecH, hsfP: *const A_Ratio) -> A_Err,
21739    >,
21740    pub AEGP_GetInSpecSoundRate: ::std::option::Option<
21741        unsafe extern "C" fn(inH: AEIO_InSpecH, ratePF: *mut A_FpLong) -> A_Err,
21742    >,
21743    pub AEGP_SetInSpecSoundRate:
21744        ::std::option::Option<unsafe extern "C" fn(inH: AEIO_InSpecH, rateF: A_FpLong) -> A_Err>,
21745    pub AEGP_GetInSpecSoundEncoding: ::std::option::Option<
21746        unsafe extern "C" fn(inH: AEIO_InSpecH, encodingP: *mut AEIO_SndEncoding) -> A_Err,
21747    >,
21748    pub AEGP_SetInSpecSoundEncoding: ::std::option::Option<
21749        unsafe extern "C" fn(inH: AEIO_InSpecH, encoding: AEIO_SndEncoding) -> A_Err,
21750    >,
21751    pub AEGP_GetInSpecSoundSampleSize: ::std::option::Option<
21752        unsafe extern "C" fn(
21753            inH: AEIO_InSpecH,
21754            bytes_per_sampleP: *mut AEIO_SndSampleSize,
21755        ) -> A_Err,
21756    >,
21757    pub AEGP_SetInSpecSoundSampleSize: ::std::option::Option<
21758        unsafe extern "C" fn(inH: AEIO_InSpecH, bytes_per_sample: AEIO_SndSampleSize) -> A_Err,
21759    >,
21760    pub AEGP_GetInSpecSoundChannels: ::std::option::Option<
21761        unsafe extern "C" fn(inH: AEIO_InSpecH, num_channelsP: *mut AEIO_SndChannels) -> A_Err,
21762    >,
21763    pub AEGP_SetInSpecSoundChannels: ::std::option::Option<
21764        unsafe extern "C" fn(inH: AEIO_InSpecH, num_channels: AEIO_SndChannels) -> A_Err,
21765    >,
21766    pub AEGP_AddAuxExtMap: ::std::option::Option<
21767        unsafe extern "C" fn(extension: *const A_char, file_type: A_long, creator: A_long) -> A_Err,
21768    >,
21769    pub AEGP_SetInSpecEmbeddedColorProfile: ::std::option::Option<
21770        unsafe extern "C" fn(
21771            inH: AEIO_InSpecH,
21772            color_profileP0: AEGP_ConstColorProfileP,
21773            profile_descP0: *const A_UTF16Char,
21774        ) -> A_Err,
21775    >,
21776    pub AEGP_SetInSpecAssignedColorProfile: ::std::option::Option<
21777        unsafe extern "C" fn(inH: AEIO_InSpecH, color_profileP: AEGP_ConstColorProfileP) -> A_Err,
21778    >,
21779    pub AEGP_GetInSpecNativeStartTime: ::std::option::Option<
21780        unsafe extern "C" fn(inH: AEIO_InSpecH, startTimeP: *mut A_Time) -> A_Err,
21781    >,
21782    pub AEGP_SetInSpecNativeStartTime: ::std::option::Option<
21783        unsafe extern "C" fn(inH: AEIO_InSpecH, startTimeP: *const A_Time) -> A_Err,
21784    >,
21785    pub AEGP_ClearInSpecNativeStartTime:
21786        ::std::option::Option<unsafe extern "C" fn(inH: AEIO_InSpecH) -> A_Err>,
21787    pub AEGP_GetInSpecNativeDisplayDropFrame: ::std::option::Option<
21788        unsafe extern "C" fn(inH: AEIO_InSpecH, displayDropFrameBP: *mut A_Boolean) -> A_Err,
21789    >,
21790    pub AEGP_SetInSpecNativeDisplayDropFrame: ::std::option::Option<
21791        unsafe extern "C" fn(inH: AEIO_InSpecH, displayDropFrameB: A_Boolean) -> A_Err,
21792    >,
21793    pub AEGP_SetInSpecStillSequenceNativeFPS: ::std::option::Option<
21794        unsafe extern "C" fn(inH: AEIO_InSpecH, native_still_seq_fps: A_Fixed) -> A_Err,
21795    >,
21796    pub AEGP_SetInSpecColorSpaceFromCICP: ::std::option::Option<
21797        unsafe extern "C" fn(
21798            inH: AEIO_InSpecH,
21799            inColorPrimariesCode: A_long,
21800            inTransferCharacteristicsCode: A_long,
21801            inMatrixCoefficientsCode: A_long,
21802            inFullRangeVideoFlag: A_long,
21803            inBitDepthL: A_long,
21804            inIsRGB: A_Boolean,
21805        ) -> A_Err,
21806    >,
21807}
21808#[repr(C)]
21809#[derive(Debug, Copy, Clone)]
21810pub struct AEGP_IOInSuite5 {
21811    pub AEGP_GetInSpecOptionsHandle: ::std::option::Option<
21812        unsafe extern "C" fn(
21813            inH: AEIO_InSpecH,
21814            optionsPPV: *mut *mut ::std::os::raw::c_void,
21815        ) -> A_Err,
21816    >,
21817    pub AEGP_SetInSpecOptionsHandle: ::std::option::Option<
21818        unsafe extern "C" fn(
21819            inH: AEIO_InSpecH,
21820            optionsPV: *mut ::std::os::raw::c_void,
21821            old_optionsPPV: *mut *mut ::std::os::raw::c_void,
21822        ) -> A_Err,
21823    >,
21824    pub AEGP_GetInSpecFilePath: ::std::option::Option<
21825        unsafe extern "C" fn(inH: AEIO_InSpecH, unicode_pathPH: *mut AEGP_MemHandle) -> A_Err,
21826    >,
21827    pub AEGP_GetInSpecNativeFPS: ::std::option::Option<
21828        unsafe extern "C" fn(inH: AEIO_InSpecH, native_fpsP: *mut A_Fixed) -> A_Err,
21829    >,
21830    pub AEGP_SetInSpecNativeFPS: ::std::option::Option<
21831        unsafe extern "C" fn(inH: AEIO_InSpecH, native_fps: A_Fixed) -> A_Err,
21832    >,
21833    pub AEGP_GetInSpecDepth: ::std::option::Option<
21834        unsafe extern "C" fn(inH: AEIO_InSpecH, depthPS: *mut A_short) -> A_Err,
21835    >,
21836    pub AEGP_SetInSpecDepth:
21837        ::std::option::Option<unsafe extern "C" fn(inH: AEIO_InSpecH, depthS: A_short) -> A_Err>,
21838    pub AEGP_GetInSpecSize: ::std::option::Option<
21839        unsafe extern "C" fn(inH: AEIO_InSpecH, sizePL: *mut AEIO_FileSize) -> A_Err,
21840    >,
21841    pub AEGP_SetInSpecSize: ::std::option::Option<
21842        unsafe extern "C" fn(inH: AEIO_InSpecH, sizeL: AEIO_FileSize) -> A_Err,
21843    >,
21844    pub AEGP_GetInSpecInterlaceLabel: ::std::option::Option<
21845        unsafe extern "C" fn(inH: AEIO_InSpecH, interlaceP: *mut FIEL_Label) -> A_Err,
21846    >,
21847    pub AEGP_SetInSpecInterlaceLabel: ::std::option::Option<
21848        unsafe extern "C" fn(inH: AEIO_InSpecH, interlaceP: *const FIEL_Label) -> A_Err,
21849    >,
21850    pub AEGP_GetInSpecAlphaLabel: ::std::option::Option<
21851        unsafe extern "C" fn(inH: AEIO_InSpecH, alphaP: *mut AEIO_AlphaLabel) -> A_Err,
21852    >,
21853    pub AEGP_SetInSpecAlphaLabel: ::std::option::Option<
21854        unsafe extern "C" fn(inH: AEIO_InSpecH, alphaP: *const AEIO_AlphaLabel) -> A_Err,
21855    >,
21856    pub AEGP_GetInSpecDuration: ::std::option::Option<
21857        unsafe extern "C" fn(inH: AEIO_InSpecH, durationP: *mut A_Time) -> A_Err,
21858    >,
21859    pub AEGP_SetInSpecDuration: ::std::option::Option<
21860        unsafe extern "C" fn(inH: AEIO_InSpecH, durationP: *const A_Time) -> A_Err,
21861    >,
21862    pub AEGP_GetInSpecDimensions: ::std::option::Option<
21863        unsafe extern "C" fn(
21864            inH: AEIO_InSpecH,
21865            widthPL0: *mut A_long,
21866            heightPL0: *mut A_long,
21867        ) -> A_Err,
21868    >,
21869    pub AEGP_SetInSpecDimensions: ::std::option::Option<
21870        unsafe extern "C" fn(inH: AEIO_InSpecH, widthL: A_long, heightL: A_long) -> A_Err,
21871    >,
21872    pub AEGP_InSpecGetRationalDimensions: ::std::option::Option<
21873        unsafe extern "C" fn(
21874            inH: AEIO_InSpecH,
21875            rs0: *const AEIO_RationalScale,
21876            width0: *mut A_long,
21877            height0: *mut A_long,
21878            r0: *mut A_Rect,
21879        ) -> A_Err,
21880    >,
21881    pub AEGP_GetInSpecHSF:
21882        ::std::option::Option<unsafe extern "C" fn(inH: AEIO_InSpecH, hsfP: *mut A_Ratio) -> A_Err>,
21883    pub AEGP_SetInSpecHSF: ::std::option::Option<
21884        unsafe extern "C" fn(inH: AEIO_InSpecH, hsfP: *const A_Ratio) -> A_Err,
21885    >,
21886    pub AEGP_GetInSpecSoundRate: ::std::option::Option<
21887        unsafe extern "C" fn(inH: AEIO_InSpecH, ratePF: *mut A_FpLong) -> A_Err,
21888    >,
21889    pub AEGP_SetInSpecSoundRate:
21890        ::std::option::Option<unsafe extern "C" fn(inH: AEIO_InSpecH, rateF: A_FpLong) -> A_Err>,
21891    pub AEGP_GetInSpecSoundEncoding: ::std::option::Option<
21892        unsafe extern "C" fn(inH: AEIO_InSpecH, encodingP: *mut AEIO_SndEncoding) -> A_Err,
21893    >,
21894    pub AEGP_SetInSpecSoundEncoding: ::std::option::Option<
21895        unsafe extern "C" fn(inH: AEIO_InSpecH, encoding: AEIO_SndEncoding) -> A_Err,
21896    >,
21897    pub AEGP_GetInSpecSoundSampleSize: ::std::option::Option<
21898        unsafe extern "C" fn(
21899            inH: AEIO_InSpecH,
21900            bytes_per_sampleP: *mut AEIO_SndSampleSize,
21901        ) -> A_Err,
21902    >,
21903    pub AEGP_SetInSpecSoundSampleSize: ::std::option::Option<
21904        unsafe extern "C" fn(inH: AEIO_InSpecH, bytes_per_sample: AEIO_SndSampleSize) -> A_Err,
21905    >,
21906    pub AEGP_GetInSpecSoundChannels: ::std::option::Option<
21907        unsafe extern "C" fn(inH: AEIO_InSpecH, num_channelsP: *mut AEIO_SndChannels) -> A_Err,
21908    >,
21909    pub AEGP_SetInSpecSoundChannels: ::std::option::Option<
21910        unsafe extern "C" fn(inH: AEIO_InSpecH, num_channels: AEIO_SndChannels) -> A_Err,
21911    >,
21912    pub AEGP_AddAuxExtMap: ::std::option::Option<
21913        unsafe extern "C" fn(extension: *const A_char, file_type: A_long, creator: A_long) -> A_Err,
21914    >,
21915    pub AEGP_SetInSpecEmbeddedColorProfile: ::std::option::Option<
21916        unsafe extern "C" fn(
21917            inH: AEIO_InSpecH,
21918            color_profileP0: AEGP_ConstColorProfileP,
21919            profile_descP0: *const A_UTF16Char,
21920        ) -> A_Err,
21921    >,
21922    pub AEGP_SetInSpecAssignedColorProfile: ::std::option::Option<
21923        unsafe extern "C" fn(inH: AEIO_InSpecH, color_profileP: AEGP_ConstColorProfileP) -> A_Err,
21924    >,
21925    pub AEGP_GetInSpecNativeStartTime: ::std::option::Option<
21926        unsafe extern "C" fn(inH: AEIO_InSpecH, startTimeP: *mut A_Time) -> A_Err,
21927    >,
21928    pub AEGP_SetInSpecNativeStartTime: ::std::option::Option<
21929        unsafe extern "C" fn(inH: AEIO_InSpecH, startTimeP: *const A_Time) -> A_Err,
21930    >,
21931    pub AEGP_ClearInSpecNativeStartTime:
21932        ::std::option::Option<unsafe extern "C" fn(inH: AEIO_InSpecH) -> A_Err>,
21933    pub AEGP_GetInSpecNativeDisplayDropFrame: ::std::option::Option<
21934        unsafe extern "C" fn(inH: AEIO_InSpecH, displayDropFrameBP: *mut A_Boolean) -> A_Err,
21935    >,
21936    pub AEGP_SetInSpecNativeDisplayDropFrame: ::std::option::Option<
21937        unsafe extern "C" fn(inH: AEIO_InSpecH, displayDropFrameB: A_Boolean) -> A_Err,
21938    >,
21939    pub AEGP_SetInSpecStillSequenceNativeFPS: ::std::option::Option<
21940        unsafe extern "C" fn(inH: AEIO_InSpecH, native_still_seq_fps: A_Fixed) -> A_Err,
21941    >,
21942}
21943#[repr(C)]
21944#[derive(Debug, Copy, Clone)]
21945pub struct AEGP_IOInSuite4 {
21946    pub AEGP_GetInSpecOptionsHandle: ::std::option::Option<
21947        unsafe extern "C" fn(
21948            inH: AEIO_InSpecH,
21949            optionsPPV: *mut *mut ::std::os::raw::c_void,
21950        ) -> A_Err,
21951    >,
21952    pub AEGP_SetInSpecOptionsHandle: ::std::option::Option<
21953        unsafe extern "C" fn(
21954            inH: AEIO_InSpecH,
21955            optionsPV: *mut ::std::os::raw::c_void,
21956            old_optionsPPV: *mut *mut ::std::os::raw::c_void,
21957        ) -> A_Err,
21958    >,
21959    pub AEGP_GetInSpecFilePath: ::std::option::Option<
21960        unsafe extern "C" fn(inH: AEIO_InSpecH, unicode_pathPH: *mut AEGP_MemHandle) -> A_Err,
21961    >,
21962    pub AEGP_GetInSpecNativeFPS: ::std::option::Option<
21963        unsafe extern "C" fn(inH: AEIO_InSpecH, native_fpsP: *mut A_Fixed) -> A_Err,
21964    >,
21965    pub AEGP_SetInSpecNativeFPS: ::std::option::Option<
21966        unsafe extern "C" fn(inH: AEIO_InSpecH, native_fps: A_Fixed) -> A_Err,
21967    >,
21968    pub AEGP_GetInSpecDepth: ::std::option::Option<
21969        unsafe extern "C" fn(inH: AEIO_InSpecH, depthPS: *mut A_short) -> A_Err,
21970    >,
21971    pub AEGP_SetInSpecDepth:
21972        ::std::option::Option<unsafe extern "C" fn(inH: AEIO_InSpecH, depthS: A_short) -> A_Err>,
21973    pub AEGP_GetInSpecSize: ::std::option::Option<
21974        unsafe extern "C" fn(inH: AEIO_InSpecH, sizePL: *mut AEIO_FileSize) -> A_Err,
21975    >,
21976    pub AEGP_SetInSpecSize: ::std::option::Option<
21977        unsafe extern "C" fn(inH: AEIO_InSpecH, sizeL: AEIO_FileSize) -> A_Err,
21978    >,
21979    pub AEGP_GetInSpecInterlaceLabel: ::std::option::Option<
21980        unsafe extern "C" fn(inH: AEIO_InSpecH, interlaceP: *mut FIEL_Label) -> A_Err,
21981    >,
21982    pub AEGP_SetInSpecInterlaceLabel: ::std::option::Option<
21983        unsafe extern "C" fn(inH: AEIO_InSpecH, interlaceP: *const FIEL_Label) -> A_Err,
21984    >,
21985    pub AEGP_GetInSpecAlphaLabel: ::std::option::Option<
21986        unsafe extern "C" fn(inH: AEIO_InSpecH, alphaP: *mut AEIO_AlphaLabel) -> A_Err,
21987    >,
21988    pub AEGP_SetInSpecAlphaLabel: ::std::option::Option<
21989        unsafe extern "C" fn(inH: AEIO_InSpecH, alphaP: *const AEIO_AlphaLabel) -> A_Err,
21990    >,
21991    pub AEGP_GetInSpecDuration: ::std::option::Option<
21992        unsafe extern "C" fn(inH: AEIO_InSpecH, durationP: *mut A_Time) -> A_Err,
21993    >,
21994    pub AEGP_SetInSpecDuration: ::std::option::Option<
21995        unsafe extern "C" fn(inH: AEIO_InSpecH, durationP: *const A_Time) -> A_Err,
21996    >,
21997    pub AEGP_GetInSpecDimensions: ::std::option::Option<
21998        unsafe extern "C" fn(
21999            inH: AEIO_InSpecH,
22000            widthPL0: *mut A_long,
22001            heightPL0: *mut A_long,
22002        ) -> A_Err,
22003    >,
22004    pub AEGP_SetInSpecDimensions: ::std::option::Option<
22005        unsafe extern "C" fn(inH: AEIO_InSpecH, widthL: A_long, heightL: A_long) -> A_Err,
22006    >,
22007    pub AEGP_InSpecGetRationalDimensions: ::std::option::Option<
22008        unsafe extern "C" fn(
22009            inH: AEIO_InSpecH,
22010            rs0: *const AEIO_RationalScale,
22011            width0: *mut A_long,
22012            height0: *mut A_long,
22013            r0: *mut A_Rect,
22014        ) -> A_Err,
22015    >,
22016    pub AEGP_GetInSpecHSF:
22017        ::std::option::Option<unsafe extern "C" fn(inH: AEIO_InSpecH, hsfP: *mut A_Ratio) -> A_Err>,
22018    pub AEGP_SetInSpecHSF: ::std::option::Option<
22019        unsafe extern "C" fn(inH: AEIO_InSpecH, hsfP: *const A_Ratio) -> A_Err,
22020    >,
22021    pub AEGP_GetInSpecSoundRate: ::std::option::Option<
22022        unsafe extern "C" fn(inH: AEIO_InSpecH, ratePF: *mut A_FpLong) -> A_Err,
22023    >,
22024    pub AEGP_SetInSpecSoundRate:
22025        ::std::option::Option<unsafe extern "C" fn(inH: AEIO_InSpecH, rateF: A_FpLong) -> A_Err>,
22026    pub AEGP_GetInSpecSoundEncoding: ::std::option::Option<
22027        unsafe extern "C" fn(inH: AEIO_InSpecH, encodingP: *mut AEIO_SndEncoding) -> A_Err,
22028    >,
22029    pub AEGP_SetInSpecSoundEncoding: ::std::option::Option<
22030        unsafe extern "C" fn(inH: AEIO_InSpecH, encoding: AEIO_SndEncoding) -> A_Err,
22031    >,
22032    pub AEGP_GetInSpecSoundSampleSize: ::std::option::Option<
22033        unsafe extern "C" fn(
22034            inH: AEIO_InSpecH,
22035            bytes_per_sampleP: *mut AEIO_SndSampleSize,
22036        ) -> A_Err,
22037    >,
22038    pub AEGP_SetInSpecSoundSampleSize: ::std::option::Option<
22039        unsafe extern "C" fn(inH: AEIO_InSpecH, bytes_per_sample: AEIO_SndSampleSize) -> A_Err,
22040    >,
22041    pub AEGP_GetInSpecSoundChannels: ::std::option::Option<
22042        unsafe extern "C" fn(inH: AEIO_InSpecH, num_channelsP: *mut AEIO_SndChannels) -> A_Err,
22043    >,
22044    pub AEGP_SetInSpecSoundChannels: ::std::option::Option<
22045        unsafe extern "C" fn(inH: AEIO_InSpecH, num_channels: AEIO_SndChannels) -> A_Err,
22046    >,
22047    pub AEGP_AddAuxExtMap: ::std::option::Option<
22048        unsafe extern "C" fn(extension: *const A_char, file_type: A_long, creator: A_long) -> A_Err,
22049    >,
22050    pub AEGP_SetInSpecEmbeddedColorProfile: ::std::option::Option<
22051        unsafe extern "C" fn(
22052            inH: AEIO_InSpecH,
22053            color_profileP0: AEGP_ConstColorProfileP,
22054            profile_descP0: *const A_UTF16Char,
22055        ) -> A_Err,
22056    >,
22057    pub AEGP_SetInSpecAssignedColorProfile: ::std::option::Option<
22058        unsafe extern "C" fn(inH: AEIO_InSpecH, color_profileP: AEGP_ConstColorProfileP) -> A_Err,
22059    >,
22060}
22061#[repr(C)]
22062#[derive(Debug, Copy, Clone)]
22063pub struct AEGP_IOOutSuite5 {
22064    pub AEGP_GetOutSpecOptionsHandle: ::std::option::Option<
22065        unsafe extern "C" fn(
22066            outH: AEIO_OutSpecH,
22067            optionsPPV: *mut *mut ::std::os::raw::c_void,
22068        ) -> A_Err,
22069    >,
22070    pub AEGP_SetOutSpecOptionsHandle: ::std::option::Option<
22071        unsafe extern "C" fn(
22072            outH: AEIO_OutSpecH,
22073            optionsPV: *mut ::std::os::raw::c_void,
22074            old_optionsPPVO: *mut *mut ::std::os::raw::c_void,
22075        ) -> A_Err,
22076    >,
22077    pub AEGP_GetOutSpecFilePath: ::std::option::Option<
22078        unsafe extern "C" fn(
22079            outH: AEIO_OutSpecH,
22080            unicode_pathPH: *mut AEGP_MemHandle,
22081            file_reservedPB: *mut A_Boolean,
22082        ) -> A_Err,
22083    >,
22084    pub AEGP_GetOutSpecFPS: ::std::option::Option<
22085        unsafe extern "C" fn(outH: AEIO_OutSpecH, native_fpsP: *mut A_Fixed) -> A_Err,
22086    >,
22087    pub AEGP_SetOutSpecNativeFPS: ::std::option::Option<
22088        unsafe extern "C" fn(outH: AEIO_OutSpecH, native_fpsP: A_Fixed) -> A_Err,
22089    >,
22090    pub AEGP_GetOutSpecDepth: ::std::option::Option<
22091        unsafe extern "C" fn(outH: AEIO_OutSpecH, depthPS: *mut A_short) -> A_Err,
22092    >,
22093    pub AEGP_SetOutSpecDepth:
22094        ::std::option::Option<unsafe extern "C" fn(outH: AEIO_OutSpecH, depthPS: A_short) -> A_Err>,
22095    pub AEGP_GetOutSpecInterlaceLabel: ::std::option::Option<
22096        unsafe extern "C" fn(outH: AEIO_OutSpecH, interlaceP: *mut FIEL_Label) -> A_Err,
22097    >,
22098    pub AEGP_SetOutSpecInterlaceLabel: ::std::option::Option<
22099        unsafe extern "C" fn(outH: AEIO_OutSpecH, interlaceP: *const FIEL_Label) -> A_Err,
22100    >,
22101    pub AEGP_GetOutSpecAlphaLabel: ::std::option::Option<
22102        unsafe extern "C" fn(outH: AEIO_OutSpecH, alphaP: *mut AEIO_AlphaLabel) -> A_Err,
22103    >,
22104    pub AEGP_SetOutSpecAlphaLabel: ::std::option::Option<
22105        unsafe extern "C" fn(outH: AEIO_OutSpecH, alphaP: *const AEIO_AlphaLabel) -> A_Err,
22106    >,
22107    pub AEGP_GetOutSpecDuration: ::std::option::Option<
22108        unsafe extern "C" fn(outH: AEIO_OutSpecH, durationP: *mut A_Time) -> A_Err,
22109    >,
22110    pub AEGP_SetOutSpecDuration: ::std::option::Option<
22111        unsafe extern "C" fn(outH: AEIO_OutSpecH, durationP: *const A_Time) -> A_Err,
22112    >,
22113    pub AEGP_GetOutSpecDimensions: ::std::option::Option<
22114        unsafe extern "C" fn(
22115            outH: AEIO_OutSpecH,
22116            widthPL: *mut A_long,
22117            heightPL: *mut A_long,
22118        ) -> A_Err,
22119    >,
22120    pub AEGP_GetOutSpecHSF: ::std::option::Option<
22121        unsafe extern "C" fn(outH: AEIO_OutSpecH, hsfP: *mut A_Ratio) -> A_Err,
22122    >,
22123    pub AEGP_SetOutSpecHSF: ::std::option::Option<
22124        unsafe extern "C" fn(outH: AEIO_OutSpecH, hsfP: *const A_Ratio) -> A_Err,
22125    >,
22126    pub AEGP_GetOutSpecSoundRate: ::std::option::Option<
22127        unsafe extern "C" fn(outH: AEIO_OutSpecH, ratePF: *mut A_FpLong) -> A_Err,
22128    >,
22129    pub AEGP_SetOutSpecSoundRate:
22130        ::std::option::Option<unsafe extern "C" fn(outH: AEIO_OutSpecH, rateF: A_FpLong) -> A_Err>,
22131    pub AEGP_GetOutSpecSoundEncoding: ::std::option::Option<
22132        unsafe extern "C" fn(outH: AEIO_OutSpecH, encodingP: *mut AEIO_SndEncoding) -> A_Err,
22133    >,
22134    pub AEGP_SetOutSpecSoundEncoding: ::std::option::Option<
22135        unsafe extern "C" fn(outH: AEIO_OutSpecH, encoding: AEIO_SndEncoding) -> A_Err,
22136    >,
22137    pub AEGP_GetOutSpecSoundSampleSize: ::std::option::Option<
22138        unsafe extern "C" fn(
22139            outH: AEIO_OutSpecH,
22140            bytes_per_sampleP: *mut AEIO_SndSampleSize,
22141        ) -> A_Err,
22142    >,
22143    pub AEGP_SetOutSpecSoundSampleSize: ::std::option::Option<
22144        unsafe extern "C" fn(outH: AEIO_OutSpecH, bytes_per_sample: AEIO_SndSampleSize) -> A_Err,
22145    >,
22146    pub AEGP_GetOutSpecSoundChannels: ::std::option::Option<
22147        unsafe extern "C" fn(outH: AEIO_OutSpecH, num_channelsP: *mut AEIO_SndChannels) -> A_Err,
22148    >,
22149    pub AEGP_SetOutSpecSoundChannels: ::std::option::Option<
22150        unsafe extern "C" fn(outH: AEIO_OutSpecH, num_channels: AEIO_SndChannels) -> A_Err,
22151    >,
22152    pub AEGP_GetOutSpecIsStill: ::std::option::Option<
22153        unsafe extern "C" fn(outH: AEIO_OutSpecH, is_stillPB: *mut A_Boolean) -> A_Err,
22154    >,
22155    pub AEGP_GetOutSpecPosterTime: ::std::option::Option<
22156        unsafe extern "C" fn(outH: AEIO_OutSpecH, poster_timeP: *mut A_Time) -> A_Err,
22157    >,
22158    pub AEGP_GetOutSpecStartFrame: ::std::option::Option<
22159        unsafe extern "C" fn(outH: AEIO_OutSpecH, start_frameP: *mut A_long) -> A_Err,
22160    >,
22161    pub AEGP_GetOutSpecPullDown: ::std::option::Option<
22162        unsafe extern "C" fn(outH: AEIO_OutSpecH, pulldownP: *mut AEIO_Pulldown) -> A_Err,
22163    >,
22164    pub AEGP_GetOutSpecIsMissing: ::std::option::Option<
22165        unsafe extern "C" fn(outH: AEIO_OutSpecH, missingPB: *mut A_Boolean) -> A_Err,
22166    >,
22167    pub AEGP_GetOutSpecShouldEmbedICCProfile: ::std::option::Option<
22168        unsafe extern "C" fn(outH: AEIO_OutSpecH, embedPB: *mut A_Boolean) -> A_Err,
22169    >,
22170    pub AEGP_GetNewOutSpecColorProfile: ::std::option::Option<
22171        unsafe extern "C" fn(
22172            aegp_plugin_id: AEGP_PluginID,
22173            outH: AEIO_OutSpecH,
22174            color_profilePP: *mut AEGP_ColorProfileP,
22175        ) -> A_Err,
22176    >,
22177    pub AEGP_GetOutSpecOutputModule: ::std::option::Option<
22178        unsafe extern "C" fn(
22179            outH: AEIO_OutSpecH,
22180            rq_itemP: *mut AEGP_RQItemRefH,
22181            om_refP: *mut AEGP_OutputModuleRefH,
22182        ) -> A_Err,
22183    >,
22184    pub AEGP_GetOutSpecStartTime: ::std::option::Option<
22185        unsafe extern "C" fn(outH: AEIO_OutSpecH, outStartTimePT: *mut A_Time) -> A_Err,
22186    >,
22187    pub AEGP_GetOutSpecFrameTime: ::std::option::Option<
22188        unsafe extern "C" fn(outH: AEIO_OutSpecH, outFrameTimePT: *mut A_Time) -> A_Err,
22189    >,
22190    pub AEGP_GetOutSpecIsDropFrame: ::std::option::Option<
22191        unsafe extern "C" fn(outH: AEIO_OutSpecH, outIsDropFramePB: *mut A_Boolean) -> A_Err,
22192    >,
22193}
22194#[repr(C)]
22195#[derive(Debug, Copy, Clone)]
22196pub struct AEGP_IOOutSuite4 {
22197    pub AEGP_GetOutSpecOptionsHandle: ::std::option::Option<
22198        unsafe extern "C" fn(
22199            outH: AEIO_OutSpecH,
22200            optionsPPV: *mut *mut ::std::os::raw::c_void,
22201        ) -> A_Err,
22202    >,
22203    pub AEGP_SetOutSpecOptionsHandle: ::std::option::Option<
22204        unsafe extern "C" fn(
22205            outH: AEIO_OutSpecH,
22206            optionsPV: *mut ::std::os::raw::c_void,
22207            old_optionsPPVO: *mut *mut ::std::os::raw::c_void,
22208        ) -> A_Err,
22209    >,
22210    pub AEGP_GetOutSpecFilePath: ::std::option::Option<
22211        unsafe extern "C" fn(
22212            outH: AEIO_OutSpecH,
22213            unicode_pathPH: *mut AEGP_MemHandle,
22214            file_reservedPB: *mut A_Boolean,
22215        ) -> A_Err,
22216    >,
22217    pub AEGP_GetOutSpecFPS: ::std::option::Option<
22218        unsafe extern "C" fn(outH: AEIO_OutSpecH, native_fpsP: *mut A_Fixed) -> A_Err,
22219    >,
22220    pub AEGP_SetOutSpecNativeFPS: ::std::option::Option<
22221        unsafe extern "C" fn(outH: AEIO_OutSpecH, native_fpsP: A_Fixed) -> A_Err,
22222    >,
22223    pub AEGP_GetOutSpecDepth: ::std::option::Option<
22224        unsafe extern "C" fn(outH: AEIO_OutSpecH, depthPS: *mut A_short) -> A_Err,
22225    >,
22226    pub AEGP_SetOutSpecDepth:
22227        ::std::option::Option<unsafe extern "C" fn(outH: AEIO_OutSpecH, depthPS: A_short) -> A_Err>,
22228    pub AEGP_GetOutSpecInterlaceLabel: ::std::option::Option<
22229        unsafe extern "C" fn(outH: AEIO_OutSpecH, interlaceP: *mut FIEL_Label) -> A_Err,
22230    >,
22231    pub AEGP_SetOutSpecInterlaceLabel: ::std::option::Option<
22232        unsafe extern "C" fn(outH: AEIO_OutSpecH, interlaceP: *const FIEL_Label) -> A_Err,
22233    >,
22234    pub AEGP_GetOutSpecAlphaLabel: ::std::option::Option<
22235        unsafe extern "C" fn(outH: AEIO_OutSpecH, alphaP: *mut AEIO_AlphaLabel) -> A_Err,
22236    >,
22237    pub AEGP_SetOutSpecAlphaLabel: ::std::option::Option<
22238        unsafe extern "C" fn(outH: AEIO_OutSpecH, alphaP: *const AEIO_AlphaLabel) -> A_Err,
22239    >,
22240    pub AEGP_GetOutSpecDuration: ::std::option::Option<
22241        unsafe extern "C" fn(outH: AEIO_OutSpecH, durationP: *mut A_Time) -> A_Err,
22242    >,
22243    pub AEGP_SetOutSpecDuration: ::std::option::Option<
22244        unsafe extern "C" fn(outH: AEIO_OutSpecH, durationP: *const A_Time) -> A_Err,
22245    >,
22246    pub AEGP_GetOutSpecDimensions: ::std::option::Option<
22247        unsafe extern "C" fn(
22248            outH: AEIO_OutSpecH,
22249            widthPL: *mut A_long,
22250            heightPL: *mut A_long,
22251        ) -> A_Err,
22252    >,
22253    pub AEGP_GetOutSpecHSF: ::std::option::Option<
22254        unsafe extern "C" fn(outH: AEIO_OutSpecH, hsfP: *mut A_Ratio) -> A_Err,
22255    >,
22256    pub AEGP_SetOutSpecHSF: ::std::option::Option<
22257        unsafe extern "C" fn(outH: AEIO_OutSpecH, hsfP: *const A_Ratio) -> A_Err,
22258    >,
22259    pub AEGP_GetOutSpecSoundRate: ::std::option::Option<
22260        unsafe extern "C" fn(outH: AEIO_OutSpecH, ratePF: *mut A_FpLong) -> A_Err,
22261    >,
22262    pub AEGP_SetOutSpecSoundRate:
22263        ::std::option::Option<unsafe extern "C" fn(outH: AEIO_OutSpecH, rateF: A_FpLong) -> A_Err>,
22264    pub AEGP_GetOutSpecSoundEncoding: ::std::option::Option<
22265        unsafe extern "C" fn(outH: AEIO_OutSpecH, encodingP: *mut AEIO_SndEncoding) -> A_Err,
22266    >,
22267    pub AEGP_SetOutSpecSoundEncoding: ::std::option::Option<
22268        unsafe extern "C" fn(outH: AEIO_OutSpecH, encoding: AEIO_SndEncoding) -> A_Err,
22269    >,
22270    pub AEGP_GetOutSpecSoundSampleSize: ::std::option::Option<
22271        unsafe extern "C" fn(
22272            outH: AEIO_OutSpecH,
22273            bytes_per_sampleP: *mut AEIO_SndSampleSize,
22274        ) -> A_Err,
22275    >,
22276    pub AEGP_SetOutSpecSoundSampleSize: ::std::option::Option<
22277        unsafe extern "C" fn(outH: AEIO_OutSpecH, bytes_per_sample: AEIO_SndSampleSize) -> A_Err,
22278    >,
22279    pub AEGP_GetOutSpecSoundChannels: ::std::option::Option<
22280        unsafe extern "C" fn(outH: AEIO_OutSpecH, num_channelsP: *mut AEIO_SndChannels) -> A_Err,
22281    >,
22282    pub AEGP_SetOutSpecSoundChannels: ::std::option::Option<
22283        unsafe extern "C" fn(outH: AEIO_OutSpecH, num_channels: AEIO_SndChannels) -> A_Err,
22284    >,
22285    pub AEGP_GetOutSpecIsStill: ::std::option::Option<
22286        unsafe extern "C" fn(outH: AEIO_OutSpecH, is_stillPB: *mut A_Boolean) -> A_Err,
22287    >,
22288    pub AEGP_GetOutSpecPosterTime: ::std::option::Option<
22289        unsafe extern "C" fn(outH: AEIO_OutSpecH, poster_timeP: *mut A_Time) -> A_Err,
22290    >,
22291    pub AEGP_GetOutSpecStartFrame: ::std::option::Option<
22292        unsafe extern "C" fn(outH: AEIO_OutSpecH, start_frameP: *mut A_long) -> A_Err,
22293    >,
22294    pub AEGP_GetOutSpecPullDown: ::std::option::Option<
22295        unsafe extern "C" fn(outH: AEIO_OutSpecH, pulldownP: *mut AEIO_Pulldown) -> A_Err,
22296    >,
22297    pub AEGP_GetOutSpecIsMissing: ::std::option::Option<
22298        unsafe extern "C" fn(outH: AEIO_OutSpecH, missingPB: *mut A_Boolean) -> A_Err,
22299    >,
22300    pub AEGP_GetOutSpecShouldEmbedICCProfile: ::std::option::Option<
22301        unsafe extern "C" fn(outH: AEIO_OutSpecH, embedPB: *mut A_Boolean) -> A_Err,
22302    >,
22303    pub AEGP_GetNewOutSpecColorProfile: ::std::option::Option<
22304        unsafe extern "C" fn(
22305            aegp_plugin_id: AEGP_PluginID,
22306            outH: AEIO_OutSpecH,
22307            color_profilePP: *mut AEGP_ColorProfileP,
22308        ) -> A_Err,
22309    >,
22310    pub AEGP_GetOutSpecOutputModule: ::std::option::Option<
22311        unsafe extern "C" fn(
22312            outH: AEIO_OutSpecH,
22313            rq_itemP: *mut AEGP_RQItemRefH,
22314            om_refP: *mut AEGP_OutputModuleRefH,
22315        ) -> A_Err,
22316    >,
22317}
22318#[repr(C)]
22319#[derive(Debug, Copy, Clone)]
22320pub struct AEGP_FIMSuite3 {
22321    pub AEGP_RegisterImportFlavor: ::std::option::Option<
22322        unsafe extern "C" fn(nameZ: *const A_char, imp_refP: *mut AE_FIM_ImportFlavorRef) -> A_Err,
22323    >,
22324    pub AEGP_RegisterImportFlavorFileTypes: ::std::option::Option<
22325        unsafe extern "C" fn(
22326            imp_ref: AE_FIM_ImportFlavorRef,
22327            num_filekindsL: A_long,
22328            kindsAP: *const AEIO_FileKind,
22329            num_fileextsL: A_long,
22330            extsAP: *const AEIO_FileKind,
22331        ) -> A_Err,
22332    >,
22333    pub AEGP_RegisterImportFlavorImportCallbacks: ::std::option::Option<
22334        unsafe extern "C" fn(
22335            imp_ref: AE_FIM_ImportFlavorRef,
22336            single_flag: AE_FIM_ImportFlags,
22337            imp_cbsP: *const AE_FIM_ImportCallbacks,
22338        ) -> A_Err,
22339    >,
22340    pub AEGP_SetImportedItem: ::std::option::Option<
22341        unsafe extern "C" fn(
22342            imp_options: AE_FIM_ImportOptions,
22343            imported_itemH: AEGP_ItemH,
22344        ) -> A_Err,
22345    >,
22346}
22347#[repr(C)]
22348#[derive(Debug, Copy, Clone)]
22349pub struct PF_PluginData {
22350    _unused: [u8; 0],
22351}
22352pub type PF_PluginDataPtr = *mut PF_PluginData;
22353pub type PF_PluginDataCB2 = ::std::option::Option<
22354    unsafe extern "C" fn(
22355        inPtr: PF_PluginDataPtr,
22356        inNamePtr: *const A_u_char,
22357        inMatchNamePtr: *const A_u_char,
22358        inCategoryPtr: *const A_u_char,
22359        inEntryPointNamePtr: *const A_u_char,
22360        inkind: A_long,
22361        inApiVersionMajor: A_long,
22362        inApiVersionMinor: A_long,
22363        inReservedInfo: A_long,
22364        inSupportURLPtr: *const A_u_char,
22365    ) -> A_Err,
22366>;
22367pub type PF_PluginDataCB = ::std::option::Option<
22368    unsafe extern "C" fn(
22369        inPtr: PF_PluginDataPtr,
22370        inNamePtr: *const A_u_char,
22371        inMatchNamePtr: *const A_u_char,
22372        inCategoryPtr: *const A_u_char,
22373        inEntryPointNamePtr: *const A_u_char,
22374        inkind: A_long,
22375        inApiVersionMajor: A_long,
22376        inApiVersionMinor: A_long,
22377        inReservedInfo: A_long,
22378    ) -> A_Err,
22379>;
22380#[doc = " MC Compute -- plugin registration of cached computations"]
22381pub type AEGP_CCComputeClassIdP = *const ::std::os::raw::c_char;
22382pub type AEGP_CCComputeOptionsRefconP = *mut ::std::os::raw::c_void;
22383pub type AEGP_CCComputeValueRefconP = *mut ::std::os::raw::c_void;
22384#[repr(C)]
22385#[derive(Debug, Copy, Clone)]
22386pub struct AEGP_GUID {
22387    pub bytes: [A_long; 4usize],
22388}
22389pub type AEGP_CCComputeKey = AEGP_GUID;
22390pub type AEGP_CCComputeKeyP = *mut AEGP_CCComputeKey;
22391pub type AEGP_CCCheckoutReceiptP = *mut ::std::os::raw::c_void;
22392#[repr(C)]
22393#[derive(Debug, Copy, Clone)]
22394pub struct AEGP_ComputeCacheCallbacks {
22395    pub generate_key: ::std::option::Option<
22396        unsafe extern "C" fn(
22397            optionsP: AEGP_CCComputeOptionsRefconP,
22398            out_keyP: AEGP_CCComputeKeyP,
22399        ) -> A_Err,
22400    >,
22401    pub compute: ::std::option::Option<
22402        unsafe extern "C" fn(
22403            optionsP: AEGP_CCComputeOptionsRefconP,
22404            out_valuePP: *mut AEGP_CCComputeValueRefconP,
22405        ) -> A_Err,
22406    >,
22407    pub approx_size_value:
22408        ::std::option::Option<unsafe extern "C" fn(valueP: AEGP_CCComputeValueRefconP) -> usize>,
22409    pub delete_compute_value:
22410        ::std::option::Option<unsafe extern "C" fn(valueP: AEGP_CCComputeValueRefconP)>,
22411}
22412#[repr(C)]
22413#[derive(Debug, Copy, Clone)]
22414pub struct AEGP_ComputeCacheSuite1 {
22415    pub AEGP_ClassRegister: ::std::option::Option<
22416        unsafe extern "C" fn(
22417            compute_classP: AEGP_CCComputeClassIdP,
22418            callbacksP: *const AEGP_ComputeCacheCallbacks,
22419        ) -> A_Err,
22420    >,
22421    pub AEGP_ClassUnregister: ::std::option::Option<
22422        unsafe extern "C" fn(compute_classP: AEGP_CCComputeClassIdP) -> A_Err,
22423    >,
22424    pub AEGP_ComputeIfNeededAndCheckout: ::std::option::Option<
22425        unsafe extern "C" fn(
22426            compute_classP: AEGP_CCComputeClassIdP,
22427            opaque_optionsP: AEGP_CCComputeOptionsRefconP,
22428            wait_for_other_threadB: bool,
22429            compute_receiptPP: *mut AEGP_CCCheckoutReceiptP,
22430        ) -> A_Err,
22431    >,
22432    pub AEGP_CheckoutCached: ::std::option::Option<
22433        unsafe extern "C" fn(
22434            compute_classP: AEGP_CCComputeClassIdP,
22435            opaque_optionsP: AEGP_CCComputeOptionsRefconP,
22436            compute_receiptPP: *mut AEGP_CCCheckoutReceiptP,
22437        ) -> A_Err,
22438    >,
22439    pub AEGP_GetReceiptComputeValue: ::std::option::Option<
22440        unsafe extern "C" fn(
22441            compute_receiptP: AEGP_CCCheckoutReceiptP,
22442            compute_valuePP: *mut AEGP_CCComputeValueRefconP,
22443        ) -> A_Err,
22444    >,
22445    pub AEGP_CheckinComputeReceipt: ::std::option::Option<
22446        unsafe extern "C" fn(compute_receiptP: AEGP_CCCheckoutReceiptP) -> A_Err,
22447    >,
22448}
22449#[repr(C)]
22450#[derive(Debug, Copy, Clone)]
22451pub struct AEGP_HashSuite1 {
22452    pub AEGP_CreateHashFromPtr: ::std::option::Option<
22453        unsafe extern "C" fn(
22454            buf_sizeLu: A_u_longlong,
22455            bufPV: *const ::std::os::raw::c_void,
22456            hashP: *mut AEGP_GUID,
22457        ) -> A_Err,
22458    >,
22459    pub AEGP_HashMixInPtr: ::std::option::Option<
22460        unsafe extern "C" fn(
22461            buf_sizeLu: A_u_longlong,
22462            bufPV: *const ::std::os::raw::c_void,
22463            hashP: *mut AEGP_GUID,
22464        ) -> A_Err,
22465    >,
22466}
22467#[doc = "\tCurrently supported types"]
22468pub const PrPixelFormat_PrPixelFormat_BGRA_4444_8u: PrPixelFormat = 1634887522;
22469#[doc = "\tCurrently supported types"]
22470pub const PrPixelFormat_PrPixelFormat_VUYA_4444_8u: PrPixelFormat = 1635349878;
22471#[doc = "\tCurrently supported types"]
22472pub const PrPixelFormat_PrPixelFormat_VUYA_4444_8u_709: PrPixelFormat = 1096373590;
22473#[doc = "\tCurrently supported types"]
22474pub const PrPixelFormat_PrPixelFormat_ARGB_4444_8u: PrPixelFormat = 1650946657;
22475#[doc = "\tCurrently supported types"]
22476pub const PrPixelFormat_PrPixelFormat_BGRX_4444_8u: PrPixelFormat = 2020763490;
22477#[doc = "\tCurrently supported types"]
22478pub const PrPixelFormat_PrPixelFormat_VUYX_4444_8u: PrPixelFormat = 2021225846;
22479#[doc = "\tCurrently supported types"]
22480pub const PrPixelFormat_PrPixelFormat_VUYX_4444_8u_709: PrPixelFormat = 930641270;
22481#[doc = "\tCurrently supported types"]
22482pub const PrPixelFormat_PrPixelFormat_XRGB_4444_8u: PrPixelFormat = 1650946680;
22483#[doc = "\tCurrently supported types"]
22484pub const PrPixelFormat_PrPixelFormat_BGRP_4444_8u: PrPixelFormat = 1886545762;
22485#[doc = "\tCurrently supported types"]
22486pub const PrPixelFormat_PrPixelFormat_VUYP_4444_8u: PrPixelFormat = 1887008118;
22487#[doc = "\tCurrently supported types"]
22488pub const PrPixelFormat_PrPixelFormat_VUYP_4444_8u_709: PrPixelFormat = 930116982;
22489#[doc = "\tCurrently supported types"]
22490pub const PrPixelFormat_PrPixelFormat_PRGB_4444_8u: PrPixelFormat = 1650946672;
22491#[doc = "\tCurrently supported types"]
22492pub const PrPixelFormat_PrPixelFormat_BGRA_4444_16u: PrPixelFormat = 1634887490;
22493#[doc = "\tCurrently supported types"]
22494pub const PrPixelFormat_PrPixelFormat_VUYA_4444_16u: PrPixelFormat = 1635349846;
22495#[doc = "\tCurrently supported types"]
22496pub const PrPixelFormat_PrPixelFormat_ARGB_4444_16u: PrPixelFormat = 1650946625;
22497#[doc = "\tCurrently supported types"]
22498pub const PrPixelFormat_PrPixelFormat_BGRX_4444_16u: PrPixelFormat = 2020763458;
22499#[doc = "\tCurrently supported types"]
22500pub const PrPixelFormat_PrPixelFormat_XRGB_4444_16u: PrPixelFormat = 1650946648;
22501#[doc = "\tCurrently supported types"]
22502pub const PrPixelFormat_PrPixelFormat_BGRP_4444_16u: PrPixelFormat = 1886545730;
22503#[doc = "\tCurrently supported types"]
22504pub const PrPixelFormat_PrPixelFormat_PRGB_4444_16u: PrPixelFormat = 1650946640;
22505#[doc = "\tCurrently supported types"]
22506pub const PrPixelFormat_PrPixelFormat_BGRA_4444_32f: PrPixelFormat = 1634879298;
22507#[doc = "\tCurrently supported types"]
22508pub const PrPixelFormat_PrPixelFormat_VUYA_4444_32f: PrPixelFormat = 1635341654;
22509#[doc = "\tCurrently supported types"]
22510pub const PrPixelFormat_PrPixelFormat_VUYA_4444_32f_709: PrPixelFormat = 1633244534;
22511#[doc = "\tCurrently supported types"]
22512pub const PrPixelFormat_PrPixelFormat_ARGB_4444_32f: PrPixelFormat = 1650938433;
22513#[doc = "\tCurrently supported types"]
22514pub const PrPixelFormat_PrPixelFormat_BGRX_4444_32f: PrPixelFormat = 2020755266;
22515#[doc = "\tCurrently supported types"]
22516pub const PrPixelFormat_PrPixelFormat_VUYX_4444_32f: PrPixelFormat = 2021217622;
22517#[doc = "\tCurrently supported types"]
22518pub const PrPixelFormat_PrPixelFormat_VUYX_4444_32f_709: PrPixelFormat = 930633046;
22519#[doc = "\tCurrently supported types"]
22520pub const PrPixelFormat_PrPixelFormat_XRGB_4444_32f: PrPixelFormat = 1650938456;
22521#[doc = "\tCurrently supported types"]
22522pub const PrPixelFormat_PrPixelFormat_BGRP_4444_32f: PrPixelFormat = 1886537538;
22523#[doc = "\tCurrently supported types"]
22524pub const PrPixelFormat_PrPixelFormat_VUYP_4444_32f: PrPixelFormat = 1886999894;
22525#[doc = "\tCurrently supported types"]
22526pub const PrPixelFormat_PrPixelFormat_VUYP_4444_32f_709: PrPixelFormat = 930108758;
22527#[doc = "\tCurrently supported types"]
22528pub const PrPixelFormat_PrPixelFormat_PRGB_4444_32f: PrPixelFormat = 1650938448;
22529#[doc = "\tCurrently supported types"]
22530pub const PrPixelFormat_PrPixelFormat_RGB_444_10u: PrPixelFormat = 826427218;
22531#[doc = "\tCurrently supported types"]
22532pub const PrPixelFormat_PrPixelFormat_YUYV_422_8u_601: PrPixelFormat = 846820729;
22533#[doc = "\tCurrently supported types"]
22534pub const PrPixelFormat_PrPixelFormat_YUYV_422_8u_709: PrPixelFormat = 863597945;
22535#[doc = "\tCurrently supported types"]
22536pub const PrPixelFormat_PrPixelFormat_UYVY_422_8u_601: PrPixelFormat = 2037807477;
22537#[doc = "\tCurrently supported types"]
22538pub const PrPixelFormat_PrPixelFormat_UYVY_422_8u_709: PrPixelFormat = 930511221;
22539#[doc = "\tCurrently supported types"]
22540pub const PrPixelFormat_PrPixelFormat_V210_422_10u_601: PrPixelFormat = 808530550;
22541#[doc = "\tCurrently supported types"]
22542pub const PrPixelFormat_PrPixelFormat_V210_422_10u_709: PrPixelFormat = 825307766;
22543#[doc = "\tCurrently supported types"]
22544pub const PrPixelFormat_PrPixelFormat_UYVY_422_32f_601: PrPixelFormat = 2037799253;
22545#[doc = "\tCurrently supported types"]
22546pub const PrPixelFormat_PrPixelFormat_UYVY_422_32f_709: PrPixelFormat = 930502997;
22547#[doc = "\tCurrently supported types"]
22548pub const PrPixelFormat_PrPixelFormat_BGRA_4444_32f_Linear: PrPixelFormat = 1281443650;
22549#[doc = "\tCurrently supported types"]
22550pub const PrPixelFormat_PrPixelFormat_BGRP_4444_32f_Linear: PrPixelFormat = 1282426690;
22551#[doc = "\tCurrently supported types"]
22552pub const PrPixelFormat_PrPixelFormat_BGRX_4444_32f_Linear: PrPixelFormat = 1282950978;
22553#[doc = "\tCurrently supported types"]
22554pub const PrPixelFormat_PrPixelFormat_ARGB_4444_32f_Linear: PrPixelFormat = 1281839681;
22555#[doc = "\tCurrently supported types"]
22556pub const PrPixelFormat_PrPixelFormat_PRGB_4444_32f_Linear: PrPixelFormat = 1281839696;
22557#[doc = "\tCurrently supported types"]
22558pub const PrPixelFormat_PrPixelFormat_XRGB_4444_32f_Linear: PrPixelFormat = 1281839704;
22559#[doc = "\tCurrently supported types"]
22560pub const PrPixelFormat_PrPixelFormat_RGB_444_12u_PQ_709: PrPixelFormat = 928075840;
22561pub const PrPixelFormat_PrPixelFormat_RGB_444_12u_PQ_P3: PrPixelFormat = 1347506240;
22562pub const PrPixelFormat_PrPixelFormat_RGB_444_12u_PQ_2020: PrPixelFormat = 844189760;
22563pub const PrPixelFormat_PrPixelFormat_YUV_420_MPEG2_FRAME_PICTURE_PLANAR_8u_601: PrPixelFormat =
22564    842102393;
22565pub const PrPixelFormat_PrPixelFormat_YUV_420_MPEG2_FIELD_PICTURE_PLANAR_8u_601: PrPixelFormat =
22566    845772409;
22567pub const PrPixelFormat_PrPixelFormat_YUV_420_MPEG2_FRAME_PICTURE_PLANAR_8u_601_FullRange:
22568    PrPixelFormat = 1714517625;
22569pub const PrPixelFormat_PrPixelFormat_YUV_420_MPEG2_FIELD_PICTURE_PLANAR_8u_601_FullRange:
22570    PrPixelFormat = 1718187641;
22571pub const PrPixelFormat_PrPixelFormat_YUV_420_MPEG2_FRAME_PICTURE_PLANAR_8u_709: PrPixelFormat =
22572    925988473;
22573pub const PrPixelFormat_PrPixelFormat_YUV_420_MPEG2_FIELD_PICTURE_PLANAR_8u_709: PrPixelFormat =
22574    929658489;
22575pub const PrPixelFormat_PrPixelFormat_YUV_420_MPEG2_FRAME_PICTURE_PLANAR_8u_709_FullRange:
22576    PrPixelFormat = 1177646713;
22577pub const PrPixelFormat_PrPixelFormat_YUV_420_MPEG2_FIELD_PICTURE_PLANAR_8u_709_FullRange:
22578    PrPixelFormat = 1181316729;
22579pub const PrPixelFormat_PrPixelFormat_YUV_420_MPEG4_FRAME_PICTURE_PLANAR_8u_601: PrPixelFormat =
22580    842102361;
22581pub const PrPixelFormat_PrPixelFormat_YUV_420_MPEG4_FIELD_PICTURE_PLANAR_8u_601: PrPixelFormat =
22582    845772377;
22583pub const PrPixelFormat_PrPixelFormat_YUV_420_MPEG4_FRAME_PICTURE_PLANAR_8u_601_FullRange:
22584    PrPixelFormat = 1714517593;
22585pub const PrPixelFormat_PrPixelFormat_YUV_420_MPEG4_FIELD_PICTURE_PLANAR_8u_601_FullRange:
22586    PrPixelFormat = 1718187609;
22587pub const PrPixelFormat_PrPixelFormat_YUV_420_MPEG4_FRAME_PICTURE_PLANAR_8u_709: PrPixelFormat =
22588    925988441;
22589pub const PrPixelFormat_PrPixelFormat_YUV_420_MPEG4_FIELD_PICTURE_PLANAR_8u_709: PrPixelFormat =
22590    929658457;
22591pub const PrPixelFormat_PrPixelFormat_YUV_420_MPEG4_FRAME_PICTURE_PLANAR_8u_709_FullRange:
22592    PrPixelFormat = 1177646681;
22593pub const PrPixelFormat_PrPixelFormat_YUV_420_MPEG4_FIELD_PICTURE_PLANAR_8u_709_FullRange:
22594    PrPixelFormat = 1181316697;
22595pub const PrPixelFormat_PrPixelFormat_NTSCDV25: PrPixelFormat = 846100068;
22596pub const PrPixelFormat_PrPixelFormat_PALDV25: PrPixelFormat = 846231140;
22597pub const PrPixelFormat_PrPixelFormat_NTSCDV50: PrPixelFormat = 896431716;
22598pub const PrPixelFormat_PrPixelFormat_PALDV50: PrPixelFormat = 896562788;
22599pub const PrPixelFormat_PrPixelFormat_NTSCDV100_720p: PrPixelFormat = 929986148;
22600pub const PrPixelFormat_PrPixelFormat_PALDV100_720p: PrPixelFormat = 930117220;
22601pub const PrPixelFormat_PrPixelFormat_NTSCDV100_1080i: PrPixelFormat = 829322852;
22602pub const PrPixelFormat_PrPixelFormat_PALDV100_1080i: PrPixelFormat = 829453924;
22603pub const PrPixelFormat_PrPixelFormat_Raw: PrPixelFormat = 2004312434;
22604pub const PrPixelFormat_PrPixelFormat_Invalid: PrPixelFormat = 1717854562;
22605pub const PrPixelFormat_PrPixelFormat_Any: PrPixelFormat = 0;
22606#[doc = "\tPremiere supported pixel formats for RenderFrame and PPixs"]
22607pub type PrPixelFormat = ::std::os::raw::c_uint;
22608pub type csSDK_uint32 = ::std::os::raw::c_uint;
22609pub type csSDK_int32 = ::std::os::raw::c_int;
22610pub type csSDK_int64 = i64;
22611pub type prInt64 = csSDK_int64;
22612pub type prFieldType = csSDK_int32;
22613pub type PrTimelineID = csSDK_int32;
22614pub type PrClipID = csSDK_int32;
22615pub type PrTime = prInt64;
22616#[repr(C)]
22617#[derive(Debug, Copy, Clone)]
22618pub struct PrSDKString {
22619    pub opaque: [csSDK_int64; 2usize],
22620}
22621pub const PF_TimeDisplay_24: _bindgen_ty_180 = 1;
22622pub const PF_TimeDisplay_25: _bindgen_ty_180 = 2;
22623pub const PF_TimeDisplay_30Drop: _bindgen_ty_180 = 3;
22624pub const PF_TimeDisplay_30NonDrop: _bindgen_ty_180 = 4;
22625pub const PF_TimeDisplay_50: _bindgen_ty_180 = 5;
22626pub const PF_TimeDisplay_60Drop: _bindgen_ty_180 = 6;
22627pub const PF_TimeDisplay_60NonDrop: _bindgen_ty_180 = 7;
22628pub const PF_TimeDisplay_NonStandard: _bindgen_ty_180 = 8;
22629pub const PF_TimeDisplay_Invalid: _bindgen_ty_180 = 9;
22630pub type _bindgen_ty_180 = ::std::os::raw::c_uint;
22631pub type PF_TimeDisplay = csSDK_uint32;
22632#[repr(C)]
22633#[derive(Debug, Copy, Clone)]
22634pub struct PF_PixelFormatSuite {
22635    pub AddSupportedPixelFormat: ::std::option::Option<
22636        unsafe extern "C" fn(effect_ref: PF_ProgPtr, pixelFormat: PrPixelFormat) -> PF_Err,
22637    >,
22638    pub ClearSupportedPixelFormats:
22639        ::std::option::Option<unsafe extern "C" fn(effect_ref: PF_ProgPtr) -> PF_Err>,
22640    pub NewWorldOfPixelFormat: ::std::option::Option<
22641        unsafe extern "C" fn(
22642            effect_ref: PF_ProgPtr,
22643            width: A_u_long,
22644            height: A_u_long,
22645            flags: PF_NewWorldFlags,
22646            pixelFormat: PrPixelFormat,
22647            world: *mut PF_EffectWorld,
22648        ) -> PF_Err,
22649    >,
22650    pub DisposeWorld: ::std::option::Option<
22651        unsafe extern "C" fn(effect_ref: PF_ProgPtr, world: *mut PF_EffectWorld) -> PF_Err,
22652    >,
22653    pub GetPixelFormat: ::std::option::Option<
22654        unsafe extern "C" fn(
22655            inWorld: *mut PF_EffectWorld,
22656            pixelFormat: *mut PrPixelFormat,
22657        ) -> PF_Err,
22658    >,
22659    pub GetBlackForPixelFormat: ::std::option::Option<
22660        unsafe extern "C" fn(
22661            pixelFormat: PrPixelFormat,
22662            pixelData: *mut ::std::os::raw::c_void,
22663        ) -> PF_Err,
22664    >,
22665    pub GetWhiteForPixelFormat: ::std::option::Option<
22666        unsafe extern "C" fn(
22667            pixelFormat: PrPixelFormat,
22668            pixelData: *mut ::std::os::raw::c_void,
22669        ) -> PF_Err,
22670    >,
22671    pub ConvertColorToPixelFormattedData: ::std::option::Option<
22672        unsafe extern "C" fn(
22673            pixelFormat: PrPixelFormat,
22674            alpha: f32,
22675            red: f32,
22676            green: f32,
22677            blue: f32,
22678            pixelData: *mut ::std::os::raw::c_void,
22679        ) -> PF_Err,
22680    >,
22681}
22682pub type PF_PixelFormatSuite1 = PF_PixelFormatSuite;
22683#[repr(C)]
22684#[derive(Debug, Copy, Clone)]
22685pub struct PF_BackgroundFrameSuite {
22686    pub AddSupportedBackgroundTransferMode: ::std::option::Option<
22687        unsafe extern "C" fn(
22688            inEffectRef: PF_ProgPtr,
22689            supportedTransferMode: PF_TransferMode,
22690            supportedPixelFormat: PrPixelFormat,
22691        ) -> PF_Err,
22692    >,
22693    pub GetBackgroundFrame: ::std::option::Option<
22694        unsafe extern "C" fn(
22695            inEffectRef: PF_ProgPtr,
22696            backgroundFrame: *mut *mut PF_LayerDef,
22697            backgroundTransferMode: *mut PF_TransferMode,
22698        ) -> PF_Err,
22699    >,
22700}
22701pub type PF_BackgroundFrameSuite1 = PF_BackgroundFrameSuite;
22702#[repr(C)]
22703#[derive(Debug, Copy, Clone)]
22704pub struct PF_UtilitySuite4 {
22705    pub GetFilterInstanceID: ::std::option::Option<
22706        unsafe extern "C" fn(effect_ref: PF_ProgPtr, outFilterInstanceID: *mut A_long) -> PF_Err,
22707    >,
22708    pub GetMediaTimecode: ::std::option::Option<
22709        unsafe extern "C" fn(
22710            effect_ref: PF_ProgPtr,
22711            outCurrentFrame: *mut A_long,
22712            outTimeDisplay: *mut PF_TimeDisplay,
22713        ) -> PF_Err,
22714    >,
22715    pub GetClipSpeed: ::std::option::Option<
22716        unsafe extern "C" fn(effect_ref: PF_ProgPtr, speed: *mut f64) -> PF_Err,
22717    >,
22718    pub GetClipDuration: ::std::option::Option<
22719        unsafe extern "C" fn(effect_ref: PF_ProgPtr, frameDuration: *mut A_long) -> PF_Err,
22720    >,
22721    pub GetClipStart: ::std::option::Option<
22722        unsafe extern "C" fn(effect_ref: PF_ProgPtr, frameDuration: *mut A_long) -> PF_Err,
22723    >,
22724    pub GetUnscaledClipDuration: ::std::option::Option<
22725        unsafe extern "C" fn(effect_ref: PF_ProgPtr, frameDuration: *mut A_long) -> PF_Err,
22726    >,
22727    pub GetUnscaledClipStart: ::std::option::Option<
22728        unsafe extern "C" fn(effect_ref: PF_ProgPtr, frameDuration: *mut A_long) -> PF_Err,
22729    >,
22730    pub GetTrackItemStart: ::std::option::Option<
22731        unsafe extern "C" fn(effect_ref: PF_ProgPtr, frameDuration: *mut A_long) -> PF_Err,
22732    >,
22733    pub GetMediaFieldType: ::std::option::Option<
22734        unsafe extern "C" fn(effect_ref: PF_ProgPtr, outFieldType: *mut prFieldType) -> PF_Err,
22735    >,
22736    pub GetMediaFrameRate: ::std::option::Option<
22737        unsafe extern "C" fn(effect_ref: PF_ProgPtr, outTicksPerFrame: *mut PrTime) -> PF_Err,
22738    >,
22739    pub GetContainingTimelineID: ::std::option::Option<
22740        unsafe extern "C" fn(effect_ref: PF_ProgPtr, outTimelineID: *mut PrTimelineID) -> PF_Err,
22741    >,
22742    pub GetClipName: ::std::option::Option<
22743        unsafe extern "C" fn(effect_ref: PF_ProgPtr, outSDKString: *mut PrSDKString) -> PF_Err,
22744    >,
22745    pub EffectWantsCheckedOutFramesToMatchRenderPixelFormat:
22746        ::std::option::Option<unsafe extern "C" fn(effect_ref: PF_ProgPtr) -> PF_Err>,
22747}
22748#[repr(C)]
22749#[derive(Debug, Copy, Clone)]
22750pub struct PF_UtilitySuite {
22751    pub GetFilterInstanceID: ::std::option::Option<
22752        unsafe extern "C" fn(effect_ref: PF_ProgPtr, outFilterInstanceID: *mut A_long) -> PF_Err,
22753    >,
22754    pub GetMediaTimecode: ::std::option::Option<
22755        unsafe extern "C" fn(
22756            effect_ref: PF_ProgPtr,
22757            outCurrentFrame: *mut A_long,
22758            outTimeDisplay: *mut PF_TimeDisplay,
22759        ) -> PF_Err,
22760    >,
22761    pub GetClipSpeed: ::std::option::Option<
22762        unsafe extern "C" fn(effect_ref: PF_ProgPtr, speed: *mut f64) -> PF_Err,
22763    >,
22764    pub GetClipDuration: ::std::option::Option<
22765        unsafe extern "C" fn(effect_ref: PF_ProgPtr, frameDuration: *mut A_long) -> PF_Err,
22766    >,
22767    pub GetClipStart: ::std::option::Option<
22768        unsafe extern "C" fn(effect_ref: PF_ProgPtr, frameDuration: *mut A_long) -> PF_Err,
22769    >,
22770    pub GetUnscaledClipDuration: ::std::option::Option<
22771        unsafe extern "C" fn(effect_ref: PF_ProgPtr, frameDuration: *mut A_long) -> PF_Err,
22772    >,
22773    pub GetUnscaledClipStart: ::std::option::Option<
22774        unsafe extern "C" fn(effect_ref: PF_ProgPtr, frameDuration: *mut A_long) -> PF_Err,
22775    >,
22776    pub GetTrackItemStart: ::std::option::Option<
22777        unsafe extern "C" fn(effect_ref: PF_ProgPtr, frameDuration: *mut A_long) -> PF_Err,
22778    >,
22779    pub GetMediaFieldType: ::std::option::Option<
22780        unsafe extern "C" fn(effect_ref: PF_ProgPtr, outFieldType: *mut prFieldType) -> PF_Err,
22781    >,
22782    pub GetMediaFrameRate: ::std::option::Option<
22783        unsafe extern "C" fn(effect_ref: PF_ProgPtr, outTicksPerFrame: *mut PrTime) -> PF_Err,
22784    >,
22785    pub GetContainingTimelineID: ::std::option::Option<
22786        unsafe extern "C" fn(effect_ref: PF_ProgPtr, outTimelineID: *mut PrTimelineID) -> PF_Err,
22787    >,
22788    pub GetClipName: ::std::option::Option<
22789        unsafe extern "C" fn(
22790            effect_ref: PF_ProgPtr,
22791            inGetMasterClipName: A_Boolean,
22792            outSDKString: *mut PrSDKString,
22793        ) -> PF_Err,
22794    >,
22795    pub EffectWantsCheckedOutFramesToMatchRenderPixelFormat:
22796        ::std::option::Option<unsafe extern "C" fn(effect_ref: PF_ProgPtr) -> PF_Err>,
22797    pub EffectDependsOnClipName: ::std::option::Option<
22798        unsafe extern "C" fn(effect_ref: PF_ProgPtr, inDependsOnClipName: A_Boolean) -> PF_Err,
22799    >,
22800    pub SetEffectInstanceName: ::std::option::Option<
22801        unsafe extern "C" fn(effect_ref: PF_ProgPtr, inSDKString: *const PrSDKString) -> PF_Err,
22802    >,
22803    pub GetFileName: ::std::option::Option<
22804        unsafe extern "C" fn(effect_ref: PF_ProgPtr, outSDKString: *mut PrSDKString) -> PF_Err,
22805    >,
22806    pub GetOriginalClipFrameRate: ::std::option::Option<
22807        unsafe extern "C" fn(effect_ref: PF_ProgPtr, outTicksPerFrame: *mut PrTime) -> PF_Err,
22808    >,
22809    pub GetSourceTrackMediaTimecode: ::std::option::Option<
22810        unsafe extern "C" fn(
22811            effect_ref: PF_ProgPtr,
22812            inLayerParamIndex: csSDK_uint32,
22813            inApplyTransform: bool,
22814            inAddStartTimeOffset: bool,
22815            outCurrentFrame: *mut A_long,
22816        ) -> PF_Err,
22817    >,
22818    pub GetSourceTrackClipName: ::std::option::Option<
22819        unsafe extern "C" fn(
22820            effect_ref: PF_ProgPtr,
22821            inLayerParamIndex: csSDK_uint32,
22822            inGetMasterClipName: A_Boolean,
22823            outSDKString: *mut PrSDKString,
22824        ) -> PF_Err,
22825    >,
22826    pub GetSourceTrackFileName: ::std::option::Option<
22827        unsafe extern "C" fn(
22828            effect_ref: PF_ProgPtr,
22829            inLayerParamIndex: csSDK_uint32,
22830            outSDKString: *mut PrSDKString,
22831        ) -> PF_Err,
22832    >,
22833    pub EffectDependsOnClipName2: ::std::option::Option<
22834        unsafe extern "C" fn(
22835            effect_ref: PF_ProgPtr,
22836            inDependsOnClipName: A_Boolean,
22837            inLayerParamIndex: csSDK_uint32,
22838        ) -> PF_Err,
22839    >,
22840    pub GetMediaTimecode2: ::std::option::Option<
22841        unsafe extern "C" fn(
22842            effect_ref: PF_ProgPtr,
22843            inApplyTrim: bool,
22844            outCurrentFrame: *mut A_long,
22845            outTimeDisplay: *mut PF_TimeDisplay,
22846        ) -> PF_Err,
22847    >,
22848    pub GetSourceTrackMediaTimecode2: ::std::option::Option<
22849        unsafe extern "C" fn(
22850            effect_ref: PF_ProgPtr,
22851            inLayerParamIndex: csSDK_uint32,
22852            inApplyTransform: bool,
22853            inAddStartTimeOffset: bool,
22854            inSequenceTime: PrTime,
22855            outCurrentFrame: *mut A_long,
22856        ) -> PF_Err,
22857    >,
22858    pub GetSourceTrackClipName2: ::std::option::Option<
22859        unsafe extern "C" fn(
22860            effect_ref: PF_ProgPtr,
22861            inLayerParamIndex: csSDK_uint32,
22862            inGetMasterClipName: A_Boolean,
22863            outSDKString: *mut PrSDKString,
22864            inSequenceTime: PrTime,
22865        ) -> PF_Err,
22866    >,
22867    pub GetSourceTrackFileName2: ::std::option::Option<
22868        unsafe extern "C" fn(
22869            effect_ref: PF_ProgPtr,
22870            inLayerParamIndex: csSDK_uint32,
22871            outSDKString: *mut PrSDKString,
22872            inSequenceTime: PrTime,
22873        ) -> PF_Err,
22874    >,
22875    pub GetCommentString: ::std::option::Option<
22876        unsafe extern "C" fn(
22877            inEffectRef: PF_ProgPtr,
22878            inSourceTrack: i32,
22879            inSequenceTime: PrTime,
22880            outSDKString: *mut PrSDKString,
22881        ) -> PF_Err,
22882    >,
22883    pub GetLogNoteString: ::std::option::Option<
22884        unsafe extern "C" fn(
22885            inEffectRef: PF_ProgPtr,
22886            inSourceTrack: i32,
22887            inSequenceTime: PrTime,
22888            outSDKString: *mut PrSDKString,
22889        ) -> PF_Err,
22890    >,
22891    pub GetCameraRollString: ::std::option::Option<
22892        unsafe extern "C" fn(
22893            inEffectRef: PF_ProgPtr,
22894            inSourceTrack: i32,
22895            inSequenceTime: PrTime,
22896            outSDKString: *mut PrSDKString,
22897        ) -> PF_Err,
22898    >,
22899    pub GetClientMetadataString: ::std::option::Option<
22900        unsafe extern "C" fn(
22901            inEffectRef: PF_ProgPtr,
22902            inSourceTrack: i32,
22903            inSequenceTime: PrTime,
22904            outSDKString: *mut PrSDKString,
22905        ) -> PF_Err,
22906    >,
22907    pub GetDailyRollString: ::std::option::Option<
22908        unsafe extern "C" fn(
22909            inEffectRef: PF_ProgPtr,
22910            inSourceTrack: i32,
22911            inSequenceTime: PrTime,
22912            outSDKString: *mut PrSDKString,
22913        ) -> PF_Err,
22914    >,
22915    pub GetDescriptionString: ::std::option::Option<
22916        unsafe extern "C" fn(
22917            inEffectRef: PF_ProgPtr,
22918            inSourceTrack: i32,
22919            inSequenceTime: PrTime,
22920            outSDKString: *mut PrSDKString,
22921        ) -> PF_Err,
22922    >,
22923    pub GetLabRollString: ::std::option::Option<
22924        unsafe extern "C" fn(
22925            inEffectRef: PF_ProgPtr,
22926            inSourceTrack: i32,
22927            inSequenceTime: PrTime,
22928            outSDKString: *mut PrSDKString,
22929        ) -> PF_Err,
22930    >,
22931    pub GetSceneString: ::std::option::Option<
22932        unsafe extern "C" fn(
22933            inEffectRef: PF_ProgPtr,
22934            inSourceTrack: i32,
22935            inSequenceTime: PrTime,
22936            outSDKString: *mut PrSDKString,
22937        ) -> PF_Err,
22938    >,
22939    pub GetShotString: ::std::option::Option<
22940        unsafe extern "C" fn(
22941            inEffectRef: PF_ProgPtr,
22942            inSourceTrack: i32,
22943            inSequenceTime: PrTime,
22944            outSDKString: *mut PrSDKString,
22945        ) -> PF_Err,
22946    >,
22947    pub GetTapeNameString: ::std::option::Option<
22948        unsafe extern "C" fn(
22949            inEffectRef: PF_ProgPtr,
22950            inSourceTrack: i32,
22951            inSequenceTime: PrTime,
22952            outSDKString: *mut PrSDKString,
22953        ) -> PF_Err,
22954    >,
22955    pub GetVideoCodecString: ::std::option::Option<
22956        unsafe extern "C" fn(
22957            inEffectRef: PF_ProgPtr,
22958            inSourceTrack: i32,
22959            inSequenceTime: PrTime,
22960            outSDKString: *mut PrSDKString,
22961        ) -> PF_Err,
22962    >,
22963    pub GetGoodMetadataString: ::std::option::Option<
22964        unsafe extern "C" fn(
22965            inEffectRef: PF_ProgPtr,
22966            inSourceTrack: i32,
22967            inSequenceTime: PrTime,
22968            outSDKString: *mut PrSDKString,
22969        ) -> PF_Err,
22970    >,
22971    pub GetSoundRollString: ::std::option::Option<
22972        unsafe extern "C" fn(
22973            inEffectRef: PF_ProgPtr,
22974            inSourceTrack: i32,
22975            inSequenceTime: PrTime,
22976            outSDKString: *mut PrSDKString,
22977        ) -> PF_Err,
22978    >,
22979    pub GetSequenceTime: ::std::option::Option<
22980        unsafe extern "C" fn(inEffectRef: PF_ProgPtr, outSequenceTime: *mut PrTime) -> PF_Err,
22981    >,
22982    pub GetSoundTimecode: ::std::option::Option<
22983        unsafe extern "C" fn(
22984            inEffectRef: PF_ProgPtr,
22985            inSourceTrack: i32,
22986            inSequenceTime: PrTime,
22987            outCurrentFrame: *mut A_long,
22988        ) -> PF_Err,
22989    >,
22990    pub GetOriginalClipFrameRateForSourceTrack: ::std::option::Option<
22991        unsafe extern "C" fn(
22992            inEffectRef: PF_ProgPtr,
22993            inSourceTrack: i32,
22994            outTicksPerFrame: *mut PrTime,
22995        ) -> PF_Err,
22996    >,
22997    pub GetMediaFrameRateForSourceTrack: ::std::option::Option<
22998        unsafe extern "C" fn(
22999            inEffectRef: PF_ProgPtr,
23000            inSourceTrack: i32,
23001            inSequenceTime: PrTime,
23002            outTicksPerFrame: *mut PrTime,
23003        ) -> PF_Err,
23004    >,
23005    pub GetSourceTrackMediaActualStartTime: ::std::option::Option<
23006        unsafe extern "C" fn(
23007            inEffectRef: PF_ProgPtr,
23008            inLayerParamIndex: csSDK_uint32,
23009            inSequenceTime: PrTime,
23010            outClipActualStartTime: *mut PrTime,
23011        ) -> PF_Err,
23012    >,
23013    pub IsSourceTrackMediaTrimmed: ::std::option::Option<
23014        unsafe extern "C" fn(
23015            inEffectRef: PF_ProgPtr,
23016            inLayerParamIndex: csSDK_uint32,
23017            inSequenceTime: PrTime,
23018            outTrimApplied: *mut bool,
23019        ) -> PF_Err,
23020    >,
23021    pub IsMediaTrimmed: ::std::option::Option<
23022        unsafe extern "C" fn(
23023            inEffectRef: PF_ProgPtr,
23024            inSequenceTime: PrTime,
23025            outTrimApplied: *mut bool,
23026        ) -> PF_Err,
23027    >,
23028    pub IsTrackEmpty: ::std::option::Option<
23029        unsafe extern "C" fn(
23030            inEffectRef: PF_ProgPtr,
23031            inLayerParamIndex: csSDK_uint32,
23032            inSequenceTime: PrTime,
23033            outIsTrackEmpty: *mut bool,
23034        ) -> PF_Err,
23035    >,
23036    pub IsTrackItemEffectAppliedToSynthetic: ::std::option::Option<
23037        unsafe extern "C" fn(
23038            inEffectRef: PF_ProgPtr,
23039            outIsTrackItemEffectAppliedToSynthetic: *mut bool,
23040        ) -> PF_Err,
23041    >,
23042}
23043pub type PF_UtilitySuiteVersion1 = PF_UtilitySuite;
23044pub type PF_UtilitySuite2 = PF_UtilitySuite;
23045pub type PF_UtilitySuite3 = PF_UtilitySuite;
23046pub type PF_UtilitySuite5 = PF_UtilitySuite;
23047pub type PF_UtilitySuite6 = PF_UtilitySuite;
23048pub type PF_UtilitySuite7 = PF_UtilitySuite;
23049pub type PF_UtilitySuite8 = PF_UtilitySuite;
23050#[repr(C)]
23051#[derive(Debug, Copy, Clone)]
23052pub struct PF_SourceSettingsSuite {
23053    pub PerformSourceSettingsCommand: ::std::option::Option<
23054        unsafe extern "C" fn(
23055            effect_ref: PF_ProgPtr,
23056            ioCommandStruct: *mut ::std::os::raw::c_void,
23057            inDataSize: csSDK_uint32,
23058        ) -> PF_Err,
23059    >,
23060}
23061#[repr(C)]
23062#[derive(Debug, Copy, Clone)]
23063pub struct PF_TransitionSuite {
23064    #[doc = "\tRegister an effect as a transition using the passed in\n\tinput layer as the outgoing clip. When registered the effect\n\twill be available to be dragged directly onto clip ends rather\n\tthan only applied to layers."]
23065    pub RegisterTransitionInputParam: ::std::option::Option<
23066        unsafe extern "C" fn(inEffectRef: PF_ProgPtr, inIndex: PF_ParamIndex) -> PF_Err,
23067    >,
23068    #[doc = "\tRegister a PF_ADD_FLOAT_SLIDER parameter to receive\n\tchanges to the start of the transition region through the\n\tPF_Cmd_USER_CHANGED_PARAM command."]
23069    pub RegisterTransitionStartParam: ::std::option::Option<
23070        unsafe extern "C" fn(inEffectRef: PF_ProgPtr, inIndex: PF_ParamIndex) -> PF_Err,
23071    >,
23072    #[doc = "\tRegister a PF_ADD_FLOAT_SLIDER parameter to receive\n\tchanges to the end of the transition region through the\n\tPF_Cmd_USER_CHANGED_PARAM command."]
23073    pub RegisterTransitionEndParam: ::std::option::Option<
23074        unsafe extern "C" fn(inEffectRef: PF_ProgPtr, inIndex: PF_ParamIndex) -> PF_Err,
23075    >,
23076}
23077#[repr(C)]
23078pub struct std_exception__bindgen_vtable(::std::os::raw::c_void);
23079#[repr(C)]
23080#[derive(Debug)]
23081pub struct std_exception {
23082    pub vtable_: *const std_exception__bindgen_vtable,
23083}
23084unsafe extern "C" {
23085    #[link_name = "\u{1}__ZNSt9exceptionD1Ev"]
23086    pub fn std_exception_exception_destructor(this: *mut std_exception);
23087}
23088unsafe extern "C" {
23089    #[link_name = "\u{1}__ZNKSt9exception4whatEv"]
23090    pub fn std_exception_what(this: *mut ::std::os::raw::c_void) -> *const ::std::os::raw::c_char;
23091}
23092pub type ADOBESDK_UTF16Char = u16;
23093pub type ADOBESDK_Boolean = u8;
23094pub type DRAWBOT_UTF16Char = ADOBESDK_UTF16Char;
23095pub type DRAWBOT_Boolean = ADOBESDK_Boolean;
23096#[repr(C)]
23097#[derive(Debug, Copy, Clone)]
23098pub struct DRAWBOT_DrawbotSuite1 {
23099    pub GetSupplier: ::std::option::Option<
23100        unsafe extern "C" fn(
23101            in_drawbot_ref: DRAWBOT_DrawRef,
23102            out_supplierP: *mut DRAWBOT_SupplierRef,
23103        ) -> SPErr,
23104    >,
23105    pub GetSurface: ::std::option::Option<
23106        unsafe extern "C" fn(
23107            in_drawbot_ref: DRAWBOT_DrawRef,
23108            out_surfaceP: *mut DRAWBOT_SurfaceRef,
23109        ) -> SPErr,
23110    >,
23111}
23112#[repr(C)]
23113#[derive(Debug, Copy, Clone)]
23114pub struct DRAWBOT_SupplierSuite1 {
23115    pub NewPen: ::std::option::Option<
23116        unsafe extern "C" fn(
23117            in_supplier_ref: DRAWBOT_SupplierRef,
23118            in_colorP: *const DRAWBOT_ColorRGBA,
23119            in_size: f32,
23120            out_penP: *mut DRAWBOT_PenRef,
23121        ) -> SPErr,
23122    >,
23123    pub NewBrush: ::std::option::Option<
23124        unsafe extern "C" fn(
23125            in_supplier_ref: DRAWBOT_SupplierRef,
23126            in_colorP: *const DRAWBOT_ColorRGBA,
23127            out_brushP: *mut DRAWBOT_BrushRef,
23128        ) -> SPErr,
23129    >,
23130    pub SupportsText: ::std::option::Option<
23131        unsafe extern "C" fn(
23132            in_supplier_ref: DRAWBOT_SupplierRef,
23133            out_supports_textPB: *mut DRAWBOT_Boolean,
23134        ) -> SPErr,
23135    >,
23136    pub GetDefaultFontSize: ::std::option::Option<
23137        unsafe extern "C" fn(
23138            in_supplier_ref: DRAWBOT_SupplierRef,
23139            out_font_sizeF: *mut f32,
23140        ) -> SPErr,
23141    >,
23142    pub NewDefaultFont: ::std::option::Option<
23143        unsafe extern "C" fn(
23144            in_supplier_ref: DRAWBOT_SupplierRef,
23145            in_font_sizeF: f32,
23146            out_fontP: *mut DRAWBOT_FontRef,
23147        ) -> SPErr,
23148    >,
23149    pub NewImageFromBuffer: ::std::option::Option<
23150        unsafe extern "C" fn(
23151            in_supplier_ref: DRAWBOT_SupplierRef,
23152            in_width: ::std::os::raw::c_int,
23153            in_height: ::std::os::raw::c_int,
23154            in_row_bytes: ::std::os::raw::c_int,
23155            in_pl: DRAWBOT_PixelLayout,
23156            in_dataP: *const ::std::os::raw::c_void,
23157            out_imageP: *mut DRAWBOT_ImageRef,
23158        ) -> SPErr,
23159    >,
23160    pub NewPath: ::std::option::Option<
23161        unsafe extern "C" fn(
23162            in_supplier_ref: DRAWBOT_SupplierRef,
23163            out_pathP: *mut DRAWBOT_PathRef,
23164        ) -> SPErr,
23165    >,
23166    pub SupportsPixelLayoutBGRA: ::std::option::Option<
23167        unsafe extern "C" fn(
23168            in_supplier_ref: DRAWBOT_SupplierRef,
23169            out_supports_bgraPB: *mut DRAWBOT_Boolean,
23170        ) -> SPErr,
23171    >,
23172    pub PrefersPixelLayoutBGRA: ::std::option::Option<
23173        unsafe extern "C" fn(
23174            in_supplier_ref: DRAWBOT_SupplierRef,
23175            out_prefers_bgraPB: *mut DRAWBOT_Boolean,
23176        ) -> SPErr,
23177    >,
23178    pub SupportsPixelLayoutARGB: ::std::option::Option<
23179        unsafe extern "C" fn(
23180            in_supplier_ref: DRAWBOT_SupplierRef,
23181            out_supports_argbPB: *mut DRAWBOT_Boolean,
23182        ) -> SPErr,
23183    >,
23184    pub PrefersPixelLayoutARGB: ::std::option::Option<
23185        unsafe extern "C" fn(
23186            in_supplier_ref: DRAWBOT_SupplierRef,
23187            out_prefers_argbPB: *mut DRAWBOT_Boolean,
23188        ) -> SPErr,
23189    >,
23190    pub RetainObject:
23191        ::std::option::Option<unsafe extern "C" fn(in_obj_ref: DRAWBOT_ObjectRef) -> SPErr>,
23192    pub ReleaseObject:
23193        ::std::option::Option<unsafe extern "C" fn(in_obj_ref: DRAWBOT_ObjectRef) -> SPErr>,
23194}
23195#[repr(C)]
23196#[derive(Debug, Copy, Clone)]
23197pub struct DRAWBOT_SurfaceSuite1 {
23198    pub PushStateStack:
23199        ::std::option::Option<unsafe extern "C" fn(in_surface_ref: DRAWBOT_SurfaceRef) -> SPErr>,
23200    pub PopStateStack:
23201        ::std::option::Option<unsafe extern "C" fn(in_surface_ref: DRAWBOT_SurfaceRef) -> SPErr>,
23202    pub PaintRect: ::std::option::Option<
23203        unsafe extern "C" fn(
23204            in_surface_ref: DRAWBOT_SurfaceRef,
23205            in_colorP: *const DRAWBOT_ColorRGBA,
23206            in_rectPR: *const DRAWBOT_RectF32,
23207        ) -> SPErr,
23208    >,
23209    pub FillPath: ::std::option::Option<
23210        unsafe extern "C" fn(
23211            in_surface_ref: DRAWBOT_SurfaceRef,
23212            in_brush_ref: DRAWBOT_BrushRef,
23213            in_path_ref: DRAWBOT_PathRef,
23214            in_fill_type: DRAWBOT_FillType,
23215        ) -> SPErr,
23216    >,
23217    pub StrokePath: ::std::option::Option<
23218        unsafe extern "C" fn(
23219            in_surface_ref: DRAWBOT_SurfaceRef,
23220            in_pen_ref: DRAWBOT_PenRef,
23221            in_path_ref: DRAWBOT_PathRef,
23222        ) -> SPErr,
23223    >,
23224    pub Clip: ::std::option::Option<
23225        unsafe extern "C" fn(
23226            in_surface_ref: DRAWBOT_SurfaceRef,
23227            in_supplier_ref: DRAWBOT_SupplierRef,
23228            in_rectPR: *const DRAWBOT_Rect32,
23229        ) -> SPErr,
23230    >,
23231    pub GetClipBounds: ::std::option::Option<
23232        unsafe extern "C" fn(
23233            in_surface_ref: DRAWBOT_SurfaceRef,
23234            out_rectPR: *mut DRAWBOT_Rect32,
23235        ) -> SPErr,
23236    >,
23237    pub IsWithinClipBounds: ::std::option::Option<
23238        unsafe extern "C" fn(
23239            in_surface_ref: DRAWBOT_SurfaceRef,
23240            in_rectPR: *const DRAWBOT_Rect32,
23241            out_withinPB: *mut DRAWBOT_Boolean,
23242        ) -> SPErr,
23243    >,
23244    pub Transform: ::std::option::Option<
23245        unsafe extern "C" fn(
23246            in_surface_ref: DRAWBOT_SurfaceRef,
23247            in_matrixP: *const DRAWBOT_MatrixF32,
23248        ) -> SPErr,
23249    >,
23250    pub DrawString: ::std::option::Option<
23251        unsafe extern "C" fn(
23252            in_surface_ref: DRAWBOT_SurfaceRef,
23253            in_brush_ref: DRAWBOT_BrushRef,
23254            in_font_ref: DRAWBOT_FontRef,
23255            in_stringP: *const DRAWBOT_UTF16Char,
23256            in_originP: *const DRAWBOT_PointF32,
23257            in_alignment_style: DRAWBOT_TextAlignment,
23258            in_truncation_style: DRAWBOT_TextTruncation,
23259            in_truncation_width: f32,
23260        ) -> SPErr,
23261    >,
23262    pub DrawImage: ::std::option::Option<
23263        unsafe extern "C" fn(
23264            in_surface_ref: DRAWBOT_SurfaceRef,
23265            in_image_ref: DRAWBOT_ImageRef,
23266            in_originP: *const DRAWBOT_PointF32,
23267            in_alpha: f32,
23268        ) -> SPErr,
23269    >,
23270    pub SetInterpolationPolicy: ::std::option::Option<
23271        unsafe extern "C" fn(
23272            in_surface_ref: DRAWBOT_SurfaceRef,
23273            in_interp: DRAWBOT_InterpolationPolicy,
23274        ) -> SPErr,
23275    >,
23276    pub GetInterpolationPolicy: ::std::option::Option<
23277        unsafe extern "C" fn(
23278            in_surface_ref: DRAWBOT_SurfaceRef,
23279            out_interpP: *mut DRAWBOT_InterpolationPolicy,
23280        ) -> SPErr,
23281    >,
23282    pub SetAntiAliasPolicy: ::std::option::Option<
23283        unsafe extern "C" fn(
23284            in_surface_ref: DRAWBOT_SurfaceRef,
23285            in_policy: DRAWBOT_AntiAliasPolicy,
23286        ) -> SPErr,
23287    >,
23288    pub GetAntiAliasPolicy: ::std::option::Option<
23289        unsafe extern "C" fn(
23290            in_surface_ref: DRAWBOT_SurfaceRef,
23291            out_policyP: *mut DRAWBOT_AntiAliasPolicy,
23292        ) -> SPErr,
23293    >,
23294    pub Flush:
23295        ::std::option::Option<unsafe extern "C" fn(in_surface_ref: DRAWBOT_SurfaceRef) -> SPErr>,
23296    pub GetTransformToScreenScale: ::std::option::Option<
23297        unsafe extern "C" fn(in_surface_ref: DRAWBOT_SurfaceRef, out_scale: *mut f32) -> SPErr,
23298    >,
23299}
23300pub type DRAWBOT_SurfaceSuite2 = DRAWBOT_SurfaceSuite1;
23301#[repr(C)]
23302#[derive(Debug, Copy, Clone)]
23303pub struct DRAWBOT_PathSuite1 {
23304    pub MoveTo: ::std::option::Option<
23305        unsafe extern "C" fn(in_path_ref: DRAWBOT_PathRef, in_x: f32, in_y: f32) -> SPErr,
23306    >,
23307    pub LineTo: ::std::option::Option<
23308        unsafe extern "C" fn(in_path_ref: DRAWBOT_PathRef, in_x: f32, in_y: f32) -> SPErr,
23309    >,
23310    pub BezierTo: ::std::option::Option<
23311        unsafe extern "C" fn(
23312            in_path_ref: DRAWBOT_PathRef,
23313            in_pt1P: *const DRAWBOT_PointF32,
23314            in_pt2P: *const DRAWBOT_PointF32,
23315            in_pt3P: *const DRAWBOT_PointF32,
23316        ) -> SPErr,
23317    >,
23318    pub AddRect: ::std::option::Option<
23319        unsafe extern "C" fn(
23320            in_path_ref: DRAWBOT_PathRef,
23321            in_rectPR: *const DRAWBOT_RectF32,
23322        ) -> SPErr,
23323    >,
23324    pub AddArc: ::std::option::Option<
23325        unsafe extern "C" fn(
23326            in_path_ref: DRAWBOT_PathRef,
23327            in_centerP: *const DRAWBOT_PointF32,
23328            in_radius: f32,
23329            in_start_angle: f32,
23330            in_sweep: f32,
23331        ) -> SPErr,
23332    >,
23333    pub Close: ::std::option::Option<unsafe extern "C" fn(in_path_ref: DRAWBOT_PathRef) -> SPErr>,
23334}
23335#[repr(C)]
23336#[derive(Debug, Copy, Clone)]
23337pub struct DRAWBOT_PenSuite1 {
23338    pub SetDashPattern: ::std::option::Option<
23339        unsafe extern "C" fn(
23340            in_pen_ref: DRAWBOT_PenRef,
23341            in_dashesP: *const f32,
23342            in_pattern_size: ::std::os::raw::c_int,
23343        ) -> SPErr,
23344    >,
23345}
23346#[repr(C)]
23347#[derive(Debug, Copy, Clone)]
23348pub struct DRAWBOT_ImageSuite1 {
23349    pub SetScaleFactor: ::std::option::Option<
23350        unsafe extern "C" fn(in_image_ref: DRAWBOT_ImageRef, in_scale_factor: f32) -> SPErr,
23351    >,
23352}
23353#[repr(C)]
23354#[derive(Debug, Copy, Clone)]
23355pub struct DRAWBOT_Suites {
23356    pub drawbot_suiteP: *mut DRAWBOT_DrawbotSuite1,
23357    pub supplier_suiteP: *mut DRAWBOT_SupplierSuite1,
23358    pub surface_suiteP: *mut DRAWBOT_SurfaceSuite2,
23359    pub path_suiteP: *mut DRAWBOT_PathSuite1,
23360    pub pen_suiteP: *mut DRAWBOT_PenSuite1,
23361    pub image_suiteP: *mut DRAWBOT_ImageSuite1,
23362}
23363#[repr(C)]
23364#[derive(Debug)]
23365pub struct DRAWBOT_Exception {
23366    pub _base: std_exception,
23367    pub mErr: SPErr,
23368}
23369#[repr(C)]
23370pub struct SharedRefImpl__bindgen_vtable(::std::os::raw::c_void);
23371#[repr(C)]
23372#[derive(Debug)]
23373pub struct SharedRefImpl<REF_T> {
23374    pub _phantom_0: ::std::marker::PhantomData<::std::cell::UnsafeCell<REF_T>>,
23375    pub vtable_: *const SharedRefImpl__bindgen_vtable,
23376    pub mRef: REF_T,
23377    pub mSuiteP: *mut DRAWBOT_SupplierSuite1,
23378}
23379#[repr(C)]
23380#[derive(Debug)]
23381pub struct DRAWBOT_PenP {
23382    pub _base: SharedRefImpl<DRAWBOT_PenRef>,
23383}
23384pub type DRAWBOT_PenP__inherited = SharedRefImpl<DRAWBOT_PenRef>;
23385#[repr(C)]
23386#[derive(Debug)]
23387pub struct DRAWBOT_PathP {
23388    pub _base: SharedRefImpl<DRAWBOT_PathRef>,
23389}
23390pub type DRAWBOT_PathP__inherited = SharedRefImpl<DRAWBOT_PathRef>;
23391#[repr(C)]
23392#[derive(Debug)]
23393pub struct DRAWBOT_BrushP {
23394    pub _base: SharedRefImpl<DRAWBOT_BrushRef>,
23395}
23396pub type DRAWBOT_BrushP__inherited = SharedRefImpl<DRAWBOT_BrushRef>;
23397#[repr(C)]
23398#[derive(Debug)]
23399pub struct DRAWBOT_FontP {
23400    pub _base: SharedRefImpl<DRAWBOT_FontRef>,
23401}
23402pub type DRAWBOT_FontP__inherited = SharedRefImpl<DRAWBOT_FontRef>;
23403#[repr(C)]
23404#[derive(Debug)]
23405pub struct DRAWBOT_SaveAndRestoreStateStack {
23406    pub mSurfaceRef: DRAWBOT_SurfaceRef,
23407    pub mSuiteP: *mut DRAWBOT_SurfaceSuite2,
23408}
23409pub type prSuiteError = csSDK_int32;
23410pub const suiteError_InvalidParms: _bindgen_ty_182 = 2147483649;
23411pub const suiteError_StringNotFound: _bindgen_ty_182 = 2148139008;
23412pub const suiteError_StringBufferTooSmall: _bindgen_ty_182 = 2148139009;
23413pub type _bindgen_ty_182 = ::std::os::raw::c_uint;
23414#[repr(C, packed)]
23415#[derive(Debug, Copy, Clone)]
23416pub struct PrSDKStringSuite {
23417    pub DisposeString: ::std::option::Option<
23418        unsafe extern "C" fn(inSDKString: *const PrSDKString) -> prSuiteError,
23419    >,
23420    pub AllocateFromUTF8: ::std::option::Option<
23421        unsafe extern "C" fn(
23422            inUTF8String: *const u8,
23423            outSDKString: *mut PrSDKString,
23424        ) -> prSuiteError,
23425    >,
23426    pub CopyToUTF8String: ::std::option::Option<
23427        unsafe extern "C" fn(
23428            inSDKString: *const PrSDKString,
23429            outUTF8StringBuffer: *mut u8,
23430            ioUTF8StringBufferSizeInElements: *mut csSDK_uint32,
23431        ) -> prSuiteError,
23432    >,
23433    pub AllocateFromUTF16: ::std::option::Option<
23434        unsafe extern "C" fn(
23435            inUTF16String: *const u16,
23436            outSDKString: *mut PrSDKString,
23437        ) -> prSuiteError,
23438    >,
23439    pub CopyToUTF16String: ::std::option::Option<
23440        unsafe extern "C" fn(
23441            inSDKString: *const PrSDKString,
23442            outUTF16StringBuffer: *mut u16,
23443            ioUTF16StringBufferSizeInElements: *mut csSDK_uint32,
23444        ) -> prSuiteError,
23445    >,
23446}