- void pack() const;
- bool isAllocated() const;
- void checkAllocated() const;
- void desallocate();
- void reserve(std::size_t nbOfElems);
- void rearrange(int newNbOfCompo);
- void transpose();
- void pushBackSilent(T val);
- void pushBackValsSilent(const T *valsBg, const T *valsEnd);
- T popBackSilent();
- T front() const;
- T back() const;
- std::size_t getNbOfElemAllocated() const { return _mem.getNbOfElemAllocated(); }
- void allocIfNecessary(int nbOfTuple, int nbOfCompo);
- void deepCopyFrom(const DataArrayTemplate<T>& other);
- void reverse();
- void fillWithValue(T val);
- void reAlloc(std::size_t newNbOfTuple);
- void renumberInPlace(const int *old2New);
- void renumberInPlaceR(const int *new2Old);
- void sort(bool asc=true);
- typename Traits<T>::ArrayType *renumber(const int *old2New) const;
- typename Traits<T>::ArrayType *renumberR(const int *new2Old) const;
- typename Traits<T>::ArrayType *renumberAndReduce(const int *old2New, int newNbOfTuple) const;
- typename Traits<T>::ArrayType *changeNbOfComponents(int newNbOfComp, T dftValue) const;
- typename Traits<T>::ArrayType *subArray(int tupleIdBg, int tupleIdEnd=-1) const;
- void circularPermutation(int nbOfShift=1);
- void circularPermutationPerTuple(int nbOfShift=1);
- void reversePerTuple();
- void setPartOfValues1(const typename Traits<T>::ArrayType *a, int bgTuples, int endTuples, int stepTuples, int bgComp, int endComp, int stepComp, bool strictCompoCompare=true);
- void setPartOfValuesSimple1(T a, int bgTuples, int endTuples, int stepTuples, int bgComp, int endComp, int stepComp);
- void setPartOfValues2(const typename Traits<T>::ArrayType *a, const int *bgTuples, const int *endTuples, const int *bgComp, const int *endComp, bool strictCompoCompare=true);
- void setPartOfValuesSimple2(T a, const int *bgTuples, const int *endTuples, const int *bgComp, const int *endComp);
- void setPartOfValues3(const typename Traits<T>::ArrayType *a, const int *bgTuples, const int *endTuples, int bgComp, int endComp, int stepComp, bool strictCompoCompare=true);
- void setPartOfValuesSimple3(T a, const int *bgTuples, const int *endTuples, int bgComp, int endComp, int stepComp);
- void setPartOfValues4(const typename Traits<T>::ArrayType *a, int bgTuples, int endTuples, int stepTuples, const int *bgComp, const int *endComp, bool strictCompoCompare=true);
- void setPartOfValuesSimple4(T a, int bgTuples, int endTuples, int stepTuples, const int *bgComp, const int *endComp);
- void setPartOfValuesAdv(const typename Traits<T>::ArrayType *a, const DataArrayInt *tuplesSelec);
- void setContigPartOfSelectedValues(int tupleIdStart, const DataArray *aBase, const DataArrayInt *tuplesSelec);
- void setContigPartOfSelectedValuesSlice(int tupleIdStart, const DataArray *aBase, int bg, int end2, int step);
- T getMaxValue(int& tupleId) const;
- T getMaxValueInArray() const;
- T getMinValue(int& tupleId) const;
- T getMinValueInArray() const;
+ MEDCOUPLING_EXPORT void pack() const;
+ MEDCOUPLING_EXPORT bool isAllocated() const;
+ MEDCOUPLING_EXPORT void checkAllocated() const;
+ MEDCOUPLING_EXPORT void desallocate();
+ MEDCOUPLING_EXPORT void reserve(std::size_t nbOfElems);
+ MEDCOUPLING_EXPORT void rearrange(int newNbOfCompo);
+ MEDCOUPLING_EXPORT void transpose();
+ MEDCOUPLING_EXPORT void pushBackSilent(T val);
+ MEDCOUPLING_EXPORT void pushBackValsSilent(const T *valsBg, const T *valsEnd);
+ MEDCOUPLING_EXPORT T popBackSilent();
+ MEDCOUPLING_EXPORT T front() const;
+ MEDCOUPLING_EXPORT T back() const;
+ MEDCOUPLING_EXPORT std::size_t getNbOfElemAllocated() const { return _mem.getNbOfElemAllocated(); }
+ MEDCOUPLING_EXPORT void allocIfNecessary(int nbOfTuple, int nbOfCompo);
+ MEDCOUPLING_EXPORT void deepCopyFrom(const DataArrayTemplate<T>& other);
+ MEDCOUPLING_EXPORT void reverse();
+ MEDCOUPLING_EXPORT void fillWithValue(T val);
+ MEDCOUPLING_EXPORT void reAlloc(std::size_t newNbOfTuple);
+ MEDCOUPLING_EXPORT void renumberInPlace(const int *old2New);
+ MEDCOUPLING_EXPORT void renumberInPlaceR(const int *new2Old);
+ MEDCOUPLING_EXPORT void sort(bool asc=true);
+ MEDCOUPLING_EXPORT typename Traits<T>::ArrayType *renumber(const int *old2New) const;
+ MEDCOUPLING_EXPORT typename Traits<T>::ArrayType *renumberR(const int *new2Old) const;
+ MEDCOUPLING_EXPORT typename Traits<T>::ArrayType *renumberAndReduce(const int *old2New, int newNbOfTuple) const;
+ MEDCOUPLING_EXPORT typename Traits<T>::ArrayType *changeNbOfComponents(int newNbOfComp, T dftValue) const;
+ MEDCOUPLING_EXPORT typename Traits<T>::ArrayType *subArray(int tupleIdBg, int tupleIdEnd=-1) const;
+ MEDCOUPLING_EXPORT MCAuto<typename Traits<T>::ArrayTypeCh> selectPartDef(const PartDefinition* pd) const;
+ MEDCOUPLING_EXPORT void circularPermutation(int nbOfShift=1);
+ MEDCOUPLING_EXPORT void circularPermutationPerTuple(int nbOfShift=1);
+ MEDCOUPLING_EXPORT void reversePerTuple();
+ MEDCOUPLING_EXPORT void setPartOfValues1(const typename Traits<T>::ArrayType *a, int bgTuples, int endTuples, int stepTuples, int bgComp, int endComp, int stepComp, bool strictCompoCompare=true);
+ MEDCOUPLING_EXPORT void setPartOfValuesSimple1(T a, int bgTuples, int endTuples, int stepTuples, int bgComp, int endComp, int stepComp);
+ MEDCOUPLING_EXPORT void setPartOfValues2(const typename Traits<T>::ArrayType *a, const int *bgTuples, const int *endTuples, const int *bgComp, const int *endComp, bool strictCompoCompare=true);
+ MEDCOUPLING_EXPORT void setPartOfValuesSimple2(T a, const int *bgTuples, const int *endTuples, const int *bgComp, const int *endComp);
+ MEDCOUPLING_EXPORT void setPartOfValues3(const typename Traits<T>::ArrayType *a, const int *bgTuples, const int *endTuples, int bgComp, int endComp, int stepComp, bool strictCompoCompare=true);
+ MEDCOUPLING_EXPORT void setPartOfValuesSimple3(T a, const int *bgTuples, const int *endTuples, int bgComp, int endComp, int stepComp);
+ MEDCOUPLING_EXPORT void setPartOfValues4(const typename Traits<T>::ArrayType *a, int bgTuples, int endTuples, int stepTuples, const int *bgComp, const int *endComp, bool strictCompoCompare=true);
+ MEDCOUPLING_EXPORT void setPartOfValuesSimple4(T a, int bgTuples, int endTuples, int stepTuples, const int *bgComp, const int *endComp);
+ MEDCOUPLING_EXPORT void setPartOfValuesAdv(const typename Traits<T>::ArrayType *a, const DataArrayInt32 *tuplesSelec);
+ MEDCOUPLING_EXPORT void setContigPartOfSelectedValues(int tupleIdStart, const DataArray *aBase, const DataArrayInt32 *tuplesSelec);
+ MEDCOUPLING_EXPORT void setContigPartOfSelectedValuesSlice(int tupleIdStart, const DataArray *aBase, int bg, int end2, int step);
+ MEDCOUPLING_EXPORT T getMaxValue(int& tupleId) const;
+ MEDCOUPLING_EXPORT T getMaxValueInArray() const;
+ MEDCOUPLING_EXPORT T getMaxAbsValue(std::size_t& tupleId) const;
+ MEDCOUPLING_EXPORT T getMaxAbsValueInArray() const;
+ MEDCOUPLING_EXPORT T getMinValue(int& tupleId) const;
+ MEDCOUPLING_EXPORT T getMinValueInArray() const;
+ MEDCOUPLING_EXPORT void getTuple(int tupleId, T *res) const { std::copy(_mem.getConstPointerLoc(tupleId*_info_on_compo.size()),_mem.getConstPointerLoc((tupleId+1)*_info_on_compo.size()),res); }
+ template<class InputIterator>
+ void insertAtTheEnd(InputIterator first, InputIterator last);
+ MEDCOUPLING_EXPORT static void SetArrayIn(typename Traits<T>::ArrayType *newArray, typename Traits<T>::ArrayType* &arrayToSet);
+ MEDCOUPLING_EXPORT void writeOnPlace(std::size_t id, T element0, const T *others, int sizeOfOthers) { _mem.writeOnPlace(id,element0,others,sizeOfOthers); }
+ MEDCOUPLING_EXPORT void fillWithZero();
+ public:
+ MEDCOUPLING_EXPORT MemArray<T>& accessToMemArray() { return _mem; }
+ MEDCOUPLING_EXPORT const MemArray<T>& accessToMemArray() const { return _mem; }