summaryrefslogtreecommitdiffstats
path: root/third_party/rust/cubeb-sys/src/log.rs
diff options
context:
space:
mode:
Diffstat (limited to 'third_party/rust/cubeb-sys/src/log.rs')
-rw-r--r--third_party/rust/cubeb-sys/src/log.rs29
1 files changed, 29 insertions, 0 deletions
diff --git a/third_party/rust/cubeb-sys/src/log.rs b/third_party/rust/cubeb-sys/src/log.rs
new file mode 100644
index 0000000000..d1a1c4e448
--- /dev/null
+++ b/third_party/rust/cubeb-sys/src/log.rs
@@ -0,0 +1,29 @@
+// Copyright © 2017-2018 Mozilla Foundation
+//
+// This program is made available under an ISC-style license. See the
+// accompanying file LICENSE for details.
+
+use std::os::raw::{c_char, c_int, c_void};
+
+cubeb_enum! {
+ pub enum cubeb_log_level {
+ CUBEB_LOG_DISABLED = 0,
+ CUBEB_LOG_NORMAL = 1,
+ CUBEB_LOG_VERBOSE = 2,
+ }
+}
+
+pub type cubeb_log_callback = Option<unsafe extern "C" fn(*const c_char, ...)>;
+
+extern "C" {
+ pub fn cubeb_set_log_callback(
+ log_level: cubeb_log_level,
+ log_callback: cubeb_log_callback,
+ ) -> c_int;
+
+ pub fn cubeb_log_get_callback() -> cubeb_log_callback;
+ pub fn cubeb_log_get_level() -> cubeb_log_level;
+
+ pub fn cubeb_async_log_reset_threads(_: c_void);
+ pub fn cubeb_async_log(msg: *const c_char, ...);
+}