Workspace 6.21.5
Classes | Public Types | Public Member Functions | Protected Member Functions | List of all members
MeshNodesInterface Class Referenceabstract

An interface to the nodes stored behind a MeshModelInterface.

#include <Mesh/DataStructures/MeshModelInterface/meshnodesinterface.h>

Inheritance diagram for MeshNodesInterface:
[legend]

Classes

class  const_iterator
 A const iterator for nodes. More...
 
class  iterator
 A non-const iterator for nodes. 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 = NodeHandleList
 
using ItemHandleType = NodeHandle
 
using size_type = MeshModelInterface::size_type
 
using StateHandleListType = NodeStateHandleList
 
using StateHandleType = NodeStateHandle
 

Public Member Functions

virtual NodeHandle add (const Vector3d &position)=0
 
const NodeStateHandleaddState (const QString &name, const DataExecution::DataObject &defaultValue)
 
template<typename T >
const NodeStateHandleaddState (const QString &name, const T &defaultValue)
 
iterator begin ()
 
const_iterator begin () const
 
virtual BoundingBoxMinimal calculateBoundingBox () const
 
virtual bool canAddState (const DataExecution::DataObject &defaultValue)
 
virtual bool canRemoveState (const NodeStateHandle &state)
 
virtual void clear ()=0
 
virtual bool digestContiguousFloatStateData (const NodeStateHandle &state, std::function< bool(size_type numNodes, size_type componentsPerNode, size_type stride, const double *data)> digestFunc) const
 
virtual bool digestContiguousIntegerStateData (const NodeStateHandle &state, std::function< bool(size_type numNodes, size_type componentsPerNode, size_type stride, const int_type *data)> digestFunc) const
 
virtual bool digestContiguousPositionData (std::function< bool(size_type numNodes, size_type stride, const double *data)> digestFunc) const
 
virtual bool digestContiguousUInt16StateData (const NodeStateHandle &state, std::function< bool(size_type numNodes, size_type componentsPerNode, size_type stride, const quint16 *data)> digestFunc) const
 
virtual bool digestContiguousUInt8StateData (const NodeStateHandle &state, std::function< bool(size_type numNodes, size_type componentsPerNode, size_type stride, const quint8 *data)> digestFunc) const
 
virtual bool empty () const
 
iterator end ()
 
const_iterator end () const
 
bool ensureAllStatesSupported (const NodeStateHandleList &states)
 
virtual iterator erase (const iterator &position)=0
 
NodeStateHandleList getAllStateHandles () const
 
virtual ContiguousDataAccessType getContiguousDataAccessType () const
 
virtual Vector3d getPosition (const NodeHandle &nodeHandle) const =0
 
bool getState (const NodeHandle &nodeHandle, const NodeStateHandle &state, DataExecution::DataObject &result)
 
bool getState (const NodeHandle &nodeHandle, const NodeStateHandle &state, DataExecution::DataObject &result) const
 
virtual bool getState (const NodeHandle &nodeHandle, const NodeStateHandle &state, double &result) const
 
virtual bool getState (const NodeHandle &nodeHandle, const NodeStateHandle &state, int_type &result) const
 
virtual bool getState (const NodeHandle &nodeHandle, const NodeStateHandle &state, quint16 &result) const
 
virtual bool getState (const NodeHandle &nodeHandle, const NodeStateHandle &state, quint8 &result) const
 
virtual bool getState (const NodeHandle &nodeHandle, const NodeStateHandle &state, Vector3d &result) const
 
const NodeStateHandlegetStateHandle (const QString &name) const
 
bool hasState (const QString &name) const
 
virtual size_t height () const
 
virtual size_type highestNodeIndex () const =0
 
virtual bool isDense () const
 
virtual bool isStateTypeSupported (const DataExecution::DataFactory &dataFactory) const =0
 
virtual bool load (MeshSerializer &serializer)
 
virtual void remove (const NodeHandle &nodeHandle)=0
 
bool removeAllStates ()
 
bool removeState (const NodeStateHandle &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, NodeHandleIndexHash &nodeIds) const
 
virtual void setPosition (const NodeHandle &nodeHandle, const Vector3d &position)=0
 
virtual bool setState (const NodeHandle &nodeHandle, const NodeStateHandle &state, const DataExecution::DataObject &value)=0
 
