GemaCoreLib
The GeMA Core library
Loading...
Searching...
No Matches
gmFileIOUtils.h File Reference

Declaration of the GmFileIOUtils class. More...

#include "gmCoreConfig.h"
#include <functional>
#include "gmFileFilter.h"
Include dependency graph for gmFileIOUtils.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  GmFileIOUtils::GmWBuffer
 

Typedefs

using GmFileIOUtils::TransformF = std::function<void(const double*, int, double*)>
 

Functions

GMC_API_EXPORT void GmFileIOUtils::fillNodeAcBuffer (GmTaskManager *tm, const GmMesh *mesh, GmValueAccessor *nac, int dimFilter, const TransformF &transformFunc, const QVector< int > &indexer, int nodeStart, int nodeCount, GmWBuffer &bbuf)
 Utillity to fill a buffer with node accessor data. Gema tasks are used to speed up accessors with lua user functions.
 
GMC_API_EXPORT void GmFileIOUtils::fillCellAcBuffer (GmTaskManager *tm, const GmCellMesh *mesh, const GmCellAccessor *cac, const GmValueAccessor *coordAc, int dimFilter, const QVector< int > &indexer, int cellStart, int cellCount, GmWBuffer &bbuf)
 Utillity to fill a buffer with cell accessor data. Gema tasks are used to speed up accessors with lua user functions.
 
GMC_API_EXPORT int GmFileIOUtils::fillGaussAcBuffer (GmTaskManager *tm, const GmElementMesh *mesh, const GmGaussAccessor *gac, int rule, int dimFilter, const QVector< GmFileFilter::Indexer > &preIndex, int cellStart, int cellCount, int valueStart, GmWBuffer &bbuf)
 Utillity to fill a buffer with gauss accessor data. Gema tasks are used to speed up accessors with lua user functions.
 

Detailed Description

Declaration of the GmFileIOUtils class.

Author
Caio SOUZA
Date
2026

Function Documentation

◆ fillCellAcBuffer()

GMC_API_EXPORT void GmFileIOUtils::fillCellAcBuffer ( GmTaskManager * tm,
const GmCellMesh * mesh,
const GmCellAccessor * cac,
const GmValueAccessor * coordAc,
int dimFilter,
const QVector< int > & indexer,
int cellStart,
int cellCount,
GmWBuffer & bbuf )

Utillity to fill a buffer with cell accessor data. Gema tasks are used to speed up accessors with lua user functions.

Parameters
meshThe mesh that contains the Cell data to be saved
cacThe accessor providing Cell data.
dimFilterA filter that can specify that only a single dimension of a vector (or matrix) data should be exported. Use -1 to specify that all dimensions should be saved.
IndexerA vector with cellId and its global index start position
cellStartWhere in the Indexer we are starting from
cellCountHow many cells we are processing in this batch
bbufThe buffer to write to

◆ fillGaussAcBuffer()

GMC_API_EXPORT int GmFileIOUtils::fillGaussAcBuffer ( GmTaskManager * tm,
const GmElementMesh * mesh,
const GmGaussAccessor * gac,
int rule,
int dimFilter,
const QVector< GmFileFilter::Indexer > & preIndex,
int cellStart,
int cellCount,
int valueStart,
GmWBuffer & bbuf )

Utillity to fill a buffer with gauss accessor data. Gema tasks are used to speed up accessors with lua user functions.

Parameters
meshThe mesh that contains the Gauss data to be saved
gacThe accessor providing Gauss data.
ruleThe integration rule number
dimFilterA filter that can specify that only a single dimension of a vector (or matrix) data should be exported. Use -1 to specify that all dimensions should be saved.
preIndexA vector with cellId and its global index start position
cellStartStarting cell index
cellCountHow many cells we are processing in this batch
valueStartStarting global index for values in this batch
bbufThe buffer to write to
Returns
Returns number of entries processed (sum of processed cell's integration points)

◆ fillNodeAcBuffer()

GMC_API_EXPORT void GmFileIOUtils::fillNodeAcBuffer ( GmTaskManager * tm,
const GmMesh * mesh,
GmValueAccessor * nac,
int dimFilter,
const TransformF & transformFunc,
const QVector< int > & indexer,
int nodeStart,
int nodeCount,
GmWBuffer & bbuf )

Utillity to fill a buffer with node accessor data. Gema tasks are used to speed up accessors with lua user functions.

Parameters
meshThe mesh that contains the Cell data to be saved
nacThe accessor providing Node data.
dimFilterA filter that can specify that only a single dimension of a vector (or matrix) data should be exported. Use -1 to specify that all dimensions should be saved.
IndexerA vector with nodeId and its global index start position
nodeStartWhere in the Indexer we are starting from
nodeCountHow many nodes we are processing in this batch
bbufThe buffer to write to