Skip to content

Class emulator::DataView

template <typename T>

ClassList > emulator > DataView

Non-owning view over contiguous data. More...

  • #include <data_view.hpp>

Public Functions

Type Name
DataView ()
Default constructor: empty view.
DataView (T * data, std::size_t size, DataLayout layout=DataLayout::ROW_MAJOR)
Construct from raw pointer and size.
DataView (const T * data, std::size_t size, DataLayout layout=DataLayout::ROW_MAJOR)
Construct from raw pointer and size (const version)
DataView (std::vector< T > & vec, DataLayout layout=DataLayout::ROW_MAJOR)
Construct from std::vector (non-owning)
DataView (const std::vector< T > & vec, DataLayout layout=DataLayout::ROW_MAJOR)
Construct from const std::vector (non-owning)
T * begin ()
Iterator support.
const T * begin () const
T * data ()
Get raw pointer to data.
const T * data () const
bool empty () const
Check if view is empty.
T * end ()
const T * end () const
DataLayout layout () const
Get memory layout.
T & operator[] (std::size_t idx)
Element access (bounds checking in debug builds)
const T & operator[] (std::size_t idx) const
std::size_t size () const
Get number of elements.

Detailed Description

Public Functions Documentation

function DataView [1/5]

Default constructor: empty view.

inline emulator::DataView::DataView () 


function DataView [2/5]

Construct from raw pointer and size.

inline emulator::DataView::DataView (
    T * data,
    std::size_t size,
    DataLayout layout=DataLayout::ROW_MAJOR
) 


function DataView [3/5]

Construct from raw pointer and size (const version)

inline emulator::DataView::DataView (
    const T * data,
    std::size_t size,
    DataLayout layout=DataLayout::ROW_MAJOR
) 


function DataView [4/5]

Construct from std::vector (non-owning)

inline explicit emulator::DataView::DataView (
    std::vector< T > & vec,
    DataLayout layout=DataLayout::ROW_MAJOR
) 


function DataView [5/5]

Construct from const std::vector (non-owning)

inline explicit emulator::DataView::DataView (
    const std::vector< T > & vec,
    DataLayout layout=DataLayout::ROW_MAJOR
) 


function begin [1/2]

Iterator support.

inline T * emulator::DataView::begin () 


function begin [2/2]

inline const T * emulator::DataView::begin () const

function data [1/2]

Get raw pointer to data.

inline T * emulator::DataView::data () 


function data [2/2]

inline const T * emulator::DataView::data () const

function empty

Check if view is empty.

inline bool emulator::DataView::empty () const


function end [1/2]

inline T * emulator::DataView::end () 

function end [2/2]

inline const T * emulator::DataView::end () const

function layout

Get memory layout.

inline DataLayout emulator::DataView::layout () const


function operator[]

Element access (bounds checking in debug builds)

inline T & emulator::DataView::operator[] (
    std::size_t idx
) 


function operator[]

inline const T & emulator::DataView::operator[] (
    std::size_t idx
) const

function size

Get number of elements.

inline std::size_t emulator::DataView::size () const



The documentation for this class was generated from the following file components/emulator_comps/common/src/data_view.hpp