virtual bool setState (const NodeHandle &nodeHandle, const NodeStateHandle &state, const Vector3d &value)
 
virtual bool setState (const NodeHandle &nodeHandle, const NodeStateHandle &state, double value)
 
virtual bool setState (const NodeHandle &nodeHandle, const NodeStateHandle &state, int_type value)
 
virtual bool setState (const NodeHandle &nodeHandle, const NodeStateHandle &state, quint16 value)
 
virtual bool setState (const NodeHandle &nodeHandle, const NodeStateHandle &state, quint8 value)
 
virtual size_type size () const =0
 
virtual size_t width () const
 

Protected Member Functions

 MeshNodesInterface ()
 
 MeshNodesInterface (const MeshNodesInterface &)
 
virtual ~MeshNodesInterface ()
 
virtual NodeStateHandleaddStateToImplementation (const QString &name, const DataExecution::DataObject &defaultValue)=0
 
virtual NodeHandle advance (const NodeHandle &nodeHandle, size_type n) const =0
 
virtual NodeHandle beginHandle () const
 
iterator createIterator (const NodeHandle &handle) const
 
virtual NodeHandle endHandle () const
 
virtual bool getStateImpl (const NodeHandle &nodeHandle, const NodeStateHandle &state, DataExecution::DataObject &result) const =0
 
virtual bool getStateImpl (const NodeHandle &nodeHandle, const NodeStateHandle &state, DataExecution::DataObject &result)=0
 
MeshNodesInterfaceoperator= (const MeshNodesInterface &)
 
bool registerExistingState (MeshModelInterface::size_type index, const QString &name, const DataExecution::DataObject &defaultValue)
 
virtual bool removeStateFromImplementation (const NodeStateHandle &state)=0
 
virtual bool stateBeingRenamed (const NodeStateHandle &state, const QString &to)
 

Member Typedef Documentation

◆ int_type

◆ ItemHandleListType

using ItemHandleListType = NodeHandleList

◆ ItemHandleType

MeshNodesInterface and MeshElementsInterface both define these to simplify templates that operate on both in a similar way.

◆ size_type

◆ StateHandleListType

using StateHandleListType = NodeStateHandleList

◆ StateHandleType

Member Enumeration Documentation

◆ ContiguousDataAccessType

Not all interfaces support direct access to contiguously stored data, either because their data storage uses alternative in-memory container types, or because it stores data out-of-memory.

Enumerator
DirectBufferAccess 
CopiedBufferAccess 

Constructor & Destructor Documentation

◆ MeshNodesInterface() [1/2]

MeshNodesInterface ( )
protected

◆ MeshNodesInterface() [2/2]

MeshNodesInterface ( const MeshNodesInterface other)
protected

◆ ~MeshNodesInterface()

~MeshNodesInterface ( )
protectedvirtual

Member Function Documentation

◆ add()

virtual NodeHandle add ( const Vector3d position)
pure virtual
Parameters
positionThe position of the new node being added
Returns
A NodeHandle to the newly added node or an invalid NodeHandle if a new node could not be added. Subclass implementations can return an invalid handle simply by returning a default-constructed NodeHandle.

Implemented in Hdf5MeshNodesInterface, FilteredMeshNodesInterface, HierarchicalReferenceMeshNodesInterface, LodMeshNodesInterface, PrimevalMeshNodesInterface, and StreamlinedMeshNodesInterface< T >.

◆ addState() [1/2]

const NodeStateHandle & addState ( const QString &  name,
const DataExecution::DataObject defaultValue 
)
Parameters
nameThe name of the state being added.
defaultValueA default value that must be clone-able.

If a node state already exists with name or defaultValue is not clone-able the add will fail.

Returns
The newly added state or an invalid state if it could not be added.

◆ addState() [2/2]

const NodeStateHandle & addState ( const QString &  name,
const T &  defaultValue 
)
Parameters
nameThe name of the state being added.
defaultValueA default value that must be clone-able.

If a node state already exists with name or defaultValue is not clone-able the add will fail.

Returns
The newly added state or an invalid state if it could not be added.

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

◆ addStateToImplementation()

virtual NodeStateHandle * addStateToImplementation ( const QString &  name,
const DataExecution::DataObject defaultValue 
)
protectedpure virtual
Parameters
nameName of the state
defaultValueA default value of for this state

