docs: added drm/legacy
This commit is contained in:
parent
174c150887
commit
3b92e351b1
|
@ -1,13 +1,22 @@
|
|||
use super::{DevPath, Device, DeviceHandler, RawDevice, Surface};
|
||||
//!
|
||||
//! [`RawDevice`](../trait.RawDevice.html) and [`RawSurface`](../trait.RawSurface.html)
|
||||
//! implementations using the legacy mode-setting infrastructure.
|
||||
//!
|
||||
//! Usually this implementation will be wrapped into a [`GbmDevice`](../gbm/struct.GbmDevice.html).
|
||||
//! Take a look at `anvil`s source code for an example of this.
|
||||
//!
|
||||
//! For an example how to use this standalone, take a look at the `raw_drm` example.
|
||||
//!
|
||||
|
||||
use drm::control::{connector, crtc, encoder, Device as ControlDevice, Mode, ResourceHandles, ResourceInfo};
|
||||
use super::{DevPath, Device, DeviceHandler, RawDevice};
|
||||
|
||||
use drm::control::{connector, crtc, encoder, Device as ControlDevice, ResourceHandles, ResourceInfo};
|
||||
use drm::Device as BasicDevice;
|
||||
use nix::libc::dev_t;
|
||||
use nix::sys::stat::fstat;
|
||||
|
||||
use std::cell::RefCell;
|
||||
use std::collections::{HashMap, HashSet};
|
||||
use std::iter::FromIterator;
|
||||
use std::os::unix::io::{AsRawFd, RawFd};
|
||||
use std::rc::{Rc, Weak};
|
||||
use std::sync::atomic::{AtomicBool, Ordering};
|
||||
|
@ -23,6 +32,7 @@ use self::error::*;
|
|||
#[cfg(feature = "backend_session")]
|
||||
pub mod session;
|
||||
|
||||
/// Open raw drm device utilizing legacy mode-setting
|
||||
pub struct LegacyDrmDevice<A: AsRawFd + 'static> {
|
||||
dev: Rc<Dev<A>>,
|
||||
dev_id: dev_t,
|
||||
|
|
|
@ -1,4 +1,9 @@
|
|||
use drm::control::{connector, crtc};
|
||||
//!
|
||||
//! Support to register an open [`LegacyDrmDevice`](../struct.LegacyDrmDevice.html)
|
||||
//! to an open [`Session`](../../session/trait.Session.html).
|
||||
//!
|
||||
|
||||
use drm::control::{crtc};
|
||||
use drm::Device as BasicDevice;
|
||||
use nix::libc::dev_t;
|
||||
use nix::sys::stat;
|
||||
|
@ -12,7 +17,9 @@ use std::sync::Arc;
|
|||
use super::{Dev, LegacyDrmDevice, LegacyDrmSurfaceInternal};
|
||||
use backend::session::{AsSessionObserver, SessionObserver};
|
||||
|
||||
/// `SessionObserver` linked to the `DrmDevice` it was created from.
|
||||
/// [`SessionObserver`](../../session/trait.SessionObserver.html)
|
||||
/// linked to the [`LegacyDrmDevice`](../struct.LegacyDrmDevice.html)
|
||||
/// it was created from.
|
||||
pub struct LegacyDrmDeviceObserver<A: AsRawFd + 'static> {
|
||||
dev: Weak<Dev<A>>,
|
||||
dev_id: dev_t,
|
||||
|
|
|
@ -233,17 +233,9 @@ impl<A: AsRawFd + 'static> Drop for LegacyDrmSurfaceInternal<A> {
|
|||
}
|
||||
}
|
||||
|
||||
/// Open raw crtc utilizing legacy mode-setting
|
||||
pub struct LegacyDrmSurface<A: AsRawFd + 'static>(pub(super) Rc<LegacyDrmSurfaceInternal<A>>);
|
||||
|
||||
impl<A: AsRawFd + 'static> AsRawFd for LegacyDrmSurface<A> {
|
||||
fn as_raw_fd(&self) -> RawFd {
|
||||
self.0.as_raw_fd()
|
||||
}
|
||||
}
|
||||
|
||||
impl<A: AsRawFd + 'static> BasicDevice for LegacyDrmSurface<A> {}
|
||||
impl<A: AsRawFd + 'static> ControlDevice for LegacyDrmSurface<A> {}
|
||||
|
||||
impl<'a, A: AsRawFd + 'static> CursorBackend<'a> for LegacyDrmSurface<A> {
|
||||
type CursorFormat = &'a Buffer;
|
||||
type Error = Error;
|
||||
|
|
Loading…
Reference in New Issue