rutabaga_gfx/
renderer_utils.rs

1// Copyright 2020 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
5//! renderer_utils: Utility functions and structs used by virgl_renderer and gfxstream.
6
7use crate::rutabaga_os::SafeDescriptor;
8use crate::rutabaga_utils::RutabagaDebugHandler;
9use crate::rutabaga_utils::RutabagaError;
10use crate::rutabaga_utils::RutabagaFenceHandler;
11use crate::rutabaga_utils::RutabagaResult;
12
13#[repr(C)]
14#[derive(Debug, Copy, Clone)]
15pub struct VirglBox {
16    pub x: u32,
17    pub y: u32,
18    pub z: u32,
19    pub w: u32,
20    pub h: u32,
21    pub d: u32,
22}
23
24pub fn ret_to_res(ret: i32) -> RutabagaResult<()> {
25    match ret {
26        0 => Ok(()),
27        _ => Err(RutabagaError::ComponentError(ret)),
28    }
29}
30
31pub struct RutabagaCookie {
32    pub render_server_fd: Option<SafeDescriptor>,
33    pub fence_handler: Option<RutabagaFenceHandler>,
34    pub debug_handler: Option<RutabagaDebugHandler>,
35}