Derived classes must implement this method, returning a NodeStateHandle with the index they will use to refer to this state along with the name and default value passed as parameters.

Returns
A NodeStateHandle with the index the implementation has associated with this state. The caller will take ownership of this newed object. The indices assigned to states by the derived class do not have to be unique across all states but must be unique amongst all states of a given type. Hence the DataFactory and handle together form the unique ID. If the state could not be added a NULL pointer should be returned.
See also
isStateTypeSupported

Implemented in Hdf5MeshNodesInterface, FilteredMeshNodesInterface, HierarchicalReferenceMeshNodesInterface, LodMeshNodesInterface, PrimevalMeshNodesInterface, and StreamlinedMeshNodesInterface< T >.

◆ advance()

virtual NodeHandle advance ( const NodeHandle nodeHandle,
size_type  n 
) const
protectedpure virtual

◆ begin() [1/2]

MeshNodesInterface::iterator begin ( )
inline

◆ begin() [2/2]

MeshNodesInterface::const_iterator begin ( ) const
inline

◆ beginHandle()

NodeHandle beginHandle ( ) const
inlineprotectedvirtual

◆ calculateBoundingBox()

BoundingBoxMinimal calculateBoundingBox ( ) const
virtual
Returns
The bounding box for nodes or a null bounding box if nodes is empty.

Reimplemented in Hdf5MeshNodesInterface.

◆ canAddState()

bool canAddState ( const DataExecution::DataObject defaultValue)
virtual
Returns
True if allowed to add state, false otherwise.

◆ canRemoveState()

bool canRemoveState ( const NodeStateHandle state)
virtual
Returns
True if allowed to remove state, false otherwise.

◆ clear()

virtual void clear ( )
pure virtual

Clears all node data. Defined states must be removed separately via removeAllStates.

See also
removeAllStates

Implemented in Hdf5MeshNodesInterface, FilteredMeshNodesInterface, HierarchicalReferenceMeshNodesInterface, LodMeshNodesInterface, PrimevalMeshNodesInterface, and StreamlinedMeshNodesInterface< T >.

◆ createIterator()

MeshNodesInterface::iterator createIterator ( const NodeHandle handle) const
protected

◆ digestContiguousFloatStateData()

bool digestContiguousFloatStateData ( const NodeStateHandle state,
std::function< bool(size_type numNodes, size_type componentsPerNode, size_type stride, const double *data)>  digestFunc 
) const
virtual
Parameters
stateHandle of the state to digest.
digestFuncFunction that will digest the read-only state data from a contiguous buffer.
Returns
True if the digest function completed successfully, false otherwise.

Reimplemented in StreamlinedMeshNodesInterface< T >.

◆ digestContiguousIntegerStateData()

bool digestContiguousIntegerStateData ( const NodeStateHandle state,
std::function< bool(size_type numNodes, size_type componentsPerNode, size_type stride, const int_type *data)>  digestFunc 
) const
virtual

◆ digestContiguousPositionData()

bool digestContiguousPositionData ( std::function< bool(size_type numNodes, size_type stride, const double *data)>  digestFunc) const
virtual
Parameters
digestFuncFunction that will digest the read-only position data from a contiguous buffer.
Returns
True if the digest function completed successfully, false otherwise.

Reimplemented in StreamlinedMeshNodesInterface< T >.

◆ digestContiguousUInt16StateData()

bool digestContiguousUInt16StateData ( const NodeStateHandle state,
std::function< bool(size_type numNodes, size_type componentsPerNode, size_type stride, const quint16 *data)>  digestFunc 
) const
virtual

◆ digestContiguousUInt8StateData()

bool digestContiguousUInt8StateData ( const NodeStateHandle state,
std::function< bool(size_type numNodes, size_type componentsPerNode, size_type stride, const quint8 *data)>  digestFunc 
) const
virtual

◆ empty()

bool empty ( ) const
inlinevirtual

Default implmentation simply checks size(), derived classes should override if something more efficient is possible.

Reimplemented in Hdf5MeshNodesInterface, FilteredMeshNodesInterface, HierarchicalReferenceMeshNodesInterface, LodMeshNodesInterface, and StreamlinedMeshNodesInterface< T >.

◆ end() [1/2]

◆ end() [2/2]

MeshNodesInterface::const_iterator end ( ) const
inline

◆ endHandle()

NodeHandle endHandle ( ) const
inlineprotectedvirtual
Returns
A handle that represents the node "one past the end". Ie. An index analogous to std::container::end()
See also
end

Reimplemented in Hdf5MeshNodesInterface, FilteredMeshNodesInterface, HierarchicalReferenceMeshNodesInterface, LodMeshNodesInterface, PrimevalMeshNodesInterface, and StreamlinedMeshNodesInterface< T >.

◆ ensureAllStatesSupported()

bool ensureAllStatesSupported ( const NodeStateHandleList &  states)
Returns
true if all supplied states now exist on the interface

◆ erase()

virtual iterator erase ( const iterator position)
pure virtual
Returns
An iterator for the next node or end() if the erased node was at the end.
Postcondition
Erasing a node may invalidate any existing NodeHandles currently held by something outside of the class. Removing a node does not guarantee any associated elements are updated, calling code is responsible for this if required.
See also
MeshModelInterface::emptyTrash

Implemented in Hdf5MeshNodesInterface, FilteredMeshNodesInterface, HierarchicalReferenceMeshNodesInterface, LodMeshNodesInterface, PrimevalMeshNodesInterface, and StreamlinedMeshNodesInterface< T >.

◆ getAllStateHandles()

NodeStateHandleList getAllStateHandles ( ) const

◆ getContiguousDataAccessType()

MeshNodesInterface::ContiguousDataAccessType getContiguousDataAccessType ( ) const
virtual
Returns
The type of contiguous data access permitted by this implementation.

Reimplemented in StreamlinedMeshNodesInterface< T >.

◆ getPosition()

virtual Vector3d getPosition ( const NodeHandle nodeHandle) const
pure virtual
Parameters
nodeHandleThe node we're requesting the position of
Precondition
nodeHandle must be a valid handle or the result is undefined

Implemented in Hdf5MeshNodesInterface, FilteredMeshNodesInterface, HierarchicalReferenceMeshNodesInterface, LodMeshNodesInterface, PrimevalMeshNodesInterface, and StreamlinedMeshNodesInterface< T >.

◆ getState() [1/7]

bool getState ( const NodeHandle nodeHandle,
const NodeStateHandle state,
DataExecution::DataObject result 
)
inline
Parameters
nodeHandleThe node we're requesting the state of
stateThe state we're requesting
resultA DataObject to store the result in (must be of type state.getDataObject() unless the implementation can convert)
See also
getStateImpl

◆ getState() [2/7]

bool getState ( const NodeHandle nodeHandle,
const NodeStateHandle state,
DataExecution::DataObject result 
) const
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

◆ getState() [3/7]

bool getState ( const NodeHandle nodeHandle,
const NodeStateHandle state,
double &  result 
) const
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 Hdf5MeshNodesInterface, HierarchicalReferenceMeshNodesInterface, LodMeshNodesInterface, PrimevalMeshNodesInterface, and StreamlinedMeshNodesInterface< T >.

◆ getState() [4/7]

bool getState ( const NodeHandle nodeHandle,
const NodeStateHandle state,
int_type result 
) const
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 Hdf5MeshNodesInterface, HierarchicalReferenceMeshNodesInterface, LodMeshNodesInterface, PrimevalMeshNodesInterface, and StreamlinedMeshNodesInterface< T >.

◆ getState() [5/7]

bool getState ( const NodeHandle nodeHandle,
const NodeStateHandle state,
quint16 &  result 
) const
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 Hdf5MeshNodesInterface, HierarchicalReferenceMeshNodesInterface, and StreamlinedMeshNodesInterface< T >.

◆ getState() [6/7]

bool getState ( const NodeHandle nodeHandle,
const NodeStateHandle state,
quint8 &  result 
) const
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 Hdf5MeshNodesInterface, HierarchicalReferenceMeshNodesInterface, and StreamlinedMeshNodesInterface< T >.

◆ getState() [7/7]

bool getState ( const NodeHandle nodeHandle,
const NodeStateHandle state,
Vector3d result 
) const
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 Hdf5MeshNodesInterface, HierarchicalReferenceMeshNodesInterface, LodMeshNodesInterface, PrimevalMeshNodesInterface, and StreamlinedMeshNodesInterface< T >.

