GemaMesh
The GeMA Mesh Plugin
Loading...
Searching...
No Matches
GmpNodeDataCoordAccessor< Vector > Class Template Reference

Auxiliary class implementing an accessor for mesh coordinate values stored in the given Vector type, expected to be either GmSingleVector or GmDualVector. Assumes that if Vector is a DualVector, the division between both partitions is ALWAYS on a node border and never inside a node coordinate. More...

#include <gmpNodeDataCoordAccessor.h>

Inheritance diagram for GmpNodeDataCoordAccessor< Vector >:
Collaboration diagram for GmpNodeDataCoordAccessor< Vector >:

Public Member Functions

 GmpNodeDataCoordAccessor (GmValueInfo *coordInfo, Vector< double > &nodeVector, const int &numNodes, const GmLogCategory &logger, UnitConverter *conv, QString desiredUnit)
 Constructor. Parameters = coordinates information, data vector and number of nodes. The vector and the number of nodes are references so that the accessor remains valid even if the mesh is changed.
 
virtual ~GmpNodeDataCoordAccessor ()
 Destructor.
 
virtual int size () const
 
virtual bool isDefValue (int index) const
 
virtual const double * valueAt (int index, const GmVector *coord) const
 
virtual double scalarValueAt (int index, const GmVector *coord) const
 
virtual bool setValue (int index, const double *value)
 
virtual bool setScalarValue (int index, double value)
 
virtual bool setValueAsDef (int index)
 
virtual bool setFunctionValue (int index, GmUserFunction *functionDef)
 
virtual bool setFunctionValue (int index, GmUserFunctionEvaluator *functionEval)
 
- Public Member Functions inherited from GmValueAccessorBase
 GmValueAccessorBase (GmValueInfo *info, const GmLogCategory &logger, UnitConverter *conv, QString desiredUnit)
 
virtual GmValueInfoinfo () const
 
virtual Unit unit () const
 
virtual bool hasUnitConversion () const
 
virtual QString valueStr (int index, bool evalFunctions, bool printDefAsNil, int fieldWidth=0, char format='g', int precision=-1, const GmVector *coord=NULL) const
 
virtual bool setFunctionFromName (int index, QString userFunctionId, QString &err)
 
virtual bool setValueFromVariant (int index, const QVariant &v, bool acceptMissingDimension, QString &err)
 
virtual void setEvalContext (GmValueSetEvalContext *context, bool ownsContext)
 
virtual GmValueSetEvalContextevalContext () const
 
- Public Member Functions inherited from GmValueAccessor
bool isScalar () const
 
virtual const double * defValue () const
 
int valueSize () const
 
virtual int adjustLinearIndex (int index, const GmMesh *m)
 
virtual int adjustLinearIndex (int index, int firstGhostIndex)
 
const double * value (int index) const
 
double scalarValue (int index) const
 
void matrixValueAt (int index, const GmVector *coord, GmCRMatrix &mat) const
 
void matrixValue (int index, GmCRMatrix &mat) const
 
void vectorValueAt (int index, const GmVector *coord, GmCRVector &vec) const
 
void vectorValue (int index, GmCRVector &vec) const
 
virtual bool setScalarValueAtDim (int index, int dim, double val)
 
bool setMatrixValue (int index, const GmMatrix &mat)
 
bool setVectorValue (int index, const GmVector &vec)
 
bool addScalarToValue (int index, double value)
 
bool addToValue (int index, const double *val)
 

Protected Member Functions

virtual bool isFunction (int index) const
 
virtual QString functionId (int index) const
 
- Protected Member Functions inherited from GmValueAccessorBase
const double * evalValue (GmUserFunctionEvaluator *functionEval, int index, const GmVector *coord) const
 
const double * evalValue (GmUserFunction *functionDef, int index, const GmVector *coord) const
 
const double * evalDefValue (int index, const GmVector *coord) const
 
virtual double convertToAccessorUnit (double val) const
 
virtual const double * convertToAccessorUnit (const double *p) const
 
virtual void convertFromAccessorUnit (double val, double *dst) const
 
virtual void convertFromAccessorUnit (const double *val, double *dst) const
 
- Protected Member Functions inherited from GmValueAccessor

Private Attributes

Vector< double > & _data
 
const int & _n
 The data vector. Size = _n * _dim.
 
int _dim
 Number of vector coordinate entries.
 

Additional Inherited Members

- Static Public Member Functions inherited from GmValueAccessorBase
static bool fillMatrixFromLuaTable (double *m, int nlin, int ncol, LuaTable &t, const GmValueInfo *info, const double *defVal, QString &err)
 
- Protected Attributes inherited from GmValueAccessorBase
GmValueInfo_info
 
const GmLogCategory_logger
 
GmTLBuffer< double, true > * _convData
 
UnitConverter_conv
 
UnitConverter_rconv
 
QString _unit
 

Detailed Description

template<template< class > class Vector>
class GmpNodeDataCoordAccessor< Vector >

Auxiliary class implementing an accessor for mesh coordinate values stored in the given Vector type, expected to be either GmSingleVector or GmDualVector. Assumes that if Vector is a DualVector, the division between both partitions is ALWAYS on a node border and never inside a node coordinate.

Member Function Documentation

◆ functionId()

template<template< class > class Vector>
virtual QString GmpNodeDataCoordAccessor< Vector >::functionId ( int index) const
inlineprotectedvirtual

Implements GmValueAccessor.

◆ isDefValue()

template<template< class > class Vector>
virtual bool GmpNodeDataCoordAccessor< Vector >::isDefValue ( int index) const
inlinevirtual

Implements GmValueAccessor.

◆ isFunction()

template<template< class > class Vector>
virtual bool GmpNodeDataCoordAccessor< Vector >::isFunction ( int index) const
inlineprotectedvirtual

Implements GmValueAccessor.

◆ scalarValueAt()

template<template< class > class Vector>
double GmpNodeDataCoordAccessor< Vector >::scalarValueAt ( int index,
const GmVector * coord ) const
virtual

Implements GmValueAccessor.

◆ setFunctionValue() [1/2]

template<template< class > class Vector>
virtual bool GmpNodeDataCoordAccessor< Vector >::setFunctionValue ( int index,
GmUserFunction * functionDef )
inlinevirtual

Implements GmValueAccessor.

◆ setFunctionValue() [2/2]

template<template< class > class Vector>
virtual bool GmpNodeDataCoordAccessor< Vector >::setFunctionValue ( int index,
GmUserFunctionEvaluator * functionEval )
inlinevirtual

Implements GmValueAccessor.

◆ setScalarValue()

template<template< class > class Vector>
bool GmpNodeDataCoordAccessor< Vector >::setScalarValue ( int index,
double value )
virtual

Implements GmValueAccessor.

◆ setValue()

template<template< class > class Vector>
bool GmpNodeDataCoordAccessor< Vector >::setValue ( int index,
const double * value )
virtual

Implements GmValueAccessor.

◆ setValueAsDef()

template<template< class > class Vector>
virtual bool GmpNodeDataCoordAccessor< Vector >::setValueAsDef ( int index)
inlinevirtual

Implements GmValueAccessor.

◆ size()

template<template< class > class Vector>
virtual int GmpNodeDataCoordAccessor< Vector >::size ( ) const
inlinevirtual

Implements GmValueAccessor.

◆ valueAt()

template<template< class > class Vector>
const double * GmpNodeDataCoordAccessor< Vector >::valueAt ( int index,
const GmVector * coord ) const
virtual

Implements GmValueAccessor.


The documentation for this class was generated from the following files: