@@ -13910,6 +13910,325 @@ extern "C" {
13910
13910
}
13911
13911
#[repr(C)]
13912
13912
#[derive(Debug, Copy, Clone)]
13913
+ pub struct ASurfaceControl {
13914
+ _unused: [u8; 0],
13915
+ }
13916
+ extern "C" {
13917
+ pub fn ASurfaceControl_createFromWindow(
13918
+ parent: *mut ANativeWindow,
13919
+ debug_name: *const ::std::os::raw::c_char,
13920
+ ) -> *mut ASurfaceControl;
13921
+ }
13922
+ extern "C" {
13923
+ pub fn ASurfaceControl_create(
13924
+ parent: *mut ASurfaceControl,
13925
+ debug_name: *const ::std::os::raw::c_char,
13926
+ ) -> *mut ASurfaceControl;
13927
+ }
13928
+ extern "C" {
13929
+ pub fn ASurfaceControl_acquire(surface_control: *mut ASurfaceControl);
13930
+ }
13931
+ extern "C" {
13932
+ pub fn ASurfaceControl_release(surface_control: *mut ASurfaceControl);
13933
+ }
13934
+ #[repr(C)]
13935
+ #[derive(Debug, Copy, Clone)]
13936
+ pub struct ASurfaceTransaction {
13937
+ _unused: [u8; 0],
13938
+ }
13939
+ extern "C" {
13940
+ pub fn ASurfaceTransaction_create() -> *mut ASurfaceTransaction;
13941
+ }
13942
+ extern "C" {
13943
+ pub fn ASurfaceTransaction_delete(transaction: *mut ASurfaceTransaction);
13944
+ }
13945
+ extern "C" {
13946
+ pub fn ASurfaceTransaction_apply(transaction: *mut ASurfaceTransaction);
13947
+ }
13948
+ #[repr(C)]
13949
+ #[derive(Debug, Copy, Clone)]
13950
+ pub struct ASurfaceTransactionStats {
13951
+ _unused: [u8; 0],
13952
+ }
13953
+ pub type ASurfaceTransaction_OnComplete = ::std::option::Option<
13954
+ unsafe extern "C" fn(
13955
+ context: *mut ::std::os::raw::c_void,
13956
+ stats: *mut ASurfaceTransactionStats,
13957
+ ),
13958
+ >;
13959
+ pub type ASurfaceTransaction_OnCommit = ::std::option::Option<
13960
+ unsafe extern "C" fn(
13961
+ context: *mut ::std::os::raw::c_void,
13962
+ stats: *mut ASurfaceTransactionStats,
13963
+ ),
13964
+ >;
13965
+ extern "C" {
13966
+ pub fn ASurfaceTransactionStats_getLatchTime(
13967
+ surface_transaction_stats: *mut ASurfaceTransactionStats,
13968
+ ) -> i64;
13969
+ }
13970
+ extern "C" {
13971
+ pub fn ASurfaceTransactionStats_getPresentFenceFd(
13972
+ surface_transaction_stats: *mut ASurfaceTransactionStats,
13973
+ ) -> ::std::os::raw::c_int;
13974
+ }
13975
+ extern "C" {
13976
+ pub fn ASurfaceTransactionStats_getASurfaceControls(
13977
+ surface_transaction_stats: *mut ASurfaceTransactionStats,
13978
+ outASurfaceControls: *mut *mut *mut ASurfaceControl,
13979
+ outASurfaceControlsSize: *mut usize,
13980
+ );
13981
+ }
13982
+ extern "C" {
13983
+ pub fn ASurfaceTransactionStats_releaseASurfaceControls(
13984
+ surface_controls: *mut *mut ASurfaceControl,
13985
+ );
13986
+ }
13987
+ extern "C" {
13988
+ pub fn ASurfaceTransactionStats_getAcquireTime(
13989
+ surface_transaction_stats: *mut ASurfaceTransactionStats,
13990
+ surface_control: *mut ASurfaceControl,
13991
+ ) -> i64;
13992
+ }
13993
+ extern "C" {
13994
+ pub fn ASurfaceTransactionStats_getPreviousReleaseFenceFd(
13995
+ surface_transaction_stats: *mut ASurfaceTransactionStats,
13996
+ surface_control: *mut ASurfaceControl,
13997
+ ) -> ::std::os::raw::c_int;
13998
+ }
13999
+ extern "C" {
14000
+ pub fn ASurfaceTransaction_setOnComplete(
14001
+ transaction: *mut ASurfaceTransaction,
14002
+ context: *mut ::std::os::raw::c_void,
14003
+ func: ASurfaceTransaction_OnComplete,
14004
+ );
14005
+ }
14006
+ extern "C" {
14007
+ pub fn ASurfaceTransaction_setOnCommit(
14008
+ transaction: *mut ASurfaceTransaction,
14009
+ context: *mut ::std::os::raw::c_void,
14010
+ func: ASurfaceTransaction_OnCommit,
14011
+ );
14012
+ }
14013
+ extern "C" {
14014
+ pub fn ASurfaceTransaction_reparent(
14015
+ transaction: *mut ASurfaceTransaction,
14016
+ surface_control: *mut ASurfaceControl,
14017
+ new_parent: *mut ASurfaceControl,
14018
+ );
14019
+ }
14020
+ impl ASurfaceTransactionVisibility {
14021
+ pub const ASURFACE_TRANSACTION_VISIBILITY_HIDE: ASurfaceTransactionVisibility =
14022
+ ASurfaceTransactionVisibility(0);
14023
+ }
14024
+ impl ASurfaceTransactionVisibility {
14025
+ pub const ASURFACE_TRANSACTION_VISIBILITY_SHOW: ASurfaceTransactionVisibility =
14026
+ ASurfaceTransactionVisibility(1);
14027
+ }
14028
+ #[repr(transparent)]
14029
+ #[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
14030
+ pub struct ASurfaceTransactionVisibility(pub i8);
14031
+ extern "C" {
14032
+ pub fn ASurfaceTransaction_setVisibility(
14033
+ transaction: *mut ASurfaceTransaction,
14034
+ surface_control: *mut ASurfaceControl,
14035
+ visibility: ASurfaceTransactionVisibility,
14036
+ );
14037
+ }
14038
+ extern "C" {
14039
+ pub fn ASurfaceTransaction_setZOrder(
14040
+ transaction: *mut ASurfaceTransaction,
14041
+ surface_control: *mut ASurfaceControl,
14042
+ z_order: i32,
14043
+ );
14044
+ }
14045
+ extern "C" {
14046
+ pub fn ASurfaceTransaction_setBuffer(
14047
+ transaction: *mut ASurfaceTransaction,
14048
+ surface_control: *mut ASurfaceControl,
14049
+ buffer: *mut AHardwareBuffer,
14050
+ acquire_fence_fd: ::std::os::raw::c_int,
14051
+ );
14052
+ }
14053
+ extern "C" {
14054
+ pub fn ASurfaceTransaction_setColor(
14055
+ transaction: *mut ASurfaceTransaction,
14056
+ surface_control: *mut ASurfaceControl,
14057
+ r: f32,
14058
+ g: f32,
14059
+ b: f32,
14060
+ alpha: f32,
14061
+ dataspace: ADataSpace,
14062
+ );
14063
+ }
14064
+ extern "C" {
14065
+ pub fn ASurfaceTransaction_setGeometry(
14066
+ transaction: *mut ASurfaceTransaction,
14067
+ surface_control: *mut ASurfaceControl,
14068
+ source: *const ARect,
14069
+ destination: *const ARect,
14070
+ transform: i32,
14071
+ );
14072
+ }
14073
+ extern "C" {
14074
+ pub fn ASurfaceTransaction_setCrop(
14075
+ transaction: *mut ASurfaceTransaction,
14076
+ surface_control: *mut ASurfaceControl,
14077
+ crop: *const ARect,
14078
+ );
14079
+ }
14080
+ extern "C" {
14081
+ pub fn ASurfaceTransaction_setPosition(
14082
+ transaction: *mut ASurfaceTransaction,
14083
+ surface_control: *mut ASurfaceControl,
14084
+ x: i32,
14085
+ y: i32,
14086
+ );
14087
+ }
14088
+ extern "C" {
14089
+ pub fn ASurfaceTransaction_setBufferTransform(
14090
+ transaction: *mut ASurfaceTransaction,
14091
+ surface_control: *mut ASurfaceControl,
14092
+ transform: i32,
14093
+ );
14094
+ }
14095
+ extern "C" {
14096
+ pub fn ASurfaceTransaction_setScale(
14097
+ transaction: *mut ASurfaceTransaction,
14098
+ surface_control: *mut ASurfaceControl,
14099
+ xScale: f32,
14100
+ yScale: f32,
14101
+ );
14102
+ }
14103
+ impl ASurfaceTransactionTransparency {
14104
+ pub const ASURFACE_TRANSACTION_TRANSPARENCY_TRANSPARENT: ASurfaceTransactionTransparency =
14105
+ ASurfaceTransactionTransparency(0);
14106
+ }
14107
+ impl ASurfaceTransactionTransparency {
14108
+ pub const ASURFACE_TRANSACTION_TRANSPARENCY_TRANSLUCENT: ASurfaceTransactionTransparency =
14109
+ ASurfaceTransactionTransparency(1);
14110
+ }
14111
+ impl ASurfaceTransactionTransparency {
14112
+ pub const ASURFACE_TRANSACTION_TRANSPARENCY_OPAQUE: ASurfaceTransactionTransparency =
14113
+ ASurfaceTransactionTransparency(2);
14114
+ }
14115
+ #[repr(transparent)]
14116
+ #[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)]
14117
+ pub struct ASurfaceTransactionTransparency(pub i8);
14118
+ extern "C" {
14119
+ pub fn ASurfaceTransaction_setBufferTransparency(
14120
+ transaction: *mut ASurfaceTransaction,
14121
+ surface_control: *mut ASurfaceControl,
14122
+ transparency: ASurfaceTransactionTransparency,
14123
+ );
14124
+ }
14125
+ extern "C" {
14126
+ pub fn ASurfaceTransaction_setDamageRegion(
14127
+ transaction: *mut ASurfaceTransaction,
14128
+ surface_control: *mut ASurfaceControl,
14129
+ rects: *const ARect,
14130
+ count: u32,
14131
+ );
14132
+ }
14133
+ extern "C" {
14134
+ pub fn ASurfaceTransaction_setDesiredPresentTime(
14135
+ transaction: *mut ASurfaceTransaction,
14136
+ desiredPresentTime: i64,
14137
+ );
14138
+ }
14139
+ extern "C" {
14140
+ pub fn ASurfaceTransaction_setBufferAlpha(
14141
+ transaction: *mut ASurfaceTransaction,
14142
+ surface_control: *mut ASurfaceControl,
14143
+ alpha: f32,
14144
+ );
14145
+ }
14146
+ extern "C" {
14147
+ pub fn ASurfaceTransaction_setBufferDataSpace(
14148
+ transaction: *mut ASurfaceTransaction,
14149
+ surface_control: *mut ASurfaceControl,
14150
+ data_space: ADataSpace,
14151
+ );
14152
+ }
14153
+ extern "C" {
14154
+ pub fn ASurfaceTransaction_setHdrMetadata_smpte2086(
14155
+ transaction: *mut ASurfaceTransaction,
14156
+ surface_control: *mut ASurfaceControl,
14157
+ metadata: *mut AHdrMetadata_smpte2086,
14158
+ );
14159
+ }
14160
+ extern "C" {
14161
+ pub fn ASurfaceTransaction_setHdrMetadata_cta861_3(
14162
+ transaction: *mut ASurfaceTransaction,
14163
+ surface_control: *mut ASurfaceControl,
14164
+ metadata: *mut AHdrMetadata_cta861_3,
14165
+ );
14166
+ }
14167
+ extern "C" {
14168
+ pub fn ASurfaceTransaction_setExtendedRangeBrightness(
14169
+ transaction: *mut ASurfaceTransaction,
14170
+ surface_control: *mut ASurfaceControl,
14171
+ currentBufferRatio: f32,
14172
+ desiredRatio: f32,
14173
+ );
14174
+ }
14175
+ extern "C" {
14176
+ pub fn ASurfaceTransaction_setDesiredHdrHeadroom(
14177
+ transaction: *mut ASurfaceTransaction,
14178
+ surface_control: *mut ASurfaceControl,
14179
+ desiredHeadroom: f32,
14180
+ );
14181
+ }
14182
+ extern "C" {
14183
+ pub fn ASurfaceTransaction_setFrameRate(
14184
+ transaction: *mut ASurfaceTransaction,
14185
+ surface_control: *mut ASurfaceControl,
14186
+ frameRate: f32,
14187
+ compatibility: i8,
14188
+ );
14189
+ }
14190
+ extern "C" {
14191
+ pub fn ASurfaceTransaction_setFrameRateWithChangeStrategy(
14192
+ transaction: *mut ASurfaceTransaction,
14193
+ surface_control: *mut ASurfaceControl,
14194
+ frameRate: f32,
14195
+ compatibility: i8,
14196
+ changeFrameRateStrategy: i8,
14197
+ );
14198
+ }
14199
+ extern "C" {
14200
+ pub fn ASurfaceTransaction_clearFrameRate(
14201
+ transaction: *mut ASurfaceTransaction,
14202
+ surface_control: *mut ASurfaceControl,
14203
+ );
14204
+ }
14205
+ extern "C" {
14206
+ pub fn ASurfaceTransaction_setEnableBackPressure(
14207
+ transaction: *mut ASurfaceTransaction,
14208
+ surface_control: *mut ASurfaceControl,
14209
+ enableBackPressure: bool,
14210
+ );
14211
+ }
14212
+ extern "C" {
14213
+ pub fn ASurfaceTransaction_setFrameTimeline(
14214
+ transaction: *mut ASurfaceTransaction,
14215
+ vsyncId: AVsyncId,
14216
+ );
14217
+ }
14218
+ extern "C" {
14219
+ pub fn ASurfaceControl_fromJava(
14220
+ env: *mut JNIEnv,
14221
+ surfaceControlObj: jobject,
14222
+ ) -> *mut ASurfaceControl;
14223
+ }
14224
+ extern "C" {
14225
+ pub fn ASurfaceTransaction_fromJava(
14226
+ env: *mut JNIEnv,
14227
+ transactionObj: jobject,
14228
+ ) -> *mut ASurfaceTransaction;
14229
+ }
14230
+ #[repr(C)]
14231
+ #[derive(Debug, Copy, Clone)]
13913
14232
pub struct ASurfaceTexture {
13914
14233
_unused: [u8; 0],
13915
14234
}
0 commit comments