◆ getStateHandle()

const NodeStateHandle & getStateHandle ( const QString &  name) const

◆ getStateImpl() [1/2]

virtual bool getStateImpl ( const NodeHandle nodeHandle,
const NodeStateHandle state,
DataExecution::DataObject result 
) const
protectedpure virtual
Parameters
nodeHandleThe node we're requesting the state of
stateThe state we're requesting
resultA DataObject to store the result in (must be of type state.getDataObject() unless the implementation can convert)

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.

See also
getState

Implemented in Hdf5MeshNodesInterface, FilteredMeshNodesInterface, HierarchicalReferenceMeshNodesInterface, LodMeshNodesInterface, PrimevalMeshNodesInterface, and StreamlinedMeshNodesInterface< T >.

◆ getStateImpl() [2/2]

virtual bool getStateImpl ( const NodeHandle nodeHandle,
const NodeStateHandle state,
DataExecution::DataObject result 
)
protectedpure virtual
Parameters
nodeHandleThe node we're requesting the state of
stateThe state we're requesting
resultA DataObject to store the result in (must be of type state.getDataObject() unless the implementation can convert)
See also
getState

Implemented in Hdf5MeshNodesInterface, FilteredMeshNodesInterface, HierarchicalReferenceMeshNodesInterface, LodMeshNodesInterface, PrimevalMeshNodesInterface, and StreamlinedMeshNodesInterface< T >.

◆ hasState()

bool hasState ( const QString &  name) const

◆ height()

size_t height ( ) const
inlinevirtual
Returns
For unorganised node sets, returns 1. For organised node sets, returns the number of rows in the dataset

◆ highestNodeIndex()

virtual size_type highestNodeIndex ( ) const
pure virtual
Returns
highest index used by a valid NodeHandle (may be higher than size() if implementation is sparse or has invalid nodes internally)

Implemented in Hdf5MeshNodesInterface, FilteredMeshNodesInterface, HierarchicalReferenceMeshNodesInterface, LodMeshNodesInterface, PrimevalMeshNodesInterface, and StreamlinedMeshNodesInterface< T >.

◆ isDense()

bool isDense ( ) const
inlinevirtual
Returns
True if no points are invalid (i.e. have Nan or Inf values)

◆ isStateTypeSupported()

virtual bool isStateTypeSupported ( const DataExecution::DataFactory dataFactory) const
pure virtual
Parameters
dataFactoryThe DataFactory for the type of state we're checking support for
Returns
Whether the implementation supports node states of this type
See also
addState(const QString& name, const T& defaultValue)

Implemented in Hdf5MeshNodesInterface, FilteredMeshNodesInterface, HierarchicalReferenceMeshNodesInterface, LodMeshNodesInterface, PrimevalMeshNodesInterface, and StreamlinedMeshNodesInterface< T >.

◆ load()

bool load ( MeshSerializer serializer)
virtual

◆ operator=()

MeshNodesInterface & operator= ( const MeshNodesInterface other)
protected

◆ registerExistingState()

bool registerExistingState ( MeshModelInterface::size_type  index,
const QString &  name,
const DataExecution::DataObject defaultValue 
)
protected
Parameters
indexThe index of the existing state
nameThe name of the existing state
defaultValueThe 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 MeshNodesInterface is acting as a wrapper for an existing mesh data structure that already contains states.

See also
addStateToImplementation

◆ remove()

virtual void remove ( const NodeHandle nodeHandle)
pure virtual
Postcondition
Removing a node may invalidate any existing NodeHandles currently held by something outside of the class. Removing a node does not guarantee any associated elements are updated, calling code is responsible for this if required. nodeHandle param is const and remains unmodified.
See also
MeshModelInterface::emptyTrash

Implemented in Hdf5MeshNodesInterface, FilteredMeshNodesInterface, HierarchicalReferenceMeshNodesInterface, LodMeshNodesInterface, PrimevalMeshNodesInterface, and StreamlinedMeshNodesInterface< T >.

◆ removeAllStates()

bool removeAllStates ( )

◆ removeState() [1/2]

