tatami_chunked
Helpers to create custom chunked tatami matrices
Loading...
Searching...
No Matches
Public Attributes | List of all members
tatami_chunked::OracularSubsettedSlabCacheSelectionDetails< Index_ > Struct Template Reference

Details on the subset to extract in OracularSubsettedSlabCache. More...

#include <OracularSubsettedSlabCache.hpp>

Public Attributes

OracularSubsettedSlabCacheSelectionType selection
 
Index_ block_start
 
Index_ block_length
 
Index_ block_end
 
std::vector< Index_indices
 
std::unordered_map< Index_, Index_mapping
 

Detailed Description

template<typename Index_>
struct tatami_chunked::OracularSubsettedSlabCacheSelectionDetails< Index_ >

Details on the subset to extract in OracularSubsettedSlabCache.

Template Parameters
Index_Type of row/column index produced by the oracle.

Member Data Documentation

◆ selection

Type of subset to extract from the target dimension of the slab.

◆ block_start

Row/column index representing the start of the contiguous block of the target dimension to be extracted from the slab. Only used if selection is set to OracularSubsettedSlabCacheSelectionType::BLOCK.

Note that the index is relative to the start of the slab, not to the matrix containing the slab, i.e., if the slab consists of rows 10-20 and we want to extract row 11, this will be reported here as an index of 1.

◆ block_length

Length of the contiguous block of the target dimension to be extracted from the slab. Only used if selection is set to OracularSubsettedSlabCacheSelectionType::BLOCK.

◆ block_end

Row/column index representing one-past-the-end of the contiguous block of the target dimension to be extracted from the slab. Only used if selection is set to OracularSubsettedSlabCacheSelectionType::BLOCK. This is also equal to block_start + block_length.

◆ indices

Indices of the target dimension to be extracted from the slab. Guaranteed to be sorted and unique. Only used if selection is set to OracularSubsettedSlabCacheSelectionType::INDEX.

Note that all indices is relative to the start of the slab, not to the matrix containing the slab, i.e., if the slab consists of rows 10-20 and we want to extract row 11, this will be reported here as an index of 1.

◆ mapping

Mapping of indices-to-be-extracted to their positions inside indices. All values of indices are present as keys here where mapping[indices[i]] = i. Only used if selection is set to OracularSubsettedSlabCacheSelectionType::INDEX.


The documentation for this struct was generated from the following file: