kplayer_rust_wrap/kplayer/util/
core.rs1#[allow(dead_code)]
2extern "C" {
3 fn GetPluginVersion() -> i32;
4 fn UpdateArg(key: i32, value: i32) -> i32;
5 fn SetEnable(enable: i32) -> i32;
6 fn Reload() -> i32;
7}
8
9#[allow(dead_code)]
10pub fn get_plugin_version() -> String {
11 unsafe {
12 let version = super::string::DynamicString::receive(GetPluginVersion()).unwrap();
13 version
14 }
15}
16
17#[allow(dead_code)]
18pub fn update_args(key: String, value: String) -> Result<bool, String> {
19 unsafe {
20 let key_index = super::string::DynamicString::from(key.as_bytes()).get_index();
21 let value_index = super::string::DynamicString::from(value.as_bytes()).get_index();
22 let result = UpdateArg(key_index, value_index);
23 if result != 0 {
24 let err = super::string::DynamicString::receive(result).unwrap();
25 return Err(err);
26 }
27 Ok(true)
28 }
29}
30
31#[allow(dead_code)]
32pub fn set_enable(enable: bool) -> Result<bool, String> {
33 unsafe {
34 let mut enable_prams = 1;
35 if !enable {
36 enable_prams = 0;
37 }
38 let result = SetEnable(enable_prams);
39 if result != 0 {
40 let err = super::string::DynamicString::receive(result).unwrap();
41 return Err(err);
42 }
43 Ok(true)
44 }
45}
46
47#[allow(dead_code)]
48pub fn reload() -> Result<bool, String> {
49 unsafe {
50 let result = Reload();
51 if result != 0 {
52 let err = super::string::DynamicString::receive(result).unwrap();
53 return Err(err);
54 }
55 Ok(true)
56 }
57}