bool removeState ( const NodeStateHandle state)
Postcondition
state will be an invalid handle after this call has been made and should no longer be used by the calling code.
Returns
true if succeed in removing state, false otherwise

◆ removeState() [2/2]

bool removeState ( const QString &  name)

◆ removeStateFromImplementation()

virtual bool removeStateFromImplementation ( const NodeStateHandle state)
protectedpure virtual

Derived classes must implement this method, deleting the state.

Returns
true if the state was removed or false if there was an error.

Implemented in Hdf5MeshNodesInterface, FilteredMeshNodesInterface, HierarchicalReferenceMeshNodesInterface, LodMeshNodesInterface, PrimevalMeshNodesInterface, and StreamlinedMeshNodesInterface< T >.

◆ renameState()

bool renameState ( const QString &  from,
const QString &  to 
)

◆ reserve()

void reserve ( MeshNodesInterface::size_type  n)
inlinevirtual

◆ save()

bool save ( MeshSerializer serializer,
NodeHandleIndexHash nodeIds 
) const
virtual

◆ setPosition()

virtual void setPosition ( const NodeHandle nodeHandle,
const Vector3d position 
)
pure virtual
Parameters
nodeHandleThe node we're setting the position of
positionThe position to set on the node
Precondition
nodeHandle must be a valid handle or the result is undefined

Implemented in Hdf5MeshNodesInterface, FilteredMeshNodesInterface, HierarchicalReferenceMeshNodesInterface, LodMeshNodesInterface, PrimevalMeshNodesInterface, and StreamlinedMeshNodesInterface< T >.

◆ setState() [1/6]

virtual bool setState ( const NodeHandle nodeHandle,
const NodeStateHandle state,
const DataExecution::DataObject value 
)
pure virtual
Parameters
nodeHandleThe node we're setting the state of
stateThe state we're setting
valueA DataObject containing the data to set (must be of type state.getDataObject() unless the implementation can convert)

Implemented in Hdf5MeshNodesInterface, FilteredMeshNodesInterface, HierarchicalReferenceMeshNodesInterface, LodMeshNodesInterface, PrimevalMeshNodesInterface, and StreamlinedMeshNodesInterface< T >.

◆ setState() [2/6]

bool setState ( const NodeHandle nodeHandle,
const NodeStateHandle state,
const Vector3d value 
)
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 Hdf5MeshNodesInterface, HierarchicalReferenceMeshNodesInterface, LodMeshNodesInterface, PrimevalMeshNodesInterface, and StreamlinedMeshNodesInterface< T >.

◆ setState() [3/6]

bool setState ( const NodeHandle nodeHandle,
const NodeStateHandle state,
double  value 
)
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 Hdf5MeshNodesInterface, HierarchicalReferenceMeshNodesInterface, LodMeshNodesInterface, PrimevalMeshNodesInterface, and StreamlinedMeshNodesInterface< T >.

◆ setState() [4/6]

bool setState ( const NodeHandle nodeHandle,
const NodeStateHandle state,
int_type  value 
)
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 Hdf5MeshNodesInterface, HierarchicalReferenceMeshNodesInterface, LodMeshNodesInterface, PrimevalMeshNodesInterface, and StreamlinedMeshNodesInterface< T >.

◆ setState() [5/6]

bool setState ( const NodeHandle nodeHandle,
const NodeStateHandle state,
quint16  value 
)
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 Hdf5MeshNodesInterface, HierarchicalReferenceMeshNodesInterface, and StreamlinedMeshNodesInterface< T >.

◆ setState() [6/6]

bool setState ( const NodeHandle nodeHandle,
const NodeStateHandle state,
quint8  value 
)
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 Hdf5MeshNodesInterface, HierarchicalReferenceMeshNodesInterface, and StreamlinedMeshNodesInterface< T >.

◆ size()

virtual size_type size ( ) const
pure virtual

◆ stateBeingRenamed()

bool stateBeingRenamed ( const NodeStateHandle state,
const QString &  to 
)
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 re-implement this method unless it is also storing the names.

Returns
if the state rename can proceed or false if the derived class prohibits this name change.

Reimplemented in PrimevalMeshNodesInterface.

◆ width()

size_t width ( ) const
inlinevirtual
Returns
For unorganised node sets, returns the number of nodes in the dataset. For organised node sets, returns the number of nodes per row in the dataset