vm_control/
sys.rs

1// Copyright 2022 The ChromiumOS Authors
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5cfg_if::cfg_if! {
6    if #[cfg(any(target_os = "android", target_os = "linux"))] {
7        pub mod linux;
8        use linux as platform;
9        pub use platform::{VmMemoryMappingRequest, VmMemoryMappingResponse, FsMappingRequest};
10        #[cfg(feature = "gpu")]
11        pub use platform::gpu::UnixDisplayMode as DisplayMode;
12        #[cfg(feature = "gpu")]
13        pub use platform::gpu::UnixMouseMode as MouseMode;
14    } else if #[cfg(windows)] {
15        pub mod windows;
16        pub use windows as platform;
17        #[cfg(feature = "gpu")]
18        pub type DisplayMode = platform::gpu::WinDisplayMode<platform::gpu::DisplayDataProvider>;
19        #[cfg(feature = "gpu")]
20        pub use platform::gpu::WinMouseMode as MouseMode;
21        pub use platform::InitialAudioSessionState;
22    } else {
23        compile_error!("Unsupported platform");
24    }
25}
26
27pub use platform::handle_request;
28pub use platform::handle_request_with_timeout;
29pub use platform::prepare_shared_memory_region;
30pub use platform::should_prepare_memory_region;