Wildmeshing Toolkit
|
#include <AttributeTransactionStack.hpp>
Public Types | |
template<int D> | |
using | MapResult = internal::MapResult< T, D > |
template<int D> | |
using | ConstMapResult = internal::ConstMapResult< T, D > |
Public Member Functions | |
AttributeTransactionStack () | |
~AttributeTransactionStack () | |
AttributeTransactionStack (const AttributeTransactionStack &)=delete | |
AttributeTransactionStack & | operator= (const AttributeTransactionStack &)=delete |
AttributeTransactionStack (AttributeTransactionStack &&)=default | |
AttributeTransactionStack & | operator= (AttributeTransactionStack &&)=default |
template<typename Derived > | |
void | try_caching (int64_t index, const Eigen::MatrixBase< Derived > &value) |
void | try_caching (int64_t index, const T &value) |
const T * | get_value (int64_t index) const |
void | clear () |
int64_t | size () const |
void | apply_to (Attribute< T > &attribute) const |
void | apply_to (const Attribute< T > &attribute, std::vector< T > &other) const |
const std::vector< T > & | buffer () const |
const std::vector< std::pair< size_t, size_t > > & | indices () const |
size_t | current_transaction_index () |
const std::vector< size_t > & | transaction_starts () const |
size_t | buffer_end () const |
size_t | indices_end () const |
bool | empty () const |
bool | writing_enabled () const |
template<int D = Eigen::Dynamic, int D2 = Eigen::Dynamic, int TrueD = D == Eigen::Dynamic ? D2 : D> | |
MapResult< TrueD > | vector_attribute (AccessorBase< T, D2 > &accessor, int64_t index) |
default mutable vector access More... | |
template<int D = Eigen::Dynamic, int D2 = Eigen::Dynamic, int TrueD = D == Eigen::Dynamic ? D2 : D> | |
ConstMapResult< TrueD > | const_vector_attribute (const AccessorBase< T, D2 > &accessor, int64_t index) const |
default immutable vector access More... | |
template<int D2> | |
T & | scalar_attribute (AccessorBase< T, D2 > &accessor, int64_t index) |
default mutable scalar access More... | |
template<int D = Eigen::Dynamic> | |
T | const_scalar_attribute (const AccessorBase< T, D > &accessor, int64_t index) const |
default immutable scalar access More... | |
template<int D = Eigen::Dynamic> | |
T | const_scalar_attribute (const AccessorBase< T, D > &accessor, int64_t index, int8_t offset) const |
specialized immutable scalar access useful for topological operations More... | |
void | emplace () |
void | pop (Attribute< T > &attribute, bool preserve_changes) |
void | change_to_next_scope () |
void | change_to_previous_scope () |
void | change_to_current_scope () |
void | rollback_current_scope (Attribute< T > &attr) |
bool | at_current_scope () const |
checks that we are viewing the active state of the attribute More... | |
size_t | current_transaction_index () const |
std::vector< std::pair< size_t, size_t > >::const_iterator | transaction_start_begin (size_t scope_index) const |
std::vector< std::pair< size_t, size_t > >::const_iterator | final_transaction_end () const |
std::vector< std::pair< size_t, size_t > >::const_reverse_iterator | transaction_start_rend (size_t scope_index) const |
std::vector< std::pair< size_t, size_t > >::const_reverse_iterator | final_transaction_rbegin () const |
void | update_buffer_sizes_for_add (size_t data_size) |
template<int D, int D2, int TrueD> | |
auto | vector_attribute (AccessorBase< T, D2 > &accessor, int64_t index) -> MapResult< TrueD > |
template<int D, int D2, int TrueD> | |
auto | const_vector_attribute (const AccessorBase< T, D2 > &accessor, int64_t index) const -> ConstMapResult< TrueD > |
template<int D2> | |
auto | scalar_attribute (AccessorBase< T, D2 > &accessor, int64_t index) -> T & |
template<int D2> | |
auto | const_scalar_attribute (const AccessorBase< T, D2 > &accessor, int64_t index) const -> T |
template<int D2> | |
auto | const_scalar_attribute (const AccessorBase< T, D2 > &accessor, int64_t index, int8_t offset) const -> T |
Protected Attributes | |
std::vector< T > | m_buffer |
std::vector< std::pair< size_t, size_t > > | m_indices |
size_t | m_current_transaction_index = 0 |
std::vector< size_t > | m_transaction_starts |
size_t | m_buffer_end |
size_t | m_indices_end |
Private Member Functions | |
void | apply_last_scope (Attribute< T > &attr) |
Definition at line 16 of file AttributeTransactionStack.hpp.
using wmtk::attribute::internal::AttributeTransactionStack< T >::ConstMapResult = internal::ConstMapResult<T, D> |
Definition at line 22 of file AttributeTransactionStack.hpp.
using wmtk::attribute::internal::AttributeTransactionStack< T >::MapResult = internal::MapResult<T, D> |
Definition at line 20 of file AttributeTransactionStack.hpp.
|
inline |
Definition at line 12 of file AttributeTransactionStack.hxx.
|
inlinedefault |
|
delete |
|
default |
|
inlineprivate |
Definition at line 160 of file AttributeTransactionStack.hxx.
|
inline |
Definition at line 86 of file AttributeTransactionStack.hxx.
References wmtk::attribute::Attribute< T >::m_data.
|
inline |
Definition at line 92 of file AttributeTransactionStack.hxx.
References wmtk::attribute::Attribute< T >::const_vector_attribute_from_start(), and wmtk::attribute::Attribute< T >::vector_attribute().
|
inline |
checks that we are viewing the active state of the attribute
Definition at line 189 of file AttributeTransactionStack.hxx.
|
inline |
Definition at line 49 of file AttributeTransactionStack.hpp.
References wmtk::attribute::internal::AttributeTransactionStack< T >::m_buffer.
|
inline |
Definition at line 57 of file AttributeTransactionStack.hpp.
References wmtk::attribute::internal::AttributeTransactionStack< T >::m_buffer_end.
|
inline |
Definition at line 184 of file AttributeTransactionStack.hxx.
|
inline |
Definition at line 176 of file AttributeTransactionStack.hxx.
|
inline |
Definition at line 168 of file AttributeTransactionStack.hxx.
|
inline |
Definition at line 23 of file AttributeTransactionStack.hxx.
T wmtk::attribute::internal::AttributeTransactionStack< T >::const_scalar_attribute | ( | const AccessorBase< T, D > & | accessor, |
int64_t | index | ||
) | const |
default immutable scalar access
T wmtk::attribute::internal::AttributeTransactionStack< T >::const_scalar_attribute | ( | const AccessorBase< T, D > & | accessor, |
int64_t | index, | ||
int8_t | offset | ||
) | const |
specialized immutable scalar access useful for topological operations
|
inline |
Definition at line 244 of file AttributeTransactionStack.hpp.
|
inline |
Definition at line 252 of file AttributeTransactionStack.hpp.
ConstMapResult<TrueD> wmtk::attribute::internal::AttributeTransactionStack< T >::const_vector_attribute | ( | const AccessorBase< T, D2 > & | accessor, |
int64_t | index | ||
) | const |
default immutable vector access
|
inline |
Definition at line 209 of file AttributeTransactionStack.hpp.
References wmtk::components::adaptive_tessellation::image::get_value().
|
inline |
Definition at line 53 of file AttributeTransactionStack.hpp.
References wmtk::attribute::internal::AttributeTransactionStack< T >::m_current_transaction_index.
|
inline |
Definition at line 110 of file AttributeTransactionStack.hpp.
References wmtk::attribute::internal::AttributeTransactionStack< T >::m_current_transaction_index.
|
inline |
Definition at line 123 of file AttributeTransactionStack.hxx.
|
inline |
Definition at line 153 of file AttributeTransactionStack.hxx.
auto wmtk::attribute::internal::AttributeTransactionStack< T >::final_transaction_end |
Definition at line 147 of file AttributeTransactionStack.hpp.
auto wmtk::attribute::internal::AttributeTransactionStack< T >::final_transaction_rbegin |
Definition at line 161 of file AttributeTransactionStack.hpp.
|
inline |
Definition at line 108 of file AttributeTransactionStack.hxx.
|
inline |
Definition at line 50 of file AttributeTransactionStack.hpp.
References wmtk::attribute::internal::AttributeTransactionStack< T >::m_indices.
|
inline |
Definition at line 58 of file AttributeTransactionStack.hpp.
References wmtk::attribute::internal::AttributeTransactionStack< T >::m_indices_end.
|
default |
|
delete |
|
inline |
Definition at line 131 of file AttributeTransactionStack.hxx.
|
inline |
Definition at line 174 of file AttributeTransactionStack.hpp.
T& wmtk::attribute::internal::AttributeTransactionStack< T >::scalar_attribute | ( | AccessorBase< T, D2 > & | accessor, |
int64_t | index | ||
) |
default mutable scalar access
|
inline |
Definition at line 229 of file AttributeTransactionStack.hpp.
|
inline |
Definition at line 168 of file AttributeTransactionStack.hpp.
auto wmtk::attribute::internal::AttributeTransactionStack< T >::transaction_start_begin | ( | size_t | scope_index | ) | const |
Definition at line 140 of file AttributeTransactionStack.hpp.
auto wmtk::attribute::internal::AttributeTransactionStack< T >::transaction_start_rend | ( | size_t | scope_index | ) | const |
Definition at line 155 of file AttributeTransactionStack.hpp.
|
inline |
Definition at line 56 of file AttributeTransactionStack.hpp.
References wmtk::attribute::internal::AttributeTransactionStack< T >::m_transaction_starts.
|
inline |
Definition at line 46 of file AttributeTransactionStack.hxx.
|
inline |
Definition at line 72 of file AttributeTransactionStack.hxx.
|
inline |
Definition at line 30 of file AttributeTransactionStack.hxx.
MapResult<TrueD> wmtk::attribute::internal::AttributeTransactionStack< T >::vector_attribute | ( | AccessorBase< T, D2 > & | accessor, |
int64_t | index | ||
) |
default mutable vector access
|
inline |
Definition at line 183 of file AttributeTransactionStack.hpp.
|
inline |
Definition at line 195 of file AttributeTransactionStack.hxx.
|
protected |
Definition at line 127 of file AttributeTransactionStack.hpp.
Referenced by wmtk::attribute::internal::AttributeTransactionStack< T >::buffer().
|
protected |
Definition at line 134 of file AttributeTransactionStack.hpp.
Referenced by wmtk::attribute::internal::AttributeTransactionStack< T >::buffer_end().
|
protected |
Definition at line 130 of file AttributeTransactionStack.hpp.
Referenced by wmtk::attribute::internal::AttributeTransactionStack< T >::current_transaction_index().
|
protected |
Definition at line 128 of file AttributeTransactionStack.hpp.
Referenced by wmtk::attribute::internal::AttributeTransactionStack< T >::indices().
|
protected |
Definition at line 135 of file AttributeTransactionStack.hpp.
Referenced by wmtk::attribute::internal::AttributeTransactionStack< T >::indices_end().
|
protected |
Definition at line 133 of file AttributeTransactionStack.hpp.
Referenced by wmtk::attribute::internal::AttributeTransactionStack< T >::transaction_starts().