IDirect3DVolume9Ext

Trait IDirect3DVolume9Ext 

Source
pub trait IDirect3DVolume9Ext: AsSafe<IDirect3DVolume9> {
    // Provided methods
    fn free_private_data(&self, guid: &GUID) -> Result<(), MethodError> { ... }
    fn get_container<C: Raw>(&self) -> Result<C, MethodError>
       where C::Raw: Interface { ... }
    fn get_desc(&self) -> Result<VolumeDesc, MethodError> { ... }
    fn get_device(&self) -> Result<Device, MethodError> { ... }
    fn get_private_data_inplace<'s>(
        &self,
        guid: &GUID,
        data: &'s mut [u8],
    ) -> Result<&'s [u8], MethodError> { ... }
    fn set_private_data(
        &self,
        guid: &GUID,
        data: &[u8],
    ) -> Result<(), MethodError> { ... }
    unsafe fn lock_box_unchecked(
        &self,
        box_: impl IntoBoxOrFull,
        flags: impl Into<Lock>,
    ) -> Result<D3DLOCKED_BOX, MethodError> { ... }
    fn unlock_box(&self) -> Result<(), MethodError> { ... }
}
Expand description

[docs.microsoft.com] IDirect3DVolume9 extension methods

§Methods

thindxdocs.microsoft.comDescription
free_private_dataFreePrivateDataFrees the specified private data associated with this volume.
get_containerGetContainerProvides access to the parent volume texture object, if this surface is a child level of a volume texture.
get_descGetDescRetrieves a description of the volume.
get_deviceGetDeviceRetrieves the device associated with a volume.
get_private_data_inplaceGetPrivateDataCopies the private data associated with the volume to a provided buffer.
get_private_data_comGetPrivateDataRetrieves a COM object associated with the volume.
lock_box_uncheckedLockBoxLocks a box on a volume resource.
set_private_dataSetPrivateDataAssociates data with the volume that is intended for use by the application, not by Direct3D.
set_debug_nameSetPrivateDataAssociates a debug name with the volume for graphics debuggers.
set_private_data_comSetPrivateDataAssociates a COM object with the resource for use by the application.
unlock_boxUnlockBoxUnlocks a box on a volume resource.

Provided Methods§

Source

fn free_private_data(&self, guid: &GUID) -> Result<(), MethodError>

[docs.microsoft.com] IDirect3DVolume9::FreePrivateData

Frees the specified private data associated with this resource.

§Returns
Source

fn get_container<C: Raw>(&self) -> Result<C, MethodError>
where C::Raw: Interface,

[docs.microsoft.com] IDirect3DVolume9::GetContainer

Provides access to the parent volume texture object, if this surface is a child level of a volume texture.

§Returns
Source

fn get_desc(&self) -> Result<VolumeDesc, MethodError>

[docs.microsoft.com] IDirect3DVolume9::GetDesc

Retrieves a description of the volume.

§Returns
Source

fn get_device(&self) -> Result<Device, MethodError>

[docs.microsoft.com] IDirect3DVolume9::GetDevice

Retrieves the device associated with a resource.

§Returns
Source

fn get_private_data_inplace<'s>( &self, guid: &GUID, data: &'s mut [u8], ) -> Result<&'s [u8], MethodError>

[docs.microsoft.com] IDirect3DVolume9::GetPrivateData

Copies the private data associated with the resource to a provided buffer.

§Returns
Source

fn set_private_data(&self, guid: &GUID, data: &[u8]) -> Result<(), MethodError>

[docs.microsoft.com] IDirect3DVolume9::SetPrivateData

§Returns
Source

unsafe fn lock_box_unchecked( &self, box_: impl IntoBoxOrFull, flags: impl Into<Lock>, ) -> Result<D3DLOCKED_BOX, MethodError>

[docs.microsoft.com] IDirect3DVolume9::LockBox

§⚠️ Safety ⚠️
  • box_ must be .. or a valid subregion of the volume in question
  • self should be lockable in the style specified by flags… and not already locked?
  • self may need to be unlocked again before being bound, drawn, or released
§Returns
Source

fn unlock_box(&self) -> Result<(), MethodError>

[docs.microsoft.com] IDirect3DVolume9::UnlockBox

Unlocks a box on a volume resource.

§Returns

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§