use crate::ae_sys;
use crate::AsPtr;
#[derive(Copy, Clone, Debug, Hash)]
pub struct InDataHandle {
in_data_ptr: *const ae_sys::PR_InData,
}
impl InDataHandle {
#[inline]
pub fn from_raw(in_data_ptr: *const ae_sys::PR_InData) -> InDataHandle {
InDataHandle { in_data_ptr }
}
#[inline]
pub fn as_ptr(self) -> *const ae_sys::PR_InData {
self.in_data_ptr
}
#[inline]
pub fn pica_basic_handle(self) -> crate::PicaBasicSuiteHandle {
crate::PicaBasicSuiteHandle::from_raw(unsafe { (*self.in_data_ptr).pica_basicP })
}
#[inline]
pub fn plugin_id(self) -> i32 {
unsafe { (*self.in_data_ptr).aegp_plug_id }
}
#[inline]
pub fn reference_context_ptr(self) -> Box<std::os::raw::c_void> {
unsafe { Box::<std::os::raw::c_void>::from_raw((*self.in_data_ptr).aegp_refconPV) }
}
}
register_handle!(PR_RenderContextH);
define_handle_wrapper!(RenderContextHandle, PR_RenderContextH);
define_handle_wrapper!(InstanceDataHandle, PR_InstanceDataH);
define_handle_wrapper!(InstanceContextHandle, PR_InstanceContextH);
define_handle_wrapper!(GlobalContextHandle, PR_GlobalContextH);
define_handle_wrapper!(GlobalDataHandle, PR_GlobalDataH);
define_handle_wrapper!(RenderDataHandle, PR_RenderDataH);
define_enum! {
ae_sys::PrPixelFormat,
PixelFormat {
Bgra4444_8u = ae_sys::PrPixelFormat_PrPixelFormat_BGRA_4444_8u,
Vuya4444_8u = ae_sys::PrPixelFormat_PrPixelFormat_VUYA_4444_8u,
Vuya4444_8u709 = ae_sys::PrPixelFormat_PrPixelFormat_VUYA_4444_8u_709,
Argb4444_8u = ae_sys::PrPixelFormat_PrPixelFormat_ARGB_4444_8u,
Bgrx4444_8u = ae_sys::PrPixelFormat_PrPixelFormat_BGRX_4444_8u,
Vuyx4444_8u = ae_sys::PrPixelFormat_PrPixelFormat_VUYX_4444_8u,
Vuyx4444_8u709 = ae_sys::PrPixelFormat_PrPixelFormat_VUYX_4444_8u_709,
Xrgb4444_8u = ae_sys::PrPixelFormat_PrPixelFormat_XRGB_4444_8u,
Bgrp4444_8u = ae_sys::PrPixelFormat_PrPixelFormat_BGRP_4444_8u,
Vuyp4444_8u = ae_sys::PrPixelFormat_PrPixelFormat_VUYP_4444_8u,
Vuyp4444_8u709 = ae_sys::PrPixelFormat_PrPixelFormat_VUYP_4444_8u_709,
Prgb4444_8u = ae_sys::PrPixelFormat_PrPixelFormat_PRGB_4444_8u,
Bgra4444_16u = ae_sys::PrPixelFormat_PrPixelFormat_BGRA_4444_16u,
Vuya4444_16u = ae_sys::PrPixelFormat_PrPixelFormat_VUYA_4444_16u,
Argb4444_16u = ae_sys::PrPixelFormat_PrPixelFormat_ARGB_4444_16u,
Bgrx4444_16u = ae_sys::PrPixelFormat_PrPixelFormat_BGRX_4444_16u,
Xrgb4444_16u = ae_sys::PrPixelFormat_PrPixelFormat_XRGB_4444_16u,
Bgrp4444_16u = ae_sys::PrPixelFormat_PrPixelFormat_BGRP_4444_16u,
Prgb4444_16u = ae_sys::PrPixelFormat_PrPixelFormat_PRGB_4444_16u,
Bgra4444_32f = ae_sys::PrPixelFormat_PrPixelFormat_BGRA_4444_32f,
Vuya4444_32f = ae_sys::PrPixelFormat_PrPixelFormat_VUYA_4444_32f,
Vuya4444_32f709 = ae_sys::PrPixelFormat_PrPixelFormat_VUYA_4444_32f_709,
Argb4444_32f = ae_sys::PrPixelFormat_PrPixelFormat_ARGB_4444_32f,
Bgrx4444_32f = ae_sys::PrPixelFormat_PrPixelFormat_BGRX_4444_32f,
Vuyx4444_32f = ae_sys::PrPixelFormat_PrPixelFormat_VUYX_4444_32f,
Vuyx4444_32f709 = ae_sys::PrPixelFormat_PrPixelFormat_VUYX_4444_32f_709,
Xrgb4444_32f = ae_sys::PrPixelFormat_PrPixelFormat_XRGB_4444_32f,
Bgrp4444_32f = ae_sys::PrPixelFormat_PrPixelFormat_BGRP_4444_32f,
Vuyp4444_32f = ae_sys::PrPixelFormat_PrPixelFormat_VUYP_4444_32f,
Vuyp4444_32f709 = ae_sys::PrPixelFormat_PrPixelFormat_VUYP_4444_32f_709,
Prgb4444_32f = ae_sys::PrPixelFormat_PrPixelFormat_PRGB_4444_32f,
Rgb444_10u = ae_sys::PrPixelFormat_PrPixelFormat_RGB_444_10u,
Yuyv422_8u601 = ae_sys::PrPixelFormat_PrPixelFormat_YUYV_422_8u_601,
Yuyv422_8u709 = ae_sys::PrPixelFormat_PrPixelFormat_YUYV_422_8u_709,
Uyvy422_8u601 = ae_sys::PrPixelFormat_PrPixelFormat_UYVY_422_8u_601,
Uyvy422_8u709 = ae_sys::PrPixelFormat_PrPixelFormat_UYVY_422_8u_709,
V210422_10u601 = ae_sys::PrPixelFormat_PrPixelFormat_V210_422_10u_601,
V210422_10u709 = ae_sys::PrPixelFormat_PrPixelFormat_V210_422_10u_709,
Uyvy422_32f601 = ae_sys::PrPixelFormat_PrPixelFormat_UYVY_422_32f_601,
Uyvy422_32f709 = ae_sys::PrPixelFormat_PrPixelFormat_UYVY_422_32f_709,
Bgra4444_32fLinear = ae_sys::PrPixelFormat_PrPixelFormat_BGRA_4444_32f_Linear,
Bgrp4444_32fLinear = ae_sys::PrPixelFormat_PrPixelFormat_BGRP_4444_32f_Linear,
Bgrx4444_32fLinear = ae_sys::PrPixelFormat_PrPixelFormat_BGRX_4444_32f_Linear,
Argb4444_32fLinear = ae_sys::PrPixelFormat_PrPixelFormat_ARGB_4444_32f_Linear,
Prgb4444_32fLinear = ae_sys::PrPixelFormat_PrPixelFormat_PRGB_4444_32f_Linear,
Xrgb4444_32fLinear = ae_sys::PrPixelFormat_PrPixelFormat_XRGB_4444_32f_Linear,
Rgb444_12uPq709 = ae_sys::PrPixelFormat_PrPixelFormat_RGB_444_12u_PQ_709,
Rgb444_12uPqP3 = ae_sys::PrPixelFormat_PrPixelFormat_RGB_444_12u_PQ_P3,
Rgb444_12uPq2020 = ae_sys::PrPixelFormat_PrPixelFormat_RGB_444_12u_PQ_2020,
Yuv420Mpeg2FramePicturePlanar8u601 = ae_sys::PrPixelFormat_PrPixelFormat_YUV_420_MPEG2_FRAME_PICTURE_PLANAR_8u_601,
Yuv420Mpeg2FieldPicturePlanar8u601 = ae_sys::PrPixelFormat_PrPixelFormat_YUV_420_MPEG2_FIELD_PICTURE_PLANAR_8u_601,
Yuv420Mpeg2FramePicturePlanar8u601FullRange = ae_sys::PrPixelFormat_PrPixelFormat_YUV_420_MPEG2_FRAME_PICTURE_PLANAR_8u_601_FullRange,
Yuv420Mpeg2FieldPicturePlanar8u601FullRange = ae_sys::PrPixelFormat_PrPixelFormat_YUV_420_MPEG2_FIELD_PICTURE_PLANAR_8u_601_FullRange,
Yuv420Mpeg2FramePicturePlanar8u709 = ae_sys::PrPixelFormat_PrPixelFormat_YUV_420_MPEG2_FRAME_PICTURE_PLANAR_8u_709,
Yuv420Mpeg2FieldPicturePlanar8u709 = ae_sys::PrPixelFormat_PrPixelFormat_YUV_420_MPEG2_FIELD_PICTURE_PLANAR_8u_709,
Yuv420Mpeg2FramePicturePlanar8u709FullRange = ae_sys::PrPixelFormat_PrPixelFormat_YUV_420_MPEG2_FRAME_PICTURE_PLANAR_8u_709_FullRange,
Yuv420Mpeg2FieldPicturePlanar8u709FullRange = ae_sys::PrPixelFormat_PrPixelFormat_YUV_420_MPEG2_FIELD_PICTURE_PLANAR_8u_709_FullRange,
Yuv420Mpeg4FramePicturePlanar8u601 = ae_sys::PrPixelFormat_PrPixelFormat_YUV_420_MPEG4_FRAME_PICTURE_PLANAR_8u_601,
Yuv420Mpeg4FieldPicturePlanar8u601 = ae_sys::PrPixelFormat_PrPixelFormat_YUV_420_MPEG4_FIELD_PICTURE_PLANAR_8u_601,
Yuv420Mpeg4FramePicturePlanar8u601FullRange = ae_sys::PrPixelFormat_PrPixelFormat_YUV_420_MPEG4_FRAME_PICTURE_PLANAR_8u_601_FullRange,
Yuv420Mpeg4FieldPicturePlanar8u601FullRange = ae_sys::PrPixelFormat_PrPixelFormat_YUV_420_MPEG4_FIELD_PICTURE_PLANAR_8u_601_FullRange,
Yuv420Mpeg4FramePicturePlanar8u709 = ae_sys::PrPixelFormat_PrPixelFormat_YUV_420_MPEG4_FRAME_PICTURE_PLANAR_8u_709,
Yuv420Mpeg4FieldPicturePlanar8u709 = ae_sys::PrPixelFormat_PrPixelFormat_YUV_420_MPEG4_FIELD_PICTURE_PLANAR_8u_709,
Yuv420Mpeg4FramePicturePlanar8u709FullRange = ae_sys::PrPixelFormat_PrPixelFormat_YUV_420_MPEG4_FRAME_PICTURE_PLANAR_8u_709_FullRange,
Yuv420Mpeg4FieldPicturePlanar8u709FullRange = ae_sys::PrPixelFormat_PrPixelFormat_YUV_420_MPEG4_FIELD_PICTURE_PLANAR_8u_709_FullRange,
NtscDv25 = ae_sys::PrPixelFormat_PrPixelFormat_NTSCDV25,
PalDv25 = ae_sys::PrPixelFormat_PrPixelFormat_PALDV25,
NtscDv50 = ae_sys::PrPixelFormat_PrPixelFormat_NTSCDV50,
PalDv50 = ae_sys::PrPixelFormat_PrPixelFormat_PALDV50,
NtscDv100_720p = ae_sys::PrPixelFormat_PrPixelFormat_NTSCDV100_720p,
PalDv100_720p = ae_sys::PrPixelFormat_PrPixelFormat_PALDV100_720p,
NtscDv100_1080i = ae_sys::PrPixelFormat_PrPixelFormat_NTSCDV100_1080i,
PalDv100_1080i = ae_sys::PrPixelFormat_PrPixelFormat_PALDV100_1080i,
Raw = ae_sys::PrPixelFormat_PrPixelFormat_Raw,
Invalid = ae_sys::PrPixelFormat_PrPixelFormat_Invalid,
Any = ae_sys::PrPixelFormat_PrPixelFormat_Any,
}
}