Public Member Functions | |
void | accept (MEDFileFieldVisitor &visitor) const |
void | aggregate (const MEDFileFields &other) |
void | aggregateFieldsOnSameMeshes (MEDFileMeshes *ms) |
void | blowUpSE (MEDFileMeshes *ms, const MEDFileStructureElements *ses) |
MEDFileFields * | buildSubPart (const int *startIds, const int *endIds) const |
void | changeLocsRefsNamesGen (const std::vector< std::pair< std::vector< std::string >, std::string > > &mapOfModif) |
bool | changeMeshNames (const std::vector< std::pair< std::string, std::string > > &modifTab) |
void | changePflsRefsNamesGen (const std::vector< std::pair< std::vector< std::string >, std::string > > &mapOfModif) |
MEDFileFields * | deepCopy () const |
void | destroyFieldAtPos (int i) |
void | destroyFieldsAtPos (const int *startIds, const int *endIds) |
void | destroyFieldsAtPos2 (int bg, int end, int step) |
MEDFileFields * | extractPart (const std::map< int, MCAuto< DataArrayIdType > > &extractDef, MEDFileMesh *mm) const |
std::string | getClassName () const override |
std::vector< std::pair< int, int > > | getCommonIterations (bool &areThereSomeForgottenTS) const |
std::vector< const BigMemoryObject * > | getDirectChildrenWithNull () const |
MEDFileAnyTypeFieldMultiTS * | getFieldAtPos (int i) const |
std::vector< std::string > | getFieldsNames () const |
MEDFileAnyTypeFieldMultiTS * | getFieldWithName (const std::string &fieldName) const |
std::size_t | getHeapMemorySizeWithoutChildren () const |
std::vector< std::string > | getLocsReallyUsed () const |
std::vector< std::string > | getLocsReallyUsedMulti () const |
std::vector< std::string > | getMeshesNames () const |
void | getMeshSENames (std::vector< std::pair< std::string, std::string > > &ps) const |
int | getNumberOfFields () const |
std::vector< std::string > | getPflsReallyUsed () const |
std::vector< std::string > | getPflsReallyUsedMulti () const |
int | getPosFromFieldName (const std::string &fieldName) const |
MEDFileFieldsIterator * | iterator () |
void | keepOnlyOnMeshSE (const std::string &meshName, const std::string &seName) |
void | keepOnlyStructureElements () |
void | killStructureElements () |
MCAuto< MEDFileFields > | linearToQuadratic (const MEDFileMeshes *oldLin, const MEDFileMeshes *newQuad) const |
void | loadArrays () |
void | loadArraysIfNecessary () |
MEDFileFields * | partOfThisLyingOnSpecifiedMeshName (const std::string &meshName) const |
MCAuto< MEDFileFields > | partOfThisLyingOnSpecifiedMeshSEName (const std::string &meshName, const std::string &seName) const |
MEDFileFields * | partOfThisLyingOnSpecifiedTimeSteps (const std::vector< std::pair< int, int > > &timeSteps) const |
MEDFileFields * | partOfThisNotLyingOnSpecifiedTimeSteps (const std::vector< std::pair< int, int > > &timeSteps) const |
MCAuto< MEDFileFields > | partOfThisOnStructureElements () const |
bool | presenceOfStructureElements () const |
void | pushField (MEDFileAnyTypeFieldMultiTS *field) |
void | pushFields (const std::vector< MEDFileAnyTypeFieldMultiTS * > &fields) |
bool | removeFieldsWithoutAnyTimeStep () |
bool | renumberEntitiesLyingOnMesh (const std::string &meshName, const std::vector< mcIdType > &oldCode, const std::vector< mcIdType > &newCode, const DataArrayIdType *renumO2N) |
void | resize (int newSize) |
void | setFieldAtPos (int i, MEDFileAnyTypeFieldMultiTS *field) |
MEDFileFields * | shallowCpy () const |
std::string | simpleRepr () const |
void | simpleRepr (int bkOffset, std::ostream &oss) const |
void | unloadArrays () |
void | unloadArraysWithoutDataLoss () |
void | writeLL (med_idt fid) const |
Public Member Functions inherited from MEDCoupling::RefCountObjectOnly | |
bool | decrRef () const |
int | getRCValue () const |
void | incrRef () const |
RefCountObjectOnly & | operator= (const RefCountObjectOnly &other) |
Public Member Functions inherited from MEDCoupling::BigMemoryObject | |
std::string | debugHeapMemorySize () const |
std::vector< const BigMemoryObject * > | getAllTheProgeny () const |
std::vector< const BigMemoryObject * > | getDirectChildren () const |
std::size_t | getHeapMemorySize () const |
std::string | getHeapMemorySizeStr () const |
bool | isObjectInTheProgeny (const BigMemoryObject *obj) const |
virtual | ~BigMemoryObject () |
Public Member Functions inherited from MEDCoupling::MEDFileFieldGlobsReal | |
void | appendGlobs (const MEDFileFieldGlobsReal &other, double eps) |
void | appendLoc (const std::string &locName, INTERP_KERNEL::NormalizedCellType geoType, const std::vector< double > &refCoo, const std::vector< double > &gsCoo, const std::vector< double > &w) |
void | appendProfile (DataArrayIdType *pfl) |
void | changeLocName (const std::string &oldName, const std::string &newName) |
void | changeLocsNames (const std::vector< std::pair< std::vector< std::string >, std::string > > &mapOfModif) |
void | changeLocsNamesInStruct (const std::vector< std::pair< std::vector< std::string >, std::string > > &mapOfModif) |
void | changePflName (const std::string &oldName, const std::string &newName) |
void | changePflsNames (const std::vector< std::pair< std::vector< std::string >, std::string > > &mapOfModif) |
void | changePflsNamesInStruct (const std::vector< std::pair< std::vector< std::string >, std::string > > &mapOfModif) |
void | checkGlobsCoherency () const |
void | checkGlobsLocsPartCoherency () const |
void | checkGlobsPflsPartCoherency () const |
std::string | createNewNameOfLoc () const |
std::string | createNewNameOfPfl () const |
void | deepCpyGlobs (const MEDFileFieldGlobsReal &other) |
void | deepCpyOnlyUsedGlobs (const MEDFileFieldGlobsReal &other) |
bool | existsLoc (const std::string &locName) const |
bool | existsPfl (const std::string &pflName) const |
std::vector< const BigMemoryObject * > | getDirectChildrenWithNull () const |
std::string | getFileName () const |
std::size_t | getHeapMemorySizeWithoutChildren () const |
MEDFileFieldLoc & | getLocalization (const std::string &locName) |
const MEDFileFieldLoc & | getLocalization (const std::string &locName) const |
MEDFileFieldLoc & | getLocalizationFromId (int locId) |
const MEDFileFieldLoc & | getLocalizationFromId (int locId) const |
int | getLocalizationId (const std::string &loc) const |
std::vector< std::string > | getLocs () const |
int | getNbOfGaussPtPerCell (int locId) const |
std::vector< std::string > | getPfls () const |
DataArrayIdType * | getProfile (const std::string &pflName) |
const DataArrayIdType * | getProfile (const std::string &pflName) const |
DataArrayIdType * | getProfileFromId (int pflId) |
const DataArrayIdType * | getProfileFromId (int pflId) const |
int | getProfileId (const std::string &pfl) const |
void | killLocalizationIds (const std::vector< int > &locIds) |
void | killProfileIds (const std::vector< int > &pflIds) |
void | killStructureElementsInGlobs () |
void | loadAllGlobals (med_idt fid, const MEDFileEntities *entities=0) |
void | loadGlobals (med_idt fid) |
void | loadProfileInFile (med_idt fid, int id) |
void | loadProfileInFile (med_idt fid, int id, const std::string &pflName) |
MEDFileFieldGlobsReal () | |
MEDFileFieldGlobsReal (med_idt fid) | |
void | resetContent () |
void | setFileName (const std::string &fileName) |
void | shallowCpyGlobs (const MEDFileFieldGlobsReal &other) |
void | shallowCpyOnlyUsedGlobs (const MEDFileFieldGlobsReal &other) |
void | simpleReprGlobs (std::ostream &oss) const |
std::vector< std::vector< int > > | whichAreEqualLocs (double eps) const |
std::vector< std::vector< int > > | whichAreEqualProfiles () const |
void | writeGlobals (med_idt fid, const MEDFileWritable &opt) const |
std::vector< std::pair< std::vector< std::string >, std::string > > | zipLocsNames (double eps) |
std::vector< std::pair< std::vector< std::string >, std::string > > | zipPflsNames () |
virtual | ~MEDFileFieldGlobsReal () |
Static Public Member Functions | |
static MEDFileFields * | LoadPartOf (const std::string &fileName, bool loadAll=true, const MEDFileMeshes *ms=0) |
static MEDFileFields * | LoadSpecificEntities (const std::string &fileName, const std::vector< std::pair< TypeOfField, INTERP_KERNEL::NormalizedCellType > > &entities, bool loadAll=true) |
static MEDFileFields * | New () |
static MEDFileFields * | New (const std::string &fileName, bool loadAll=true) |
static MEDFileFields * | New (DataArrayByte *db) |
static MEDFileFields * | New (med_idt fid, bool loadAll=true) |
static MEDFileFields * | NewAdv (const std::string &fileName, bool loadAll, const MEDFileEntities *entities) |
static MEDFileFields * | NewAdv (med_idt fid, bool loadAll, const MEDFileEntities *entities) |
static MEDFileFields * | NewWithDynGT (const std::string &fileName, const MEDFileStructureElements *se, bool loadAll=true) |
static MEDFileFields * | NewWithDynGT (med_idt fid, const MEDFileStructureElements *se, bool loadAll=true) |
Static Public Member Functions inherited from MEDCoupling::BigMemoryObject | |
static std::size_t | GetHeapMemorySizeOfObjs (const std::vector< const BigMemoryObject * > &objs) |
Additional Inherited Members | |
Protected Member Functions inherited from MEDCoupling::RefCountObject | |
RefCountObject () | |
RefCountObject (const RefCountObject &other) | |
virtual | ~RefCountObject () |
Protected Member Functions inherited from MEDCoupling::RefCountObjectOnly | |
RefCountObjectOnly () | |
RefCountObjectOnly (const RefCountObjectOnly &other) | |
virtual | ~RefCountObjectOnly () |
Protected Member Functions inherited from MEDCoupling::MEDFileFieldGlobsReal | |
MEDFileFieldGlobs * | contentNotNull () |
const MEDFileFieldGlobs * | contentNotNull () const |
Protected Attributes inherited from MEDCoupling::MEDFileFieldGlobsReal | |
MCAuto< MEDFileFieldGlobs > | _globals |
Use class.
|
static |
|
static |
References New().
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
overridevirtual |
Reimplemented from MEDCoupling::BigMemoryObject.
|
static |
|
static |
References MEDCoupling::CheckFileForRead().
|
virtual |
Implements MEDCoupling::BigMemoryObject.
References MEDCoupling::MEDFileFieldGlobsReal::getHeapMemorySizeWithoutChildren().
|
virtual |
Implements MEDCoupling::BigMemoryObject.
MEDFileFields * MEDFileFields::deepCopy | ( | ) | const |
References shallowCpy().
Referenced by partOfThisLyingOnSpecifiedMeshSEName(), and partOfThisOnStructureElements().
MEDFileFields * MEDFileFields::shallowCpy | ( | ) | const |
Referenced by buildSubPart(), and deepCopy().
void MEDFileFields::writeLL | ( | med_idt | fid | ) | const |
void MEDFileFields::loadArrays | ( | ) |
This method alloc the arrays and load potentially huge arrays contained in this field. This method should be called when a MEDFileAnyTypeFieldMultiTS::New constructor has been with false as the last parameter. This method can be also called to refresh or reinit values from a file.
If | the fileName is not set or points to a non readable MED file. |
References MEDCoupling::MEDFileFieldGlobsReal::getFileName(), iterator(), and MEDCoupling::MEDFileAnyTypeFieldMultiTSWithoutSDA::loadBigArraysRecursively().
void MEDFileFields::loadArraysIfNecessary | ( | ) |
This method behaves as MEDFileFields::loadArrays does, the first call, if this was built using a file without loading big arrays. But once data loaded once, this method does nothing.
If | the fileName is not set or points to a non readable MED file. |
References MEDCoupling::MEDFileFieldGlobsReal::getFileName(), iterator(), and MEDCoupling::MEDFileAnyTypeFieldMultiTSWithoutSDA::loadBigArraysRecursivelyIfNecessary().
void MEDFileFields::unloadArrays | ( | ) |
This method releases potentially big data arrays and so returns to the same heap memory than status loaded with 'loadAll' parameter set to false. WARNING, this method does release arrays even if this does not come from a load of a MED file. So this method can lead to a loss of data. If you want to unload arrays safely call MEDFileFields::unloadArraysWithoutDataLoss instead.
References iterator(), and MEDCoupling::MEDFileAnyTypeFieldMultiTSWithoutSDA::unloadArrays().
Referenced by unloadArraysWithoutDataLoss().
void MEDFileFields::unloadArraysWithoutDataLoss | ( | ) |
This method potentially releases big data arrays if this is coming from a file. If this has been built from scratch this method will have no effect. This method is the symmetrical method of MEDFileFields::loadArraysIfNecessary. This method is useful to reduce safely amount of heap memory necessary for this by using MED file as database.
References MEDCoupling::MEDFileFieldGlobsReal::getFileName(), and unloadArrays().
int MEDFileFields::getNumberOfFields | ( | ) | const |
Referenced by aggregate(), extractPart(), MEDCoupling::MEDFileFieldsIterator::MEDFileFieldsIterator(), and simpleRepr().
std::vector< std::pair< int, int > > MEDFileFields::getCommonIterations | ( | bool & | areThereSomeForgottenTS | ) | const |
This method scans for all fields in this which time steps ids are common. Time step are discriminated by the pair of integer (iteration,order) whatever the double time value. If all returned time steps are exactly those for all fields in this output parameter areThereSomeForgottenTS will be set to false. If areThereSomeForgottenTS is set to true, only the sorted intersection of time steps present for all fields in this will be returned.
[out] | areThereSomeForgottenTS | - indicates to the caller if there is some time steps in this that are not present for all fields in this. |
std::vector< std::string > MEDFileFields::getFieldsNames | ( | ) | const |
References MEDCoupling::MEDFileFieldNameScope::getName().
Referenced by aggregate().
std::vector< std::string > MEDFileFields::getMeshesNames | ( | ) | const |
std::string MEDFileFields::simpleRepr | ( | ) | const |
void MEDFileFields::simpleRepr | ( | int | bkOffset, |
std::ostream & | oss | ||
) | const |
void MEDFileFields::resize | ( | int | newSize | ) |
void MEDFileFields::pushField | ( | MEDFileAnyTypeFieldMultiTS * | field | ) |
References MEDCoupling::MEDFileFieldGlobsReal::appendGlobs(), and MEDCoupling::MEDFileAnyTypeFieldMultiTS::getContent().
Referenced by aggregate(), and pushFields().
void MEDFileFields::pushFields | ( | const std::vector< MEDFileAnyTypeFieldMultiTS * > & | fields | ) |
References pushField().
void MEDFileFields::setFieldAtPos | ( | int | i, |
MEDFileAnyTypeFieldMultiTS * | field | ||
) |
int MEDFileFields::getPosFromFieldName | ( | const std::string & | fieldName | ) | const |
References MEDCoupling::MEDFileFieldNameScope::getName().
Referenced by getFieldWithName().
MEDFileAnyTypeFieldMultiTS * MEDFileFields::getFieldAtPos | ( | int | i | ) | const |
MEDFileAnyTypeFieldMultiTS * MEDFileFields::getFieldWithName | ( | const std::string & | fieldName | ) | const |
References getFieldAtPos(), and getPosFromFieldName().
MEDFileFields * MEDFileFields::buildSubPart | ( | const int * | startIds, |
const int * | endIds | ||
) | const |
Return a shallow copy of this reduced to the fields ids defined in [ startIds , endIds ). This method is accessible in python using getitem with a list in input.
References shallowCpy().
bool MEDFileFields::removeFieldsWithoutAnyTimeStep | ( | ) |
This method removes, if any, fields in this having no time steps. If there is one or more than one such field in this true is returned and those fields will not be referenced anymore in this.
If false is returned this does not contain such fields. If false is returned this method can be considered as const.
References MEDCoupling::MEDFileAnyTypeFieldMultiTSWithoutSDA::getNumberOfTS().
MEDFileFields * MEDFileFields::partOfThisLyingOnSpecifiedMeshName | ( | const std::string & | meshName | ) | const |
This method returns a new object containing part of this fields lying on mesh name specified by the input parameter meshName. This method can be seen as a filter applied on this, that returns an object containing reduced the list of fields compared to those in this. The returned object is a new object but the object on which it lies are only shallow copied from this.
[in] | meshName | - the name of the mesh on w |
References MEDCoupling::MEDFileFieldNameScope::getMeshName(), MEDCoupling::RefCountObjectOnly::incrRef(), and New().
MEDFileFields * MEDFileFields::partOfThisLyingOnSpecifiedTimeSteps | ( | const std::vector< std::pair< int, int > > & | timeSteps | ) | const |
This method returns a new object containing part of this fields lying ** exactly ** on the time steps specified by input parameter timeSteps. Input time steps are specified using a pair of integer (iteration, order). This method can be seen as a filter applied on this, that returns an object containing the same number of fields than those in this, but for each multitimestep only the time steps in timeSteps are kept. Typically the input parameter timeSteps comes from the call of MEDFileFields::getCommonIterations.
The returned object points to shallow copy of elements in this.
[in] | timeSteps | - the time steps given by a vector of pair of integers (iteration,order) |
If | there is a field in this that is not defined on a time step in the input timeSteps. |
References New(), and MEDCoupling::MEDFileAnyTypeFieldMultiTSWithoutSDA::partOfThisLyingOnSpecifiedTimeSteps().
MEDFileFields * MEDFileFields::partOfThisNotLyingOnSpecifiedTimeSteps | ( | const std::vector< std::pair< int, int > > & | timeSteps | ) | const |
bool MEDFileFields::presenceOfStructureElements | ( | ) | const |
void MEDFileFields::killStructureElements | ( | ) |
References iterator().
void MEDFileFields::keepOnlyStructureElements | ( | ) |
References iterator().
void MEDFileFields::keepOnlyOnMeshSE | ( | const std::string & | meshName, |
const std::string & | seName | ||
) |
References iterator().
void MEDFileFields::getMeshSENames | ( | std::vector< std::pair< std::string, std::string > > & | ps | ) | const |
void MEDFileFields::blowUpSE | ( | MEDFileMeshes * | ms, |
const MEDFileStructureElements * | ses | ||
) |
References aggregateFieldsOnSameMeshes().
void MEDFileFields::aggregateFieldsOnSameMeshes | ( | MEDFileMeshes * | ms | ) |
This method is dedicated to explosed Structured Elements that can lead to exotic situation. Especially when there are several structured elements for a same field.
This method looks into meshes into ms if there is presence of multiple mesh having same name. If so, these meshes are aggregated in the same order than ms. The fields in this lying on the same meshName are also aggregated in the same order than this.
References MEDCoupling::DataArrayDouble::Aggregate(), MEDCoupling::MEDFileAnyTypeFieldMultiTS::Aggregate(), MEDCoupling::MEDFileAnyTypeFieldMultiTS::BuildNewInstanceFromContent(), MEDCoupling::MEDFileUMesh::getCoords(), MEDCoupling::MEDFileMeshes::getMeshAtPos(), MEDCoupling::MEDFileMeshes::getMeshesNames(), MEDCoupling::MEDFileMeshes::getNumberOfMeshes(), MEDCoupling::MEDFileUMesh::New(), MEDCoupling::MEDFileMeshes::pushMesh(), and MEDCoupling::MEDFileMeshes::resize().
Referenced by blowUpSE().
MCAuto< MEDFileFields > MEDFileFields::partOfThisOnStructureElements | ( | ) | const |
References deepCopy().
MCAuto< MEDFileFields > MEDFileFields::partOfThisLyingOnSpecifiedMeshSEName | ( | const std::string & | meshName, |
const std::string & | seName | ||
) | const |
References deepCopy().
void MEDFileFields::aggregate | ( | const MEDFileFields & | other | ) |
References getFieldAtPos(), getFieldsNames(), getNumberOfFields(), and pushField().
MEDFileFieldsIterator * MEDFileFields::iterator | ( | ) |
void MEDFileFields::destroyFieldAtPos | ( | int | i | ) |
References destroyFieldsAtPos().
void MEDFileFields::destroyFieldsAtPos | ( | const int * | startIds, |
const int * | endIds | ||
) |
Referenced by destroyFieldAtPos().
void MEDFileFields::destroyFieldsAtPos2 | ( | int | bg, |
int | end, | ||
int | step | ||
) |
bool MEDFileFields::changeMeshNames | ( | const std::vector< std::pair< std::string, std::string > > & | modifTab | ) |
bool MEDFileFields::renumberEntitiesLyingOnMesh | ( | const std::string & | meshName, |
const std::vector< mcIdType > & | oldCode, | ||
const std::vector< mcIdType > & | newCode, | ||
const DataArrayIdType * | renumO2N | ||
) |
[in] | meshName | the name of the mesh that will be renumbered. |
[in] | oldCode | is of format returned by MEDCouplingUMesh::getDistributionOfTypes. And for each i oldCode[3*i+2] gives the position (MEDFileUMesh::PutInThirdComponentOfCodeOffset). This code corresponds to the distribution of types in the corresponding mesh. |
[in] | newCode | idem to param oldCode except that here the new distribution is given. |
[in] | renumO2N | the old to new renumber array. |
References iterator(), and MEDCoupling::MEDFileAnyTypeFieldMultiTSWithoutSDA::renumberEntitiesLyingOnMesh().
void MEDFileFields::accept | ( | MEDFileFieldVisitor & | visitor | ) | const |
References MEDCoupling::MEDFileFieldVisitor::endFieldEntry(), and MEDCoupling::MEDFileFieldVisitor::newFieldEntry().
Referenced by linearToQuadratic().
MCAuto< MEDFileFields > MEDFileFields::linearToQuadratic | ( | const MEDFileMeshes * | oldLin, |
const MEDFileMeshes * | newQuad | ||
) | const |
newQuad is expected to be the result of MEDFileUMesh::linearToQuadratic of oldLin
References accept(), MEDCoupling::MEDFileMeshes::getMeshAtPos(), MEDCoupling::MEDFileMeshes::getMeshWithName(), MEDCoupling::MEDFileMesh::getName(), MEDCoupling::MEDFileMeshes::getNumberOfMeshes(), and New().
MEDFileFields * MEDFileFields::extractPart | ( | const std::map< int, MCAuto< DataArrayIdType > > & | extractDef, |
MEDFileMesh * | mm | ||
) | const |
Return an extraction of this using extractDef map to specify the extraction. The keys of extractDef is level relative to max ext of mm mesh.
References getFieldAtPos(), getNumberOfFields(), and New().
|
virtual |
Implements MEDCoupling::MEDFileFieldGlobsReal.
|
virtual |
Implements MEDCoupling::MEDFileFieldGlobsReal.
|
virtual |
Implements MEDCoupling::MEDFileFieldGlobsReal.
|
virtual |
Implements MEDCoupling::MEDFileFieldGlobsReal.
|
virtual |
Implements MEDCoupling::MEDFileFieldGlobsReal.
References iterator().
|
virtual |
Implements MEDCoupling::MEDFileFieldGlobsReal.
References iterator().