pub struct RgaBuffer { /* private fields */ }Expand description
一个描述 RGA 内存缓冲对象的类型。
Implementations§
Source§impl RgaBuffer
impl RgaBuffer
Sourcepub fn new(
rga: Arc<Rga>,
width: i32,
height: i32,
bpp: i32,
) -> Result<Self, Error>
pub fn new( rga: Arc<Rga>, width: i32, height: i32, bpp: i32, ) -> Result<Self, Error>
创建一个新的 RGA 内存缓冲对象。
§Examples
use rkrga::{Rga, RgaBuffer};
use std::sync::Arc;
let rga = Arc::new(Rga::new().unwrap());
let mut bo = RgaBuffer::new(Arc::clone(&rga), 1920, 1080, 32); // 1920x1080 RGBA8888
bo.map().unwrap();
assert_eq!(bo.len(), 1920 * 1080 * 4);
assert_eq!(bo.as_ptr(), std::ptr::null());
bo.unmap();Sourcepub fn new_mapped(
rga: Arc<Rga>,
width: i32,
height: i32,
bpp: i32,
) -> Result<Self, Error>
pub fn new_mapped( rga: Arc<Rga>, width: i32, height: i32, bpp: i32, ) -> Result<Self, Error>
创建一个新的且已映射到用户空间的 RGA 内存缓冲对象。
Sourcepub fn with_rect(rga: Arc<Rga>, rect: &RgaRect) -> Result<Self, Error>
pub fn with_rect(rga: Arc<Rga>, rect: &RgaRect) -> Result<Self, Error>
为指定的 RGA 图像区域创建一个 RGA 内存缓冲对象。
Sourcepub fn with_rect_mapped(rga: Arc<Rga>, rect: &RgaRect) -> Result<Self, Error>
pub fn with_rect_mapped(rga: Arc<Rga>, rect: &RgaRect) -> Result<Self, Error>
为指定的 RGA 图像区域创建一个 RGA 内存缓冲对象。
Sourcepub fn as_mut_ptr<T>(&mut self) -> *mut T
pub fn as_mut_ptr<T>(&mut self) -> *mut T
返回指定类型的映射到用户空间的可读写地址。
Sourcepub fn as_mut_slice<T>(&mut self) -> &mut [T]
pub fn as_mut_slice<T>(&mut self) -> &mut [T]
返回指定类型的映射到用户空间的可读写数组切片。
Trait Implementations§
Auto Trait Implementations§
impl Freeze for RgaBuffer
impl RefUnwindSafe for RgaBuffer
impl !Send for RgaBuffer
impl !Sync for RgaBuffer
impl Unpin for RgaBuffer
impl UnwindSafe for RgaBuffer
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more