SOFA API  cd4ffb93
Open source framework for multi-physics simuation
sofa::core::TMultiVecId< V_ALL, vaccess > Class Template Reference

#include <MultiVecId.h>

Protected Attributes

MyVecId defaultId
 

Public Member Functions

bool hasIdMap () const
 
const IdMapgetIdMap () const
 
 TMultiVecId ()=default
 
template<VecType vtype2, VecAccess vaccess2>
 TMultiVecId (const TVecId< vtype2, vaccess2 > &v)
 
template<VecType vtype2, VecAccess vaccess2>
TMultiVecId< V_ALL, vaccess > & operator= (const TVecId< vtype2, vaccess2 > &v)
 Copy assignment from another VecId. More...
 
 TMultiVecId (const TMultiVecId< V_ALL, vaccess > &mv)
 
TMultiVecId< V_ALL, vaccess > & operator= (const TMultiVecId< V_ALL, vaccess > &mv)
 Copy assignment. More...
 
template<VecType vtype2, VecAccess vaccess2>
 TMultiVecId (const TMultiVecId< vtype2, vaccess2 > &mv)
 
template<VecType vtype2, VecAccess vaccess2>
TMultiVecId< V_ALL, vaccess > & operator= (const TMultiVecId< vtype2, vaccess2 > &mv)
 
void setDefaultId (const MyVecId &id)
 
template<class StateSet >
void setId (const StateSet &states, const MyVecId &id)
 
void setId (const BaseState *s, const MyVecId &id)
 
void assign (const MyVecId &id)
 
const MyVecIdgetId (const BaseState *s) const
 
const MyVecIdgetDefaultId () const
 
std::string getName () const
 
bool isNull () const
 
template<class DataTypes >
StateVecAccessor< DataTypes, V_ALL, vaccess > operator[] (State< DataTypes > *s) const
 
template<class DataTypes >
StateVecAccessor< DataTypes, V_ALL, V_READoperator[] (const State< DataTypes > *s) const
 

Static Public Member Functions

static TMultiVecId< V_ALL, vaccess > null ()
 

Protected Member Functions

IdMapwriteIdMap ()
 

Friends

template<VecType vtype2, VecAccess vaccess2>
class TMultiVecId
 
std::ostream & operator<< (std::ostream &out, const TMultiVecId< V_ALL, vaccess > &v)
 

Attribute details

◆ defaultId

template<VecAccess vaccess>
MyVecId sofa::core::TMultiVecId< V_ALL, vaccess >::defaultId
protected

Constructor details

◆ TMultiVecId() [1/4]

template<VecAccess vaccess>
sofa::core::TMultiVecId< V_ALL, vaccess >::TMultiVecId ( )
default

◆ TMultiVecId() [2/4]

template<VecAccess vaccess>
template<VecType vtype2, VecAccess vaccess2>
sofa::core::TMultiVecId< V_ALL, vaccess >::TMultiVecId ( const TVecId< vtype2, vaccess2 > &  v)
inline

Copy from another VecId, possibly with another type of access, with the constraint that the access must be compatible (i.e. cannot create a write-access VecId from a read-only VecId.

◆ TMultiVecId() [3/4]

template<VecAccess vaccess>
sofa::core::TMultiVecId< V_ALL, vaccess >::TMultiVecId ( const TMultiVecId< V_ALL, vaccess > &  mv)
inline

◆ TMultiVecId() [4/4]

template<VecAccess vaccess>
template<VecType vtype2, VecAccess vaccess2>
sofa::core::TMultiVecId< V_ALL, vaccess >::TMultiVecId ( const TMultiVecId< vtype2, vaccess2 > &  mv)
inline

Function details

◆ assign()

template<VecAccess vaccess>
void sofa::core::TMultiVecId< V_ALL, vaccess >::assign ( const MyVecId id)
inline

◆ getDefaultId()

template<VecAccess vaccess>
const MyVecId& sofa::core::TMultiVecId< V_ALL, vaccess >::getDefaultId ( ) const
inline

◆ getId()

template<VecAccess vaccess>
const MyVecId& sofa::core::TMultiVecId< V_ALL, vaccess >::getId ( const BaseState s) const
inline

◆ getIdMap()

template<VecAccess vaccess>
const IdMap& sofa::core::TMultiVecId< V_ALL, vaccess >::getIdMap ( ) const
inline

◆ getName()

template<VecAccess vaccess>
std::string sofa::core::TMultiVecId< V_ALL, vaccess >::getName ( ) const
inline

◆ hasIdMap()

template<VecAccess vaccess>
bool sofa::core::TMultiVecId< V_ALL, vaccess >::hasIdMap ( ) const
inline

◆ isNull()

template<VecAccess vaccess>
bool sofa::core::TMultiVecId< V_ALL, vaccess >::isNull ( ) const
inline

◆ null()

template<VecAccess vaccess>
static TMultiVecId<V_ALL, vaccess> sofa::core::TMultiVecId< V_ALL, vaccess >::null ( )
inlinestatic

◆ operator=() [1/3]

template<VecAccess vaccess>
TMultiVecId<V_ALL, vaccess>& sofa::core::TMultiVecId< V_ALL, vaccess >::operator= ( const TMultiVecId< V_ALL, vaccess > &  mv)
inline

Copy assignment.

◆ operator=() [2/3]

template<VecAccess vaccess>
template<VecType vtype2, VecAccess vaccess2>
TMultiVecId<V_ALL, vaccess>& sofa::core::TMultiVecId< V_ALL, vaccess >::operator= ( const TMultiVecId< vtype2, vaccess2 > &  mv)
inline

◆ operator=() [3/3]

template<VecAccess vaccess>
template<VecType vtype2, VecAccess vaccess2>
TMultiVecId<V_ALL, vaccess>& sofa::core::TMultiVecId< V_ALL, vaccess >::operator= ( const TVecId< vtype2, vaccess2 > &  v)
inline

Copy assignment from another VecId.

◆ operator[]() [1/2]

template<VecAccess vaccess>
template<class DataTypes >
StateVecAccessor<DataTypes,V_ALL,V_READ> sofa::core::TMultiVecId< V_ALL, vaccess >::operator[] ( const State< DataTypes > *  s) const
inline

◆ operator[]() [2/2]

template<VecAccess vaccess>
template<class DataTypes >
StateVecAccessor<DataTypes,V_ALL,vaccess> sofa::core::TMultiVecId< V_ALL, vaccess >::operator[] ( State< DataTypes > *  s) const
inline

◆ setDefaultId()

template<VecAccess vaccess>
void sofa::core::TMultiVecId< V_ALL, vaccess >::setDefaultId ( const MyVecId id)
inline

◆ setId() [1/2]

template<VecAccess vaccess>
void sofa::core::TMultiVecId< V_ALL, vaccess >::setId ( const BaseState s,
const MyVecId id 
)
inline

◆ setId() [2/2]

template<VecAccess vaccess>
template<class StateSet >
void sofa::core::TMultiVecId< V_ALL, vaccess >::setId ( const StateSet &  states,
const MyVecId id 
)
inline

◆ writeIdMap()

template<VecAccess vaccess>
IdMap& sofa::core::TMultiVecId< V_ALL, vaccess >::writeIdMap ( )
inlineprotected

Related details

◆ operator<<

template<VecAccess vaccess>
std::ostream& operator<< ( std::ostream &  out,
const TMultiVecId< V_ALL, vaccess > &  v 
)
friend

◆ TMultiVecId

template<VecAccess vaccess>
template<VecType vtype2, VecAccess vaccess2>
friend class TMultiVecId
friend