@@ -11,10 +11,13 @@ use binaryninjacore_sys::*;
1111use std:: ffi:: { c_char, c_void} ;
1212use std:: ptr:: NonNull ;
1313
14+ pub type RenderLayerDefaultEnableState = BNRenderLayerDefaultEnableState ;
15+
1416/// Register a [`RenderLayer`] with the API.
1517pub fn register_render_layer < S : BnStrCompatible , T : RenderLayer > (
1618 name : S ,
1719 render_layer : T ,
20+ enable_state : RenderLayerDefaultEnableState ,
1821) -> ( & ' static mut T , CoreRenderLayer ) {
1922 let render_layer = Box :: leak ( Box :: new ( render_layer) ) ;
2023 let mut callback = BNRenderLayerCallbacks {
@@ -27,6 +30,7 @@ pub fn register_render_layer<S: BnStrCompatible, T: RenderLayer>(
2730 BNRegisterRenderLayer (
2831 name. into_bytes_with_nul ( ) . as_ref ( ) . as_ptr ( ) as * const _ ,
2932 & mut callback,
33+ enable_state,
3034 )
3135 } ;
3236 let core = CoreRenderLayer :: from_raw ( NonNull :: new ( result) . unwrap ( ) ) ;
@@ -244,8 +248,6 @@ pub struct CoreRenderLayer {
244248 pub ( crate ) handle : NonNull < BNRenderLayer > ,
245249}
246250
247- pub type RenderLayerDefaultEnableState = BNRenderLayerDefaultEnableState ;
248-
249251impl CoreRenderLayer {
250252 pub fn from_raw ( handle : NonNull < BNRenderLayer > ) -> Self {
251253 Self { handle }
@@ -267,10 +269,6 @@ impl CoreRenderLayer {
267269 unsafe { BNGetRenderLayerDefaultEnableState ( self . handle . as_ptr ( ) ) }
268270 }
269271
270- pub fn set_default_enable_state ( & self , enable_state : RenderLayerDefaultEnableState ) {
271- unsafe { BNSetRenderLayerDefaultEnableState ( self . handle . as_ptr ( ) , enable_state) }
272- }
273-
274272 pub fn apply_to_flow_graph ( & self , graph : & FlowGraph ) {
275273 unsafe { BNApplyRenderLayerToFlowGraph ( self . handle . as_ptr ( ) , graph. handle ) }
276274 }
0 commit comments