Blender V5.0
blender::MutableVArraySpan< T > Class Template Referencefinal

#include <BLI_virtual_array.hh>

Inherits blender::MutableSpan< T >.

Public Member Functions

 MutableVArraySpan ()=default
 MutableVArraySpan (VMutableArray< T > varray, const bool copy_values_to_span=true)
 MutableVArraySpan (MutableVArraySpan &&other)
 ~MutableVArraySpan ()
MutableVArraySpanoperator= (MutableVArraySpan &&other)
const VMutableArray< T > & varray () const
void save ()
void disable_not_applied_warning ()
Public Member Functions inherited from blender::MutableSpan< T >
constexpr MutableSpan ()=default
constexpr MutableSpan (T *start, const int64_t size)
constexpr MutableSpan (std::vector< T > &vector)
template<std::size_t N>
constexpr MutableSpan (std::array< T, N > &array)
template<typename U, BLI_ENABLE_IF((is_span_convertible_pointer_v< U, T >))>
constexpr MutableSpan (MutableSpan< U > span)
constexpr operator Span< T > () const
template<typename U, BLI_ENABLE_IF((is_span_convertible_pointer_v< T, U >))>
constexpr operator Span< U > () const
constexpr int64_t size () const
constexpr int64_t size_in_bytes () const
constexpr bool is_empty () const
constexpr void fill (const T &value) const
template<typename IndexT>
constexpr void fill_indices (Span< IndexT > indices, const T &value) const
constexpr Tdata () const
constexpr Tbegin () const
constexpr Tend () const
constexpr std::reverse_iterator< T * > rbegin () const
constexpr std::reverse_iterator< T * > rend () const
constexpr Toperator[] (const int64_t index) const
constexpr MutableSpan slice (const int64_t start, const int64_t size) const
constexpr MutableSpan slice (IndexRange range) const
constexpr MutableSpan slice_safe (const int64_t start, const int64_t size) const
constexpr MutableSpan slice_safe (IndexRange range) const
constexpr MutableSpan drop_front (const int64_t n) const
constexpr MutableSpan drop_back (const int64_t n) const
constexpr MutableSpan take_front (const int64_t n) const
constexpr MutableSpan take_back (const int64_t n) const
constexpr void reverse () const
constexpr Span< Tas_span () const
constexpr IndexRange index_range () const
constexpr Tfirst () const
constexpr Tlast (const int64_t n=0) const
constexpr int64_t count (const T &value) const
constexpr bool contains (const T &value) const
constexpr bool contains_ptr (const T *ptr) const
constexpr void copy_from (Span< T > values) const
template<typename NewT>
constexpr MutableSpan< NewT > cast () const

Additional Inherited Members

Public Types inherited from blender::MutableSpan< T >
using value_type = T
using pointer = T *
using const_pointer = const T *
using reference = T &
using const_reference = const T &
using iterator = T *
using size_type = int64_t
Protected Attributes inherited from blender::MutableSpan< T >
Tdata_ = nullptr
int64_t size_ = 0

Detailed Description

template<typename T>
class blender::MutableVArraySpan< T >

Same as VArraySpan, but for a mutable span. The important thing to note is that when changing this span, the results might not be immediately reflected in the underlying virtual array (only when the virtual array is a span internally). The save method can be used to write all changes to the underlying virtual array, if necessary.

Definition at line 1176 of file BLI_virtual_array.hh.

Constructor & Destructor Documentation

◆ MutableVArraySpan() [1/3]

template<typename T>
blender::MutableVArraySpan< T >::MutableVArraySpan ( )
default

Referenced by MutableVArraySpan(), and operator=().

◆ MutableVArraySpan() [2/3]

template<typename T>
blender::MutableVArraySpan< T >::MutableVArraySpan ( VMutableArray< T > varray,
const bool copy_values_to_span = true )
inline

◆ MutableVArraySpan() [3/3]

template<typename T>
blender::MutableVArraySpan< T >::MutableVArraySpan ( MutableVArraySpan< T > && other)
inline

◆ ~MutableVArraySpan()

template<typename T>
blender::MutableVArraySpan< T >::~MutableVArraySpan ( )
inline

Member Function Documentation

◆ disable_not_applied_warning()

template<typename T>
void blender::MutableVArraySpan< T >::disable_not_applied_warning ( )
inline

Definition at line 1270 of file BLI_virtual_array.hh.

◆ operator=()

template<typename T>
MutableVArraySpan & blender::MutableVArraySpan< T >::operator= ( MutableVArraySpan< T > && other)
inline

Definition at line 1245 of file BLI_virtual_array.hh.

References MutableVArraySpan().

◆ save()

◆ varray()

template<typename T>
const VMutableArray< T > & blender::MutableVArraySpan< T >::varray ( ) const
inline

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