Workspace 6.21.5
|
An interface to the elements stored behind a MeshModelInterface.
#include <Mesh/DataStructures/MeshModelInterface/meshelementsinterface.h>
Classes | |
class | const_iterator |
A const iterator for elements. More... | |
class | iterator |
A non-const iterator for elements. More... | |
Public Types | |
enum | ContiguousDataAccessType { DirectBufferAccess , CopiedBufferAccess } |
The type of access that a particular implementation provides to contiguous data. More... | |
using | int_type = MeshModelInterface::int_type |
using | ItemHandleListType = ElementHandleList |
using | ItemHandleType = ElementHandle |
using | size_type = MeshModelInterface::size_type |
using | StateHandleListType = ElementStateHandleList |
using | StateHandleType = ElementStateHandle |
Public Member Functions | |
ElementHandle | add (const NodeHandle &node0, const NodeHandle &node1) |
ElementHandle | add (const NodeHandle &node0, const NodeHandle &node1, const NodeHandle &node2) |
ElementHandle | add (const NodeHandle &node0, const NodeHandle &node1, const NodeHandle &node2, const NodeHandle &node3) |
ElementHandle | add (const NodeHandle &node0, const NodeHandle &node1, const NodeHandle &node2, const NodeHandle &node3, const NodeHandle &node4, const NodeHandle &node5, const NodeHandle &node6, const NodeHandle &node7) |
virtual ElementHandle | add (const NodeHandleList &nodes)=0 |
const ElementStateHandle & | addState (const QString &name, const DataExecution::DataObject &defaultValue) |
template<typename T > | |
const ElementStateHandle & | addState (const QString &name, const T &defaultValue) |
iterator | begin () |
const_iterator | begin () const |
virtual bool | canAddState (const DataExecution::DataObject &defaultValue) |
virtual bool | canRemoveState (const ElementStateHandle &state) |
virtual void | clear ()=0 |
virtual bool | digestContiguousFloatStateData (const ElementStateHandle &state, std::function< bool(size_type numElems, size_type nodesPerElem, size_type stride, const double *data)> digestFunc) const |
virtual bool | digestContiguousIntegerStateData (const ElementStateHandle &state, std::function< bool(size_type numElems, size_type nodesPerElem, size_type stride, const int_type *data)> digestFunc) const |
virtual bool | digestContiguousNodeIndexData (std::function< bool(size_type numElems, size_type nodesPerElem, size_type stride, const ItemHandle::size_type *data)> digestFunc) const |
virtual bool | digestContiguousUInt16StateData (const ElementStateHandle &state, std::function< bool(size_type numElems, size_type nodesPerElem, size_type stride, const quint16 *data)> digestFunc) const |
virtual bool | digestContiguousUInt8StateData (const ElementStateHandle &state, std::function< bool(size_type numElems, size_type nodesPerElem, size_type stride, const quint8 *data)> digestFunc) const |
bool | empty () const |
iterator | end () |
const_iterator | end () const |
bool | ensureAllStatesSupported (const ElementStateHandleList &states) |
virtual iterator | erase (const iterator &position)=0 |
ElementStateHandleList | getAllStateHandles () const |
virtual ContiguousDataAccessType | getContiguousDataAccessType () const |
const ElementType::Type & | getElementType () const |
virtual NodeHandle | getNode (const ElementHandle &element, size_type index) const =0 |
virtual int | getNodeIndex (const ElementHandle &element, const NodeHandle &node) const |
virtual bool | getNodes (const ElementHandle &element, NodeHandleList &nodes) const =0 |
bool | getState (const ElementHandle &elementHandle, const ElementStateHandle &state, DataExecution::DataObject &result) |
bool | getState (const ElementHandle &elementHandle, const ElementStateHandle &state, DataExecution::DataObject &result) const |
virtual bool | getState (const ElementHandle &elementHandle, const ElementStateHandle &state, double &result) const |
virtual bool | getState (const ElementHandle &elementHandle, const ElementStateHandle &state, int_type &result) const |
virtual bool | getState (const ElementHandle &elementHandle, const ElementStateHandle &state, quint16 &result) const |
virtual bool | getState (const ElementHandle &elementHandle, const ElementStateHandle &state, quint8 &result) const |
virtual bool | getState (const ElementHandle &elementHandle, const ElementStateHandle &state, Vector3d &result) const |
const ElementStateHandle & | getStateHandle (const QString &name) const |
bool | hasState (const QString &name) const |
virtual bool | isAttached (const ElementHandle &element, const NodeHandle &node) const |
virtual bool | isStateTypeSupported (const DataExecution::DataFactory &dataFactory) const =0 |
virtual bool | isValid () const |
virtual bool | load (MeshSerializer &serializer) |
virtual void | remove (const ElementHandle &elementHandle)=0 |
bool | removeAllStates () |
bool | removeState (const ElementStateHandle &state) |
bool | removeState (const QString &name) |
bool | renameState (const QString &from, const QString &to) |
virtual void | reserve (size_type n) |
virtual bool | save (MeshSerializer &serializer, const NodeHandleIndexHash &nodeIds) const |
virtual bool | setNode (const ElementHandle &element, const NodeHandle &node, size_type index)=0 |
virtual bool | setNodes (const ElementHandle &element, const NodeHandleList &nodes)=0 |
virtual bool | setState (const ElementHandle &elementHandle, const ElementStateHandle &state, const DataExecution::DataObject &value)=0 |
virtual bool | setState (const ElementHandle &elementHandle, const ElementStateHandle &state, const Vector3d &value) |
virtual bool | setState (const ElementHandle &elementHandle, const ElementStateHandle &state, double value) |
virtual bool | setState (const ElementHandle &elementHandle, const ElementStateHandle &state, int_type value) |
virtual bool | setState (const ElementHandle &elementHandle, const ElementStateHandle &state, quint16 value) |
virtual bool | setState (const ElementHandle &elementHandle, const ElementStateHandle &state, quint8 value) |
virtual size_type | size () const =0 |
Static Public Member Functions | |
static MeshElementsInterface & | getNullMeshElementsInterface () |
using int_type = MeshModelInterface::int_type |
using ItemHandleListType = ElementHandleList |
using ItemHandleType = ElementHandle |
MeshNodesInterface and MeshElementsInterface both define these to simplify templates that operate on both in a similar way.
using StateHandleListType = ElementStateHandleList |
using StateHandleType = ElementStateHandle |
|
protected |
|
protected |
|
protectedvirtual |
|
inline |
|
inline |
|
inline |
|
inline |
|
pure virtual |
Implemented in FilteredMeshElementsInterface, LodMeshTrianglesInterface, PrimevalSegments, PrimevalTris, PrimevalQuads, PrimevalVolumes, StreamlinedMeshElementsInterface< T >, PrimevalMeshElementsInterfaceBase< T >, PrimevalMeshElementsInterfaceBase< Mesh::ShellElementList >, PrimevalMeshElementsInterfaceBase< Mesh::SegmentList >, and PrimevalMeshElementsInterfaceBase< Mesh::VolumeElementList >.
const ElementStateHandle & addState | ( | const QString & | name, |
const DataExecution::DataObject & | defaultValue | ||
) |
name | The name of the state being added. |
defaultValue | A default value that must support copy construction. |
If an element state for elementType already exists with name or defaultValue is not clone-able the add will fail.
const ElementStateHandle & addState | ( | const QString & | name, |
const T & | defaultValue | ||
) |
name | The name of the state being added. |
defaultValue | A default value that must be clone-able. |
If an element state already exists with name or defaultValue is not clone-able the add will fail.
NOTE: It is highly recommended that integer states are added using addState<MeshModelInterface::int_type>() to ensure consistencies across CPU architecture and OSs. double and Vector3d are also preferred as native types
|
protectedpure virtual |
name | Name of the state |
defaultValue | A default value for this state |
Derived classes must implement this method, returning the handle they will use to refer to this state. name and defaultValue are only passed to the derived class in case it also wants to do something with these parameters. The base class already stores these so most implementations will probably ignore them and simply worry about the handle.
Implemented in Hdf5MeshElementsInterface, FilteredMeshElementsInterface, LodMeshTrianglesInterface, PrimevalMeshElementsInterfaceBase< T >, PrimevalMeshElementsInterfaceBase< Mesh::ShellElementList >, PrimevalMeshElementsInterfaceBase< Mesh::SegmentList >, PrimevalMeshElementsInterfaceBase< Mesh::VolumeElementList >, and StreamlinedMeshElementsInterface< T >.
|
protectedpure virtual |
Implemented in FilteredMeshElementsInterface, LodMeshTrianglesInterface, PrimevalMeshElementsInterfaceBase< T >, PrimevalMeshElementsInterfaceBase< Mesh::ShellElementList >, PrimevalMeshElementsInterfaceBase< Mesh::SegmentList >, PrimevalMeshElementsInterfaceBase< Mesh::VolumeElementList >, PrimevalTris, PrimevalQuads, StreamlinedMeshElementsInterface< T >, and Hdf5MeshElementsInterface.
|
inline |
|
inline |
|
inlineprotectedvirtual |
Reimplemented in Hdf5MeshElementsInterface, FilteredMeshElementsInterface, LodMeshTrianglesInterface, PrimevalMeshElementsInterfaceBase< T >, PrimevalMeshElementsInterfaceBase< Mesh::ShellElementList >, PrimevalMeshElementsInterfaceBase< Mesh::SegmentList >, PrimevalMeshElementsInterfaceBase< Mesh::VolumeElementList >, PrimevalTris, PrimevalQuads, and StreamlinedMeshElementsInterface< T >.
|
virtual |
|
virtual |
|
pure virtual |
Clears all element data. Defined states must be removed separately via removeAllStates.
Implemented in Hdf5MeshElementsInterface, FilteredMeshElementsInterface, LodMeshTrianglesInterface, PrimevalMeshElementsInterfaceBase< T >, PrimevalMeshElementsInterfaceBase< Mesh::ShellElementList >, PrimevalMeshElementsInterfaceBase< Mesh::SegmentList >, PrimevalMeshElementsInterfaceBase< Mesh::VolumeElementList >, PrimevalTris, PrimevalQuads, and StreamlinedMeshElementsInterface< T >.
|
protected |
|
virtual |
|
virtual |
|
virtual |
digestFunc |
|
virtual |
|
virtual |
|
inline |
Default implmentation simply checks size(), derived classes should override if something more efficient is possible.
|
inline |
|
inline |
|
inlineprotectedvirtual |
Reimplemented in Hdf5MeshElementsInterface, FilteredMeshElementsInterface, LodMeshTrianglesInterface, PrimevalMeshElementsInterfaceBase< T >, PrimevalMeshElementsInterfaceBase< Mesh::ShellElementList >, PrimevalMeshElementsInterfaceBase< Mesh::SegmentList >, PrimevalMeshElementsInterfaceBase< Mesh::VolumeElementList >, and StreamlinedMeshElementsInterface< T >.
bool ensureAllStatesSupported | ( | const ElementStateHandleList & | states | ) |
Implemented in Hdf5MeshElementsInterface, FilteredMeshElementsInterface, LodMeshTrianglesInterface, PrimevalMeshElementsInterfaceBase< T >, PrimevalMeshElementsInterfaceBase< Mesh::ShellElementList >, PrimevalMeshElementsInterfaceBase< Mesh::SegmentList >, PrimevalMeshElementsInterfaceBase< Mesh::VolumeElementList >, and StreamlinedMeshElementsInterface< T >.
ElementStateHandleList getAllStateHandles | ( | ) | const |
|
virtual |
Reimplemented in StreamlinedMeshElementsInterface< T >.
const ElementType::Type & getElementType | ( | ) | const |
|
pure virtual |
element | The element handle we're requesting the nodes for |
index | Which node of the given element is being requested |
Implemented in FilteredMeshElementsInterface, LodMeshTrianglesInterface, PrimevalMeshElementsInterfaceBase< T >, PrimevalMeshElementsInterfaceBase< Mesh::ShellElementList >, PrimevalMeshElementsInterfaceBase< Mesh::SegmentList >, PrimevalMeshElementsInterfaceBase< Mesh::VolumeElementList >, StreamlinedMeshElementsInterface< T >, and Hdf5MeshElementsInterface.
|
virtual |
element | The element handle we're requesting the node for |
node | Does this element contain this node |
Reimplemented in LodMeshTrianglesInterface.
|
pure virtual |
element | The element handle we're requesting the nodes for |
nodes | A node list to write the results to |
Implemented in FilteredMeshElementsInterface, LodMeshTrianglesInterface, PrimevalMeshElementsInterfaceBase< T >, PrimevalMeshElementsInterfaceBase< Mesh::ShellElementList >, PrimevalMeshElementsInterfaceBase< Mesh::SegmentList >, PrimevalMeshElementsInterfaceBase< Mesh::VolumeElementList >, and StreamlinedMeshElementsInterface< T >.
|
static |
|
inline |
elementHandle | The element we're requesting the state of |
state | The state we're requesting |
result | A DataObject to store the result in (must be of type state.getDataObject() unless the implementation can convert) |
This method calls the pure virtual getStateImpl()
|
inline |
elementHandle | The element we're requesting the state of |
state | The state we're requesting |
result | A DataObject to store the result in (must be of type state.getDataObject() unless the implementation can convert) |
This method calls the pure virtual getStateImpl() const and ensures that the returned data is not shared (making it logically const).
As this is a const method the data held by result is guaranteed to be owned by result and not be a shared reference to data held by the implementation. As a result of this it may be less expensive to call the non-const version of this method if possible to avoid cloning data.
|
virtual |
Convenience function for common type that avoids client needing to use a DataObject. This method still uses an internal TypedObject to call the implementations corresponding method unless the implementation overrides this virtual method and handles this type directly.
Reimplemented in LodMeshTrianglesInterface, PrimevalMeshElementsInterfaceBase< T >, PrimevalMeshElementsInterfaceBase< Mesh::ShellElementList >, PrimevalMeshElementsInterfaceBase< Mesh::SegmentList >, PrimevalMeshElementsInterfaceBase< Mesh::VolumeElementList >, StreamlinedMeshElementsInterface< T >, and Hdf5MeshElementsInterface.
|
virtual |
Convenience function for common type that avoids client needing to use a DataObject. This method still uses an internal TypedObject to call the implementations corresponding method unless the implementation overrides this virtual method and handles this type directly.
Reimplemented in LodMeshTrianglesInterface, PrimevalMeshElementsInterfaceBase< T >, PrimevalMeshElementsInterfaceBase< Mesh::ShellElementList >, PrimevalMeshElementsInterfaceBase< Mesh::SegmentList >, PrimevalMeshElementsInterfaceBase< Mesh::VolumeElementList >, StreamlinedMeshElementsInterface< T >, and Hdf5MeshElementsInterface.
|
virtual |
Convenience function for common type that avoids client needing to use a DataObject. This method still uses an internal TypedObject to call the implementations corresponding method unless the implementation overrides this virtual method and handles this type directly.
Reimplemented in StreamlinedMeshElementsInterface< T >, and Hdf5MeshElementsInterface.
|
virtual |
Convenience function for common type that avoids client needing to use a DataObject. This method still uses an internal TypedObject to call the implementations corresponding method unless the implementation overrides this virtual method and handles this type directly.
Reimplemented in StreamlinedMeshElementsInterface< T >, and Hdf5MeshElementsInterface.
|
virtual |
Convenience function for common type that avoids client needing to use a DataObject. This method still uses an internal TypedObject to call the implementations corresponding method unless the implementation overrides this virtual method and handles this type directly.
Reimplemented in LodMeshTrianglesInterface, PrimevalMeshElementsInterfaceBase< T >, PrimevalMeshElementsInterfaceBase< Mesh::ShellElementList >, PrimevalMeshElementsInterfaceBase< Mesh::SegmentList >, PrimevalMeshElementsInterfaceBase< Mesh::VolumeElementList >, StreamlinedMeshElementsInterface< T >, and Hdf5MeshElementsInterface.
const ElementStateHandle & getStateHandle | ( | const QString & | name | ) | const |
|
protectedpure virtual |
elementHandle | The element we're requesting the state of |
state | The state we're requesting |
result | A DataObject to store the result in (must be of type state.getDataObject() unless the implementation can convert) |
Should be implmented as the const equivalent to getState()
This method is free to return shared data in result as it is only ever called by the public const getState method which will clone any shared data. As this is the case derived class should be able to implement the non-const getState() pure virtual as a simple call to this method as long as the only non-const thing this method does is return shared data.
Implemented in FilteredMeshElementsInterface, LodMeshTrianglesInterface, PrimevalMeshElementsInterfaceBase< T >, PrimevalMeshElementsInterfaceBase< Mesh::ShellElementList >, PrimevalMeshElementsInterfaceBase< Mesh::SegmentList >, PrimevalMeshElementsInterfaceBase< Mesh::VolumeElementList >, StreamlinedMeshElementsInterface< T >, and Hdf5MeshElementsInterface.
|
protectedpure virtual |
elementHandle | The element we're requesting the state of |
state | The state we're requesting |
result | A DataObject to store the result in (must be of type state.getDataObject() unless the implementation can convert) |
Implemented in FilteredMeshElementsInterface, LodMeshTrianglesInterface, PrimevalMeshElementsInterfaceBase< T >, PrimevalMeshElementsInterfaceBase< Mesh::ShellElementList >, PrimevalMeshElementsInterfaceBase< Mesh::SegmentList >, PrimevalMeshElementsInterfaceBase< Mesh::VolumeElementList >, StreamlinedMeshElementsInterface< T >, and Hdf5MeshElementsInterface.
bool hasState | ( | const QString & | name | ) | const |
|
virtual |
node | The node we're querying the attachment of |
element | The element interface we're querying the attachment of |
|
pure virtual |
dataFactory | The DataFactory for the type of state we're checking support for |
Implemented in Hdf5MeshElementsInterface, FilteredMeshElementsInterface, LodMeshTrianglesInterface, PrimevalMeshElementsInterfaceBase< T >, PrimevalMeshElementsInterfaceBase< Mesh::ShellElementList >, PrimevalMeshElementsInterfaceBase< Mesh::SegmentList >, PrimevalMeshElementsInterfaceBase< Mesh::VolumeElementList >, and StreamlinedMeshElementsInterface< T >.
|
inlinevirtual |
Derived classes should not need to re-implement this method, this method should only be returning false when called on the null interface returned by get getNullMeshElementsInterface()
|
virtual |
Reimplemented in StreamlinedMeshElementsInterface< T >.
|
protected |
|
protected |
index | The index of the existing state |
name | The name of the existing state |
defaultValue | The default value of the existing state |
Can be called by derived class is they need the base class to be aware of an existing state that wasn't added by a call to addState(). An example of which is when a MeshElementsInterface is acting as a wrapper for an existing mesh data structure that already contains states.
|
pure virtual |
Implemented in FilteredMeshElementsInterface, LodMeshTrianglesInterface, PrimevalMeshElementsInterfaceBase< T >, PrimevalMeshElementsInterfaceBase< Mesh::ShellElementList >, PrimevalMeshElementsInterfaceBase< Mesh::SegmentList >, PrimevalMeshElementsInterfaceBase< Mesh::VolumeElementList >, StreamlinedMeshElementsInterface< T >, and Hdf5MeshElementsInterface.
bool removeAllStates | ( | ) |
bool removeState | ( | const ElementStateHandle & | state | ) |
bool removeState | ( | const QString & | name | ) |
|
protectedpure virtual |
Derived classes must implement this method, deleting the state.
Implemented in FilteredMeshElementsInterface, LodMeshTrianglesInterface, PrimevalMeshElementsInterfaceBase< T >, PrimevalMeshElementsInterfaceBase< Mesh::ShellElementList >, PrimevalMeshElementsInterfaceBase< Mesh::SegmentList >, PrimevalMeshElementsInterfaceBase< Mesh::VolumeElementList >, PrimevalTris, PrimevalQuads, StreamlinedMeshElementsInterface< T >, and Hdf5MeshElementsInterface.
bool renameState | ( | const QString & | from, |
const QString & | to | ||
) |
|
inlinevirtual |
Default implementation does nothing
Reimplemented in Hdf5MeshElementsInterface, and StreamlinedMeshElementsInterface< T >.
|
virtual |
Reimplemented in StreamlinedMeshElementsInterface< T >.
|
pure virtual |
element | The element handle we're setting the nodes for |
node | The node to set |
index | The index to set the node for this element |
Implemented in FilteredMeshElementsInterface, LodMeshTrianglesInterface, PrimevalMeshElementsInterfaceBase< T >, PrimevalMeshElementsInterfaceBase< Mesh::ShellElementList >, PrimevalMeshElementsInterfaceBase< Mesh::SegmentList >, PrimevalMeshElementsInterfaceBase< Mesh::VolumeElementList >, StreamlinedMeshElementsInterface< T >, and Hdf5MeshElementsInterface.
|
pure virtual |
element | The element handle we're setting the nodes for |
nodes | A node list containing the nodes to set |
Implemented in FilteredMeshElementsInterface, LodMeshTrianglesInterface, PrimevalMeshElementsInterfaceBase< T >, PrimevalMeshElementsInterfaceBase< Mesh::ShellElementList >, PrimevalMeshElementsInterfaceBase< Mesh::SegmentList >, PrimevalMeshElementsInterfaceBase< Mesh::VolumeElementList >, and StreamlinedMeshElementsInterface< T >.
|
pure virtual |
elementHandle | The element we're setting the state of |
state | The state we're setting |
value | A DataObject containing the data to set (must be of type state.getDataObject() unless the implementation can convert) |
Implemented in FilteredMeshElementsInterface, LodMeshTrianglesInterface, PrimevalMeshElementsInterfaceBase< T >, PrimevalMeshElementsInterfaceBase< Mesh::ShellElementList >, PrimevalMeshElementsInterfaceBase< Mesh::SegmentList >, PrimevalMeshElementsInterfaceBase< Mesh::VolumeElementList >, StreamlinedMeshElementsInterface< T >, and Hdf5MeshElementsInterface.
|
virtual |
Convenience function for common type that avoids client needing to use a DataObject. This method still uses an internal TypedObject to call the implementations corresponding method unless the implementation overrides this virtual method and handles this type directly.
Reimplemented in LodMeshTrianglesInterface, PrimevalMeshElementsInterfaceBase< T >, PrimevalMeshElementsInterfaceBase< Mesh::ShellElementList >, PrimevalMeshElementsInterfaceBase< Mesh::SegmentList >, PrimevalMeshElementsInterfaceBase< Mesh::VolumeElementList >, StreamlinedMeshElementsInterface< T >, and Hdf5MeshElementsInterface.
|
virtual |
Convenience function for common type that avoids client needing to use a DataObject. This method still uses an internal TypedObject to call the implementations corresponding method unless the implementation overrides this virtual method and handles this type directly.
Reimplemented in LodMeshTrianglesInterface, PrimevalMeshElementsInterfaceBase< T >, PrimevalMeshElementsInterfaceBase< Mesh::ShellElementList >, PrimevalMeshElementsInterfaceBase< Mesh::SegmentList >, PrimevalMeshElementsInterfaceBase< Mesh::VolumeElementList >, StreamlinedMeshElementsInterface< T >, and Hdf5MeshElementsInterface.
|
virtual |
Convenience function for common type that avoids client needing to use a DataObject. This method still uses an internal TypedObject to call the implementations corresponding method unless the implementation overrides this virtual method and handles this type directly.
Reimplemented in LodMeshTrianglesInterface, PrimevalMeshElementsInterfaceBase< T >, PrimevalMeshElementsInterfaceBase< Mesh::ShellElementList >, PrimevalMeshElementsInterfaceBase< Mesh::SegmentList >, PrimevalMeshElementsInterfaceBase< Mesh::VolumeElementList >, StreamlinedMeshElementsInterface< T >, and Hdf5MeshElementsInterface.
|
virtual |
Convenience function for common type that avoids client needing to use a DataObject. This method still uses an internal TypedObject to call the implementations corresponding method unless the implementation overrides this virtual method and handles this type directly.
Reimplemented in StreamlinedMeshElementsInterface< T >, and Hdf5MeshElementsInterface.
|
virtual |
Convenience function for common type that avoids client needing to use a DataObject. This method still uses an internal TypedObject to call the implementations corresponding method unless the implementation overrides this virtual method and handles this type directly.
Reimplemented in StreamlinedMeshElementsInterface< T >, and Hdf5MeshElementsInterface.
|
pure virtual |
Implemented in Hdf5MeshElementsInterface, FilteredMeshElementsInterface, LodMeshTrianglesInterface, PrimevalMeshElementsInterfaceBase< T >, PrimevalMeshElementsInterfaceBase< Mesh::ShellElementList >, PrimevalMeshElementsInterfaceBase< Mesh::SegmentList >, PrimevalMeshElementsInterfaceBase< Mesh::VolumeElementList >, PrimevalTris, PrimevalQuads, and StreamlinedMeshElementsInterface< T >.
|
inlineprotectedvirtual |
Derived classes can implement this method to handle when a state is being renamed by the base class. As the state names are stored by the base class, in most cases the derived implementation wont need to do anything unless it is also storing the names.
Reimplemented in PrimevalMeshElementsInterfaceBase< T >, PrimevalMeshElementsInterfaceBase< Mesh::ShellElementList >, PrimevalMeshElementsInterfaceBase< Mesh::SegmentList >, and PrimevalMeshElementsInterfaceBase< Mesh::VolumeElementList >.