- virtual void checkCoherency() const throw(INTERP_KERNEL::Exception) = 0;
- void setMesh(MEDCouplingMesh *mesh);
- void setTime(double val) { _time=val; }
- double getTime() const { return _time; }
- void setDtIt(int dt, int it) { _dt=dt; _it=it; }
- void getDtIt(int& dt, int& it) { dt=_dt; it=_it; }
- MEDCouplingMesh *getMesh() const { return _mesh; }
- void setName(const char *name) { _name=name; }
- void setDescription(const char *desc) { _desc=desc; }
- const char *getName() const { return _name.c_str(); }
- TypeOfField getEntity() const { return _type; }
- protected:
- void updateTime();
+ MEDCOUPLING_EXPORT virtual void checkConsistencyLight() const;
+ MEDCOUPLING_EXPORT virtual bool areCompatibleForMerge(const MEDCouplingField *other) const;
+ MEDCOUPLING_EXPORT virtual bool areStrictlyCompatible(const MEDCouplingField *other) const;
+ MEDCOUPLING_EXPORT virtual bool areStrictlyCompatibleForMulDiv(const MEDCouplingField *other) const;
+ MEDCOUPLING_EXPORT virtual void copyTinyStringsFrom(const MEDCouplingField *other);
+ MEDCOUPLING_EXPORT void setMesh(const MEDCoupling::MEDCouplingMesh *mesh);
+ MEDCOUPLING_EXPORT const MEDCoupling::MEDCouplingMesh *getMesh() const { return _mesh; }
+ MEDCOUPLING_EXPORT MEDCoupling::MEDCouplingMesh *getMesh() { return const_cast<MEDCoupling::MEDCouplingMesh *>(_mesh); }
+ MEDCOUPLING_EXPORT void setName(const std::string& name) { _name=name; }
+ MEDCOUPLING_EXPORT std::string getDescription() const { return _desc; }
+ MEDCOUPLING_EXPORT void setDescription(const std::string& desc) { _desc=desc; }
+ MEDCOUPLING_EXPORT std::string getName() const { return _name; }
+ MEDCOUPLING_EXPORT TypeOfField getTypeOfField() const;
+ MEDCOUPLING_EXPORT NatureOfField getNature() const;
+ MEDCOUPLING_EXPORT virtual void setNature(NatureOfField nat);
+ MEDCOUPLING_EXPORT DataArrayDouble *getLocalizationOfDiscr() const;
+ MEDCOUPLING_EXPORT MEDCouplingFieldDouble *buildMeasureField(bool isAbs) const;
+ MEDCOUPLING_EXPORT MEDCouplingMesh *buildSubMeshData(const mcIdType *start, const mcIdType *end, DataArrayIdType *&di) const;
+ MEDCOUPLING_EXPORT MEDCouplingMesh *buildSubMeshDataRange(mcIdType begin, mcIdType end, mcIdType step, mcIdType& beginOut, mcIdType& endOut, mcIdType& stepOut, DataArrayIdType *&di) const;
+ MEDCOUPLING_EXPORT DataArrayIdType *computeTupleIdsToSelectFromCellIds(const mcIdType *startCellIds, const mcIdType *endCellIds) const;
+ MEDCOUPLING_EXPORT const MEDCouplingFieldDiscretization *getDiscretization() const { return _type; }
+ MEDCOUPLING_EXPORT MEDCouplingFieldDiscretization *getDiscretization() { return _type; }
+ MEDCOUPLING_EXPORT void setDiscretization(MEDCouplingFieldDiscretization *newDisc);
+ MEDCOUPLING_EXPORT mcIdType getNumberOfTuplesExpected() const;
+ MEDCOUPLING_EXPORT mcIdType getNumberOfMeshPlacesExpected() const;
+ // Gauss point specific methods
+ MEDCOUPLING_EXPORT void setGaussLocalizationOnType(INTERP_KERNEL::NormalizedCellType type, const std::vector<double>& refCoo,
+ const std::vector<double>& gsCoo, const std::vector<double>& wg);
+ MEDCOUPLING_EXPORT void setGaussLocalizationOnCells(const mcIdType *begin, const mcIdType *end, const std::vector<double>& refCoo,
+ const std::vector<double>& gsCoo, const std::vector<double>& wg);
+ MEDCOUPLING_EXPORT void clearGaussLocalizations();
+ MEDCOUPLING_EXPORT MEDCouplingGaussLocalization& getGaussLocalization(int locId);
+ MEDCOUPLING_EXPORT mcIdType getGaussLocalizationIdOfOneType(INTERP_KERNEL::NormalizedCellType type) const;
+ MEDCOUPLING_EXPORT std::set<mcIdType> getGaussLocalizationIdsOfOneType(INTERP_KERNEL::NormalizedCellType type) const;
+ MEDCOUPLING_EXPORT mcIdType getNbOfGaussLocalization() const;
+ MEDCOUPLING_EXPORT mcIdType getGaussLocalizationIdOfOneCell(mcIdType cellId) const;
+ MEDCOUPLING_EXPORT void getCellIdsHavingGaussLocalization(int locId, std::vector<mcIdType>& cellIds) const;
+ MEDCOUPLING_EXPORT const MEDCouplingGaussLocalization& getGaussLocalization(int locId) const;
+ MEDCOUPLING_EXPORT void updateTime() const;
+ MEDCOUPLING_EXPORT std::size_t getHeapMemorySizeWithoutChildren() const;
+ MEDCOUPLING_EXPORT std::vector<const BigMemoryObject *> getDirectChildrenWithNull() const;
+ // for MED file RW
+ MEDCOUPLING_EXPORT mcIdType getNumberOfTuplesExpectedRegardingCode(const std::vector<mcIdType>& code, const std::vector<const DataArrayIdType *>& idsPerType) const;
+ MEDCOUPLING_EXPORT virtual void reprQuickOverview(std::ostream& stream) const = 0;