|
| | CachingAttribute (const CachingAttribute &)=delete |
| |
| CachingAttribute & | operator= (const CachingAttribute &)=delete |
| |
| | CachingAttribute (CachingAttribute &&)=default |
| |
| CachingAttribute & | operator= (CachingAttribute &&)=default |
| |
| void | push_scope () |
| |
| void | pop_scope (bool preserve_changes) |
| |
| bool | at_current_scope () const |
| | checks that we are viewing the active state of the attribute
|
| |
| size_t | current_transaction_index () const |
| |
| int64_t | transaction_depth () const |
| |
| bool | has_transactions () const |
| |
| template<int D = Eigen::Dynamic> |
| MapResult< D > | vector_attribute (int64_t index) |
| | default mutable vector access
|
| |
| template<int D = Eigen::Dynamic> |
| ConstMapResult< D > | const_vector_attribute (int64_t index) const |
| | default immutable vector access
|
| |
| T & | scalar_attribute (int64_t index) |
| | default mutable scalar access
|
| |
| const T & | const_scalar_attribute (int64_t index) const |
| | default immutable scalar access
|
| |
| template<int D = Eigen::Dynamic> |
| const T & | const_vector_single_value (int64_t index, int8_t vector_index) const |
| | specialized immutable scalar access useful for topological operations
|
| |
| void | change_to_next_scope () |
| |
| void | change_to_previous_scope () |
| |
| void | change_to_current_scope () |
| |
| void | rollback_current_scope () |
| |
| void | reset () |
| |
| void | clear () |
| |
| void | apply_cache () |
| |
| void | apply_cache (std::vector< T > &other) const |
| |
| const std::vector< T > & | buffer () const |
| |
| const std::vector< std::pair< size_t, size_t > > & | indices () const |
| |
| const std::vector< size_t > & | transaction_starts () const |
| |
| size_t | buffer_end () const |
| |
| size_t | indices_end () const |
| |
| void | emplace () |
| |
| void | pop (bool preserve_changes) |
| |
| 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> |
| WMTK_CACHING_ATTRIBUTE_INLINE auto | vector_attribute (int64_t index) -> MapResult< D > |
| |
| template<int D> |
| WMTK_CACHING_ATTRIBUTE_INLINE auto | const_vector_attribute (int64_t index) const -> ConstMapResult< D > |
| |
| template<int D> |
| WMTK_CACHING_ATTRIBUTE_INLINE auto | const_vector_single_value (int64_t index, int8_t vector_index) const -> const T & |
| |
| template<typename Derived > |
| WMTK_CACHING_ATTRIBUTE_INLINE void | cache (int64_t index, const Eigen::MatrixBase< Derived > &value) |
| |
| std::map< std::string, size_t > | child_hashes () const override |
| |
| void | serialize (int dim, MeshWriter &writer) const |
| |
| | Attribute (const std::string &name, int64_t dimension, T default_value=T(0), int64_t size=0) |
| | Initialize the attribute.
|
| |
| | Attribute (Attribute &&o) |
| |
| Attribute & | operator= (Attribute &&o) |
| |
| | Attribute (const Attribute &o)=delete |
| |
| Attribute & | operator= (const Attribute &&o)=delete |
| |
| | ~Attribute () override |
| |
| template<int D = Eigen::Dynamic> |
| ConstMapResult< D > | const_vector_attribute (int64_t index) const |
| | Access the value of an attribute at a particular index. If the dimension of the attribute is known at compile time then the template parameter should be elided to improve performance.
|
| |
| template<int D = Eigen::Dynamic> |
| MapResult< D > | vector_attribute (int64_t index) |
| | Access the value of an attribute at a particular index. If the dimension of the attribute is known at compile time then the template parameter should be elided to improve performance.
|
| |
| const T & | const_scalar_attribute (int64_t index) const |
| | Access the value of a scalar attribute.
|
| |
| T & | scalar_attribute (int64_t index) |
| | Access the value of a scalar attribute. Assignment to the returned value will change the value.
|
| |
| template<int D = Eigen::Dynamic> |
| const T & | const_vector_single_value (int64_t index, int8_t vector_index) const |
| | Access a single entry in a vector attribute. TODO: this might not actually be more performant than.
|
| |
| template<int D = Eigen::Dynamic> |
| T & | vector_single_value (int64_t index, int8_t vector_index) |
| | Access to a single a single value of a scalr attribute.
|
| |
| void | set (std::vector< T > val) |
| | Replace the internal data with val.
|
| |
| int64_t | reserved_size () const |
| | The total number of elements in a vector.
|
| |
| int64_t | dimension () const |
| | The number of values for each index.
|
| |
| void | reserve (int64_t size) |
| |
| const T & | default_value () const |
| | returns the default value of this attribute
|
| |
| bool | operator== (const Attribute< T > &o) const |
| |
| void | consolidate (const std::vector< int64_t > &new2old) |
| | Consolidate the vector, using the new2old map m provided and resizing the vector to m.size()
|
| |
| void | index_remap (const std::vector< T > &old2new) |
| | Applies the scalar old2new map to the indices in the attribute This is commonly used after a consolidate to account for the change in global indices.
|
| |
| void | index_remap (const std::vector< T > &old2new, const std::vector< Eigen::Index > &cols) |
| |
| template<int D = Eigen::Dynamic> |
| ConstMapResult< D > | const_vector_attribute (int64_t index, const std::vector< T > &data) const |
| | Accesses the attribute using the specified vector as the underlying data This is internally used by the single-arg const_vector_attribute and to help with serialization.
|
| |
| template<int D = Eigen::Dynamic> |
| ConstMapResult< D > | const_vector_attribute_without_stride (int64_t index, const std::vector< T > &data) const |
| | Accesses the attribute using the specified vector as the underlying data This is internally used by the single-arg const_vector_attribute and to help with serialization.
|
| |
| template<int D = Eigen::Dynamic> |
| MapResult< D > | vector_attribute (int64_t index, std::vector< T > &data) const |
| | Accesses the attribute using the specified vector as the underlying data This is internally used by the single-arg vector_attribute and to help with serialization.
|
| |
| template<int D = Eigen::Dynamic> |
| MapResult< D > | vector_attribute_without_stride (int64_t index, std::vector< T > &data) const |
| | Accesses the attribute using the specified vector as the underlying data This is internally used by the single-arg const_vector_attribute and to help with serialization.
|
| |
| const T & | const_scalar_attribute (int64_t index, const std::vector< T > &data) const |
| | Accesses the attribute using the specified scalar as the underlying data This is internally used by the single-arg const_scalar_attribute and to help with serialization.
|
| |
| T & | scalar_attribute (int64_t index, std::vector< T > &data) const |
| | Accesses the attribute using the specified scalar as the underlying data This is internally used by the single-arg scalar_attribute and to help with serialization.
|
| |
| template<int D = Eigen::Dynamic> |
| const T & | const_vector_single_value (int64_t index, int8_t vector_index, const std::vector< T > &data) const |
| | Accesses the attribute using the specified scalar as the underlying data This is internally used by the single-arg const_vector_single_value and to help with serialization.
|
| |
| template<int D = Eigen::Dynamic> |
| T & | vector_single_value (int64_t index, int8_t vector_index, std::vector< T > &data) const |
| | Accesses the attribute using the specified scalar as the underlying data This is internally used by the single-arg vector_single_value and to help with serialization.
|
| |
| int64_t | reserved_size (const std::vector< T > &data) const |
| |
| const std::string & | name () const |
| |
| void | set_name (const std::string &name) |
| |
| template<int D> |
| WMTK_ATTRIBUTE_INLINE auto | const_vector_attribute_without_stride (int64_t start, const std::vector< T > &data) const -> ConstMapResult< D > |
| |
| template<int D> |
| WMTK_ATTRIBUTE_INLINE auto | vector_attribute_without_stride (int64_t start, std::vector< T > &data) const -> MapResult< D > |
| |
| template<int D> |
| WMTK_ATTRIBUTE_INLINE auto | const_vector_attribute (int64_t index, const std::vector< T > &data) const -> ConstMapResult< D > |
| |
| template<int D> |
| WMTK_ATTRIBUTE_INLINE auto | vector_attribute (int64_t index, std::vector< T > &data) const -> MapResult< D > |
| |
| template<int D> |
| WMTK_ATTRIBUTE_INLINE const T & | const_vector_single_value (int64_t index, int8_t vector_index, const std::vector< T > &data) const |
| |
| template<int D> |
| WMTK_ATTRIBUTE_INLINE T & | vector_single_value (int64_t index, int8_t vector_index, std::vector< T > &data) const |
| |
| template<int D> |
| WMTK_ATTRIBUTE_INLINE auto | const_vector_attribute (int64_t index) const -> ConstMapResult< D > |
| |
| template<int D> |
| WMTK_ATTRIBUTE_INLINE auto | vector_attribute (int64_t index) -> MapResult< D > |
| |
| template<int D> |
| WMTK_ATTRIBUTE_INLINE const T & | const_vector_single_value (int64_t index, int8_t vector_index) const |
| |
| template<int D> |
| WMTK_ATTRIBUTE_INLINE T & | vector_single_value (int64_t index, int8_t vector_index) |
| |
| | Hashable () |
| |
| | Hashable (const Hashable &) |
| |
| | Hashable (Hashable &&) |
| |
| Hashable & | operator= (const Hashable &) |
| |
| Hashable & | operator= (Hashable &&) |
| |
| virtual | ~Hashable () |
| |
| virtual std::size_t | hash () const |
| |
template<typename T>
class wmtk::attribute::CachingAttribute< T >
Definition at line 18 of file CachingAttribute.hpp.