Skip to content

Class uipc::geometry::SimplicialComplexAttributes

template <bool IsConst, IndexT N>

ClassList > uipc > geometry > SimplicialComplexAttributes

Public Types

Type Name
typedef std::conditional_t< IsConst, const AttributeCollection, AttributeCollection > AutoAttributeCollection
typedef std::conditional_t< IsScalar, IndexT, Vector< IndexT, N+1 > > TopoValueT

Public Static Attributes

Type Name
constexpr bool IsScalar = = (N == 0)

Public Functions

Type Name
SimplicialComplexAttributes (const SimplicialComplexAttributes & o) = default
SimplicialComplexAttributes (SimplicialComplexAttributes && o) = default
SimplicialComplexAttributes (const SimplicialComplexAttributes< OtherIsConst, N > & o) noexcept
void clear ()
void copy_from (SimplicialComplexAttributes< true, N > other, const AttributeCopy & copy={}, span< const string > include_names={}, span< const string > exclude_names={})
decltype(auto) create (std::string_view name, const T & default_value={}, bool allow_destroy=true)
void destroy (std::string_view name)
decltype(auto) find (std::string_view name)
Find an attribute by type and name, if the attribute does not exist, return nullptr.
decltype(auto) find (std::string_view name) const
Find an attribute by type and name, if the attribute does not exist, return nullptr.
SimplicialComplexAttributes & operator= (const SimplicialComplexAttributes & o) = default
SimplicialComplexAttributes & operator= (SimplicialComplexAttributes && o) = default
void reserve (SizeT size)
void resize (SizeT size)
decltype(auto) share (std::string_view name, const AttributeSlot< T > & slot, bool allow_destroy=true)
SizeT size () noexcept const
Json to_json () const
AttributeSlot< TopoValueT > & topo ()
Get the topology of the simplicial complex.
const AttributeSlot< TopoValueT > & topo () const

Public Types Documentation

typedef AutoAttributeCollection

using uipc::geometry::SimplicialComplexAttributes< IsConst, N >::AutoAttributeCollection = 
        std::conditional_t<IsConst, const AttributeCollection, AttributeCollection>;

typedef TopoValueT

using uipc::geometry::SimplicialComplexAttributes< IsConst, N >::TopoValueT =  std::conditional_t<IsScalar, IndexT, Vector<IndexT, N + 1>>;

Public Static Attributes Documentation

variable IsScalar

constexpr bool uipc::geometry::SimplicialComplexAttributes< IsConst, N >::IsScalar;

Public Functions Documentation

function SimplicialComplexAttributes [2/5]

uipc::geometry::SimplicialComplexAttributes::SimplicialComplexAttributes (
    const SimplicialComplexAttributes & o
) = default

function SimplicialComplexAttributes [3/5]

uipc::geometry::SimplicialComplexAttributes::SimplicialComplexAttributes (
    SimplicialComplexAttributes && o
) = default

function SimplicialComplexAttributes [4/5]

template<bool OtherIsConst>
inline uipc::geometry::SimplicialComplexAttributes::SimplicialComplexAttributes (
    const SimplicialComplexAttributes < OtherIsConst, N > & o
) noexcept

function clear

inline void uipc::geometry::SimplicialComplexAttributes::clear () 

See also: AttributeCollection::clear


function copy_from

inline void uipc::geometry::SimplicialComplexAttributes::copy_from (
    SimplicialComplexAttributes < true, N > other,
    const AttributeCopy & copy={},
    span< const string > include_names={},
    span< const string > exclude_names={}
) 

function create

template<typename T>
inline decltype(auto) uipc::geometry::SimplicialComplexAttributes::create (
    std::string_view name,
    const T & default_value={},
    bool allow_destroy=true
) 

function destroy

inline void uipc::geometry::SimplicialComplexAttributes::destroy (
    std::string_view name
) 

See also: AttributeCollection::destroy


function find [1/2]

template<typename T>
inline decltype(auto) uipc::geometry::SimplicialComplexAttributes::find (
    std::string_view name
) 

function find [2/2]

template<typename T>
inline decltype(auto) uipc::geometry::SimplicialComplexAttributes::find (
    std::string_view name
) const

function operator=

SimplicialComplexAttributes & uipc::geometry::SimplicialComplexAttributes::operator= (
    const SimplicialComplexAttributes & o
) = default

function operator=

SimplicialComplexAttributes & uipc::geometry::SimplicialComplexAttributes::operator= (
    SimplicialComplexAttributes && o
) = default

function reserve

inline void uipc::geometry::SimplicialComplexAttributes::reserve (
    SizeT size
) 

See also: AttributeCollection::reserve


function resize

inline void uipc::geometry::SimplicialComplexAttributes::resize (
    SizeT size
) 

See also: AttributeCollection::resize


function share

template<typename T>
inline decltype(auto) uipc::geometry::SimplicialComplexAttributes::share (
    std::string_view name,
    const AttributeSlot < T > & slot,
    bool allow_destroy=true
) 

function size

inline SizeT uipc::geometry::SimplicialComplexAttributes::size () noexcept const

See also: AttributeCollection::size


function to_json

inline Json uipc::geometry::SimplicialComplexAttributes::to_json () const

function topo [1/2]

Get the topology of the simplicial complex.

inline AttributeSlot < TopoValueT > & uipc::geometry::SimplicialComplexAttributes::topo () 

Returns:

Topo


function topo [2/2]

inline const AttributeSlot < TopoValueT > & uipc::geometry::SimplicialComplexAttributes::topo () const

Friends Documentation

friend AttributeFriend

template<typename T>
class uipc::geometry::SimplicialComplexAttributes::AttributeFriend (
    AttributeFriend
) 

friend SimplicialComplexAttributes [1/5]

template<bool OtherIsConst, IndexT OtherN>
class uipc::geometry::SimplicialComplexAttributes::SimplicialComplexAttributes (
    SimplicialComplexAttributes
) 

friend formatter< SimplicialComplexAttributes< IsConst, N > >

class uipc::geometry::SimplicialComplexAttributes::formatter< SimplicialComplexAttributes< IsConst, N > > (
    fmt::formatter< SimplicialComplexAttributes < IsConst, N > >
) 


The documentation for this class was generated from the following file include/uipc/geometry/simplicial_complex_attributes.h