TilingLayout

Trait TilingLayout 

Source
pub trait TilingLayout:
    'static
    + Send
    + Sync
    + Clone
    + Copy
    + TilingValidation {
    // Required methods
    fn get_tile<ES: Numeric>(
        stage: &StridedStage<ES, Self>,
        tile: Coords2d,
        buffer_index: u32,
        ident: StageIdent,
        config: StageMemoryConfig,
    ) -> StridedTile<ES>;
    fn __expand_get_tile<ES: Numeric>(
        scope: &mut Scope,
        stage: <StridedStage<ES, Self> as CubeType>::ExpandType,
        tile: <Coords2d as CubeType>::ExpandType,
        buffer_index: <u32 as CubeType>::ExpandType,
        ident: StageIdent,
        config: StageMemoryConfig,
    ) -> <StridedTile<ES> as CubeType>::ExpandType;
}
Expand description

Describes how tiles are arranged in shared memory.

Required Methods§

Source

fn get_tile<ES: Numeric>( stage: &StridedStage<ES, Self>, tile: Coords2d, buffer_index: u32, ident: StageIdent, config: StageMemoryConfig, ) -> StridedTile<ES>

Returns the tile at shared memory coordinates

Source

fn __expand_get_tile<ES: Numeric>( scope: &mut Scope, stage: <StridedStage<ES, Self> as CubeType>::ExpandType, tile: <Coords2d as CubeType>::ExpandType, buffer_index: <u32 as CubeType>::ExpandType, ident: StageIdent, config: StageMemoryConfig, ) -> <StridedTile<ES> as CubeType>::ExpandType

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§