EyeAI
Loading...
Searching...
No Matches
TensorBuffer< T, Format, FORMAT_CONSTANT > Struct Template Reference

#include <TensorBuffer.hpp>

Public Member Functions

 TensorBuffer (std::variant< std::shared_ptr< std::vector< T > >, std::span< T > > data)
 
 TensorBuffer (std::span< T > data)
 
 TensorBuffer (std::shared_ptr< std::vector< T > > data)
 
 TensorBuffer (std::vector< T > &&data)
 
 TensorBuffer (const TensorBuffer &)=default
 
 TensorBuffer (TensorBuffer &&)=default
 
TensorBufferoperator= (const TensorBuffer &)=default
 
TensorBufferoperator= (TensorBuffer &&)=default
 
 ~TensorBuffer ()=default
 
template<Format NEW_FORMAT>
TensorBuffer< T, Format, NEW_FORMAT > convert_format () const
 
std::span< T > data ()
 
std::span< const T > data () const
 

Detailed Description

template<typename T, typename Format, Format FORMAT_CONSTANT>
struct TensorBuffer< T, Format, FORMAT_CONSTANT >

non owning buffer of T, lifetime of underlying std::span<T> should be managed externally

Constructor & Destructor Documentation

◆ TensorBuffer() [1/6]

template<typename T, typename Format, Format FORMAT_CONSTANT>
TensorBuffer< T, Format, FORMAT_CONSTANT >::TensorBuffer ( std::variant< std::shared_ptr< std::vector< T > >, std::span< T > > data)
inlineexplicit

◆ TensorBuffer() [2/6]

template<typename T, typename Format, Format FORMAT_CONSTANT>
TensorBuffer< T, Format, FORMAT_CONSTANT >::TensorBuffer ( std::span< T > data)
inlineexplicit

◆ TensorBuffer() [3/6]

template<typename T, typename Format, Format FORMAT_CONSTANT>
TensorBuffer< T, Format, FORMAT_CONSTANT >::TensorBuffer ( std::shared_ptr< std::vector< T > > data)
inlineexplicit

◆ TensorBuffer() [4/6]

template<typename T, typename Format, Format FORMAT_CONSTANT>
TensorBuffer< T, Format, FORMAT_CONSTANT >::TensorBuffer ( std::vector< T > && data)
inlineexplicit

◆ TensorBuffer() [5/6]

template<typename T, typename Format, Format FORMAT_CONSTANT>
TensorBuffer< T, Format, FORMAT_CONSTANT >::TensorBuffer ( const TensorBuffer< T, Format, FORMAT_CONSTANT > & )
default

◆ TensorBuffer() [6/6]

template<typename T, typename Format, Format FORMAT_CONSTANT>
TensorBuffer< T, Format, FORMAT_CONSTANT >::TensorBuffer ( TensorBuffer< T, Format, FORMAT_CONSTANT > && )
default

◆ ~TensorBuffer()

template<typename T, typename Format, Format FORMAT_CONSTANT>
TensorBuffer< T, Format, FORMAT_CONSTANT >::~TensorBuffer ( )
default

Member Function Documentation

◆ convert_format()

template<typename T, typename Format, Format FORMAT_CONSTANT>
template<Format NEW_FORMAT>
TensorBuffer< T, Format, NEW_FORMAT > TensorBuffer< T, Format, FORMAT_CONSTANT >::convert_format ( ) const
inlinenodiscard

◆ data() [1/2]

template<typename T, typename Format, Format FORMAT_CONSTANT>
std::span< T > TensorBuffer< T, Format, FORMAT_CONSTANT >::data ( )
inlinenodiscard

◆ data() [2/2]

template<typename T, typename Format, Format FORMAT_CONSTANT>
std::span< const T > TensorBuffer< T, Format, FORMAT_CONSTANT >::data ( ) const
inlinenodiscard

◆ operator=() [1/2]

template<typename T, typename Format, Format FORMAT_CONSTANT>
TensorBuffer & TensorBuffer< T, Format, FORMAT_CONSTANT >::operator= ( const TensorBuffer< T, Format, FORMAT_CONSTANT > & )
default

◆ operator=() [2/2]

template<typename T, typename Format, Format FORMAT_CONSTANT>
TensorBuffer & TensorBuffer< T, Format, FORMAT_CONSTANT >::operator= ( TensorBuffer< T, Format, FORMAT_CONSTANT > && )
default