Salome HOME
Merge from V6_main 19/03/2013
[tools/medcoupling.git] / doc / doxygen / fakesources / MEDCouplingMemArray.C
1 // This file contains some code used only for
2 // 1) generation of documentation for inline methods of array classes
3 // 2) grouping all methods into 3 lists" "Basic API", "Advanced API" and "Others..."
4
5 namespace ParaMEDMEM
6 {
7 /*!
8  * Returns the attribute \a _name of \a this array.
9  * See \ref MEDCouplingArrayBasicsName "DataArrays infos" for more information.
10  *  \return std::string - array name
11  */
12 std::string DataArray::getName() const {}
13
14 /*!
15  * Returns number of components of \a this array.
16  * See \ref MEDCouplingArrayBasicsTuplesAndCompo "DataArrays infos" for more information.
17  *  \return int - number of components
18  */
19 int DataArray::getNumberOfComponents() const {}
20
21 /*!
22  * Returns number of tuples of \a this array.
23  * See \ref MEDCouplingArrayBasicsName "DataArrays infos" for more information.
24  *  \return int - number of tuples
25  */
26 int DataArray::getNumberOfTuples() const {}
27
28 /*!
29  * Returns number of elements of \a this array.
30  * See \ref MEDCouplingArrayBasicsName "DataArrays infos" for more information.
31  *  \return int - number of elements == <em> this->getNumberOfTuples() * 
32  *          this->getNumberOfComponents() </em>
33  */
34 int DataArray::getNbOfElems() const {}
35
36 /*!
37  * Throws an exception if number of elements in \a this array differs from a given one.
38  * See \ref MEDCouplingArrayBasicsName "DataArrays infos" for more information.
39  *  \param [in] nbOfElems - expected array size.
40  *  \param [in] msg - message to return within the thrown exception.
41  *  \throw if <em> this->getNbOfElems() != nbOfElems</em>.
42  */
43 void DataArray::checkNbOfElems(int nbOfElems, const char *msg) const {}
44
45 /*!
46  * Returns values of a specified tuple.
47  *  \param [in] tupleId - index of the tuple of interest.
48  *  \param [out] res - C array returning values of the \a tupleId-th tuple. The \a res
49  *         must be allocated by the caller and be of size not less than \a
50  *         this->getNumberOfComponents().
51  */
52 void DataArrayDouble::getTuple(int tupleId, double *res) const {}
53
54 /*!
55  * Returns a value of a specified element of \a this array.
56  *  \param [in] tupleId - index of the tuple of interest.
57  *  \param [in] compoId - index of the component of interest.
58  *  \return double - the value of \a compoId-th component of \a tupleId-th tuple.
59  */
60 double DataArrayDouble::getIJ(int tupleId, int compoId) const {}
61
62 /*!
63  * Returns a pointer to the first element of the raw data of \a this array.
64  *  \return double* - the pointer to the value of 0-th tuple and 0-th component.
65  */
66 double * DataArrayDouble::getPointer() {}
67
68 /*!
69  * Returns a const pointer to the first element of the raw data of \a this array.
70  *  \return const double* - the pointer to the value of 0-th tuple and 0-th component.
71  */
72 const double * DataArrayDouble::getConstPointer() const {}
73
74 /*!
75  * Assigns a given value to a specified element of \a this array.
76  *  \param [in] tupleId - index of the tuple to modify.
77  *  \param [in] compoId - index of the component to modify.
78  *  \param [in] newVal - the value to assign to the value at \a compoId-th component
79  *              of \a tupleId-th tuple. 
80  */
81 void DataArrayDouble::setIJ(int tupleId, int compoId, double newVal) {}
82
83 /*!
84  * Assigns a given value to a specified element of \a this array which is not marked
85  * as changed.
86  *  \param [in] tupleId - index of the tuple to modify.
87  *  \param [in] compoId - index of the component to modify.
88  *  \param [in] newVal - the value to assign to the value at \a compoId-th component
89  *              of \a tupleId-th tuple.
90  */
91 void DataArrayDouble::setIJSilent(int tupleId, int compoId, double newVal) {}
92
93 /*!
94  * Copies values from another array starting from a specified element of \a this.
95  *  \param [in] id - index of element to assign the value \a element0 to.
96  *  \param [in] element0 - value to assign to the \a id-th element of \a this.
97  *  \param [in] others - values to assign to elements following the \a id-th
98  *         element of \a this.
99  *  \param [in] sizeOfOthers - number of values to copy from \a others.
100  */
101 void DataArrayDouble::writeOnPlace(int id, double element0, const double *others, int sizeOfOthers) {}
102
103 /*!
104  * Does nothing because this class does not aggregate any TimeLabel instance.
105  */
106 void DataArrayDouble::updateTime() const {}
107
108 /*!
109  * Returns values of a specified tuple.
110  *  \param [in] tupleId - index of the tuple of interest.
111  *  \param [out] res - C array returning values of the \a tupleId-th tuple. The \a res
112  *         must be allocated by the caller and be of size not less than \a
113  *         this->getNumberOfComponents().
114  *
115  *  \ref py_mcdataarrayint_getTuple "Here is a Python example".
116  */
117 void DataArrayInt::getTuple(int tupleId, int *res) const {}
118
119 /*!
120  * Returns a value of a specified element of \a this array.
121  *  \param [in] tupleId - index of the tuple of interest.
122  *  \param [in] compoId - index of the component of interest.
123  *  \return int - the value of \a compoId-th component of \a tupleId-th tuple.
124  */
125 int DataArrayInt::getIJ(int tupleId, int compoId) const {}
126
127
128 /*!
129  * Assigns a given value to a specified element of \a this array.
130  *  \param [in] tupleId - index of the tuple to modify.
131  *  \param [in] compoId - index of the component to modify.
132  *  \param [in] newVal - the value to assign to the value at \a compoId-th component
133  *              of \a tupleId-th tuple.
134  * \warning As this method declares \a this array as modified, it is more optimal to use
135  *          setIJSilent() for modification of muliple values of array and to call
136  *          declareAsNew() after the modification is done.
137  */
138 void DataArrayInt::setIJ(int tupleId, int compoId, int newVal) {}
139
140
141 /*!
142  * Assigns a given value to a specified element of \a this array which is \b not marked
143  * as changed.
144  *  \param [in] tupleId - index of the tuple to modify.
145  *  \param [in] compoId - index of the component to modify.
146  *  \param [in] newVal - the value to assign to the value at \a compoId-th component
147  *              of \a tupleId-th tuple.
148  */
149 void DataArrayInt::setIJSilent(int tupleId, int compoId, int newVal) {}
150
151 /*!
152  * Returns a pointer to the first element of the raw data of \a this array.
153  *  \return int* - the pointer to the value of 0-th tuple and 0-th component.
154  */
155 int * DataArrayInt::getPointer() {}
156
157 /*!
158  * Returns a const pointer to the first element of the raw data of \a this array.
159  *  \return const int* - the pointer to the value of 0-th tuple and 0-th component.
160  */
161 const int * DataArrayInt::getConstPointer() const {}
162
163 /*!
164  * Copies values from another array starting from a given element of \a this.
165  *  \param [in] id - index of element to assign the value \a element0 to.
166  *  \param [in] element0 - value to assign to the \a id-th element of \a this.
167  *  \param [in] others - values to assign to elements following the \a id-th
168  *         element of \a this.
169  *  \param [in] sizeOfOthers - number of values to copy from \a others.
170  */
171 void DataArrayInt::writeOnPlace(int id, int element0, const int *others, int sizeOfOthers) {}
172
173 }
174
175 namespace ParaMEDMEM
176 {
177 //================================================================================
178 /////////////////////// DataArray GROUPPING //////////////////////////////////////
179 //================================================================================
180
181 /*! \name Basic API   */
182 ///@{
183 DataArray::setName(const char *name);
184 DataArray::copyStringInfoFrom(const DataArray& other);
185 DataArray::areInfoEquals(const DataArray& other) const;
186 DataArray::getName() const;
187 DataArray::setInfoOnComponents(const std::vector<std::string>& info);
188 DataArray::getVarOnComponent(int i) const;
189 DataArray::getUnitOnComponent(int i) const;
190 DataArray::setInfoOnComponent(int i, const char *info);
191 DataArray::getNumberOfComponents() const;
192 DataArray::getNumberOfTuples() const;
193 DataArray::getNbOfElems() const;
194 DataArray::checkNbOfElems(int nbOfElems, const char *msg) const;
195 DataArray::GetVarNameFromInfo(const std::string& info);
196 DataArray::GetUnitFromInfo(const std::string& info);
197 ///@} 
198
199 /*! \name Others... */
200 ///@{
201 DataArray::getHeapMemorySize() const;
202 DataArray::copyPartOfStringInfoFrom(const DataArray& other, const std::vector<int>& compoIds);
203 DataArray::copyPartOfStringInfoFrom2(const std::vector<int>& compoIds, const DataArray& other);
204 DataArray::areInfoEqualsIfNotWhy(const DataArray& other, std::string& reason) const;
205 DataArray::reprWithoutNameStream(std::ostream& stream) const;
206 DataArray::cppRepr(const char *varName) const;
207 DataArray::getInfoOnComponents() const;
208 DataArray::getInfoOnComponents();
209 DataArray::getVarsOnComponent() const;
210 DataArray::getUnitsOnComponent() const;
211 DataArray::getInfoOnComponent(int i) const;
212 DataArray::checkNbOfTuples(int nbOfTuples, const char *msg) const;
213 DataArray::checkNbOfComps(int nbOfCompo, const char *msg) const;
214 DataArray::checkNbOfTuplesAndComp(const DataArray& other, const char *msg) const throw(INTERP_KERNEL::Exception);
215 DataArray::checkNbOfTuplesAndComp(int nbOfTuples, int nbOfCompo, const char *msg) const throw(INTERP_KERNEL::Exception);
216 DataArray::GetNumberOfItemGivenBES(int begin, int end, int step, const char *msg);
217 DataArray::GetNumberOfItemGivenBESRelative(int begin, int end, int step, const char *msg);
218 DataArray::GetPosOfItemGivenBESRelativeNoThrow(int value, int begin, int end, int step);
219 DataArray::reprCppStream(const char *varName, std::ostream& stream) const;
220 DataArray::DataArray();
221 DataArray::CheckValueInRange(int ref, int value, const char *msg);
222 DataArray::CheckValueInRangeEx(int value, int start, int end, const char *msg);
223 DataArray::CheckClosingParInRange(int ref, int value, const char *msg);
224 std::string              DataArray::_name;
225 std::vector<std::string> DataArray::_info_on_compo;
226 ///@} 
227
228 //================================================================================
229 /////////////////////// DataArrayDouble GROUPPING ////////////////////////////////
230 //================================================================================
231
232 /*! \name Basic API   */
233 ///@{
234 DataArrayDouble::isAllocated() const;
235 DataArrayDouble::setInfoAndChangeNbOfCompo(const std::vector<std::string>& info);
236 DataArrayDouble::doubleValue() const;
237 DataArrayDouble::empty() const;
238 DataArrayDouble::deepCpy() const;
239 DataArrayDouble::performCpy(bool deepCpy) const;
240 DataArrayDouble::cpyFrom(const DataArrayDouble& other);
241 DataArrayDouble::alloc(int nbOfTuple, int nbOfCompo);
242 DataArrayDouble::allocIfNecessary(int nbOfTuple, int nbOfCompo);
243 DataArrayDouble::fillWithZero();
244 DataArrayDouble::fillWithValue(double val);
245 DataArrayDouble::iota(double init=0.);
246 DataArrayDouble::isUniform(double val, double eps) const;
247 DataArrayDouble::sort(bool asc=true);
248 DataArrayDouble::reverse();
249 DataArrayDouble::checkMonotonic(bool increasing, double eps) const;
250 DataArrayDouble::isMonotonic(bool increasing, double eps) const;
251 DataArrayDouble::repr() const;
252 DataArrayDouble::isEqual(const DataArrayDouble& other, double prec) const;
253 DataArrayDouble::isEqualWithoutConsideringStr(const DataArrayDouble& other, double prec) const;
254 DataArrayDouble::reAlloc(int nbOfTuples);
255 DataArrayDouble::convertToIntArr() const;
256 DataArrayDouble::fromNoInterlace() const;
257 DataArrayDouble::toNoInterlace() const;
258 DataArrayDouble::renumberInPlace(const int* old2New);
259 DataArrayDouble::renumberInPlaceR(const int* new2Old);
260 DataArrayDouble::renumber(const int* old2New) const;
261 DataArrayDouble::renumberR(const int* new2Old) const;
262 DataArrayDouble::renumberAndReduce(const int* old2New, int newNbOfTuple) const;
263 DataArrayDouble::selectByTupleId(const int* new2OldBg, const int* new2OldEnd) const;
264 DataArrayDouble::selectByTupleIdSafe(const int* new2OldBg, const int* new2OldEnd) const;
265 DataArrayDouble::selectByTupleId2(int bg, int end2, int step) const;
266 DataArrayDouble::selectByTupleRanges(const std::vector<std::pair<int,int> >& ranges) const;
267 DataArrayDouble::substr(int tupleIdBg, int tupleIdEnd=-1) const;
268 DataArrayDouble::rearrange(int newNbOfCompo);
269 DataArrayDouble::transpose();
270 DataArrayDouble::changeNbOfComponents(int newNbOfComp, double dftValue) const;
271 DataArrayDouble::keepSelectedComponents(const std::vector<int>& compoIds) const;
272 DataArrayDouble::meldWith(const DataArrayDouble* other);
273 DataArrayDouble::findCommonTuples(double prec, int limitTupleId, DataArrayInt *&comm, DataArrayInt *&commIndex) const;
274 DataArrayDouble::getDifferentValues(double prec, int limitTupleId=-1) const;
275 DataArrayDouble::setSelectedComponents(const DataArrayDouble* a, const std::vector<int>& compoIds);
276 DataArrayDouble::setPartOfValues1(const DataArrayDouble* a, int bgTuples, int endTuples, int stepTuples, int bgComp, int endComp, int stepComp, bool strictCompoCompare=true);
277 DataArrayDouble::setPartOfValuesSimple1(double a, int bgTuples, int endTuples, int stepTuples, int bgComp, int endComp, int stepComp);
278 DataArrayDouble::setPartOfValues2(const DataArrayDouble* a, const int* bgTuples, const int* endTuples, const int* bgComp, const int* endComp, bool strictCompoCompare=true);
279 DataArrayDouble::setPartOfValuesSimple2(double a, const int* bgTuples, const int* endTuples, const int* bgComp, const int* endComp);
280 DataArrayDouble::setPartOfValues3(const DataArrayDouble* a, const int* bgTuples, const int* endTuples, int bgComp, int endComp, int stepComp, bool strictCompoCompare=true);
281 DataArrayDouble::setPartOfValuesSimple3(double a, const int* bgTuples, const int* endTuples, int bgComp, int endComp, int stepComp);
282 DataArrayDouble::getTuple(int tupleId, double* res) const;
283 DataArrayDouble::getIJ(int tupleId, int compoId) const;
284 DataArrayDouble::back() const;
285 DataArrayDouble::getIJSafe(int tupleId, int compoId) const;
286 DataArrayDouble::setIJ(int tupleId, int compoId, double newVal);
287 DataArrayDouble::setIJSilent(int tupleId, int compoId, double newVal);
288 DataArrayDouble::writeOnPlace(int id, double element0, const double* others, int sizeOfOthers);
289 DataArrayDouble::checkNoNullValues() const;
290 DataArrayDouble::getMinMaxPerComponent(double* bounds) const;
291 DataArrayDouble::getMaxValue(int& tupleId) const;
292 DataArrayDouble::getMaxValueInArray() const;
293 DataArrayDouble::getMinValue(int& tupleId) const;
294 DataArrayDouble::getMinValueInArray() const;
295 DataArrayDouble::getMaxValue2(DataArrayInt*& tupleIds) const;
296 DataArrayDouble::getMinValue2(DataArrayInt*& tupleIds) const;
297 DataArrayDouble::getAverageValue() const;
298 DataArrayDouble::norm2() const;
299 DataArrayDouble::normMax() const;
300 DataArrayDouble::accumulate(double* res) const;
301 DataArrayDouble::accumulate(int compId) const;
302 DataArrayDouble::fromPolarToCart() const;
303 DataArrayDouble::fromCylToCart() const;
304 DataArrayDouble::fromSpherToCart() const;
305 DataArrayDouble::doublyContractedProduct() const;
306 DataArrayDouble::determinant() const;
307 DataArrayDouble::eigenValues() const;
308 DataArrayDouble::eigenVectors() const;
309 DataArrayDouble::inverse() const;
310 DataArrayDouble::trace() const;
311 DataArrayDouble::deviator() const;
312 DataArrayDouble::magnitude() const;
313 DataArrayDouble::maxPerTuple() const;
314 DataArrayDouble::sortPerTuple(bool asc);
315 DataArrayDouble::abs();
316 DataArrayDouble::applyLin(double a, double b, int compoId);
317 DataArrayDouble::applyLin(double a, double b);
318 DataArrayDouble::applyInv(double numerator);
319 DataArrayDouble::negate() const;
320 DataArrayDouble::applyFunc(int nbOfComp, const char* func) const;
321 DataArrayDouble::applyFunc(const char* func) const;
322 DataArrayDouble::applyFunc2(int nbOfComp, const char* func) const;
323 DataArrayDouble::applyFunc3(int nbOfComp, const std::vector<std::string>& varsOrder, const char* func) const;
324 DataArrayDouble::getIdsInRange(double vmin, double vmax) const;
325 DataArrayDouble::addEqual(const DataArrayDouble* other);
326 DataArrayDouble::substractEqual(const DataArrayDouble* other);
327 DataArrayDouble::multiplyEqual(const DataArrayDouble* other);
328 DataArrayDouble::divideEqual(const DataArrayDouble* other);
329 DataArrayDouble::updateTime() const;
330 DataArrayDouble::New();
331 DataArrayDouble::Aggregate(const DataArrayDouble* a1, const DataArrayDouble* a2);
332 DataArrayDouble::Aggregate(const std::vector<const DataArrayDouble *>& arr);
333 DataArrayDouble::Meld(const DataArrayDouble* a1, const DataArrayDouble* a2);
334 DataArrayDouble::Meld(const std::vector<const DataArrayDouble *>& arr);
335 DataArrayDouble::Dot(const DataArrayDouble* a1, const DataArrayDouble* a2);
336 DataArrayDouble::CrossProduct(const DataArrayDouble* a1, const DataArrayDouble* a2);
337 DataArrayDouble::Max(const DataArrayDouble* a1, const DataArrayDouble* a2);
338 DataArrayDouble::Min(const DataArrayDouble* a1, const DataArrayDouble* a2);
339 DataArrayDouble::Add(const DataArrayDouble* a1, const DataArrayDouble* a2);
340 DataArrayDouble::Substract(const DataArrayDouble* a1, const DataArrayDouble* a2);
341 DataArrayDouble::Multiply(const DataArrayDouble* a1, const DataArrayDouble* a2);
342 DataArrayDouble::Divide(const DataArrayDouble* a1, const DataArrayDouble* a2);
343 ///@}
344
345 /*! \name   Advanced API   */
346 ///@{
347 DataArrayDouble::checkAllocated() const;
348 DataArrayDouble::setPartOfValuesAdv(const DataArrayDouble* a, const DataArrayInt* tuplesSelec);
349 DataArrayDouble::setContigPartOfSelectedValues(int tupleIdStart, const DataArrayDouble* a, const DataArrayInt* tuplesSelec);
350 DataArrayDouble::setContigPartOfSelectedValues2(int tupleIdStart, const DataArrayDouble* a, int bg, int end2, int step);
351 DataArrayDouble::applyFunc(int nbOfComp, FunctionToEvaluate func) const;
352 ///@} 
353
354 /*! \name Others... */
355 ///@{
356 DataArrayDouble::getNumberOfTuples() const;
357 DataArrayDouble::getNbOfElems() const;
358 DataArrayDouble::getHeapMemorySize() const;
359 DataArrayDouble::reserve(int nbOfElems);
360 DataArrayDouble::pushBackSilent(double val);
361 DataArrayDouble::popBackSilent();
362 DataArrayDouble::pack() const;
363 DataArrayDouble::getNbOfElemAllocated() const;
364 DataArrayDouble::reprZip() const;
365 DataArrayDouble::writeVTK(std::ostream& ofs, int indent, const char* nameInFile) const;
366 DataArrayDouble::reprStream(std::ostream& stream) const;
367 DataArrayDouble::reprZipStream(std::ostream& stream) const;
368 DataArrayDouble::reprWithoutNameStream(std::ostream& stream) const;
369 DataArrayDouble::reprZipWithoutNameStream(std::ostream& stream) const;
370 DataArrayDouble::reprCppStream(const char* varName, std::ostream& stream) const;
371 DataArrayDouble::isEqualIfNotWhy(const DataArrayDouble& other, double prec, std::string& reason) const;
372 DataArrayDouble::duplicateEachTupleNTimes(int nbTimes) const;
373 DataArrayDouble::setPartOfValues4(const DataArrayDouble* a, int bgTuples, int endTuples, int stepTuples, const int* bgComp, const int* endComp, bool strictCompoCompare=true);
374 DataArrayDouble::setPartOfValuesSimple4(double a, int bgTuples, int endTuples, int stepTuples, const int* bgComp, const int* endComp);
375 DataArrayDouble::getPointer();
376 DataArrayDouble::SetArrayIn(DataArrayDouble* newArray, DataArrayDouble* &arrayToSet);
377 DataArrayDouble::iterator();
378 DataArrayDouble::getConstPointer() const;
379 DataArrayDouble::begin() const;
380 DataArrayDouble::end() const;
381 DataArrayDouble::useArray(const double* array, bool ownership, DeallocType type, int nbOfTuple, int nbOfCompo);
382 DataArrayDouble::useExternalArrayWithRWAccess(const double* array, int nbOfTuple, int nbOfCompo);
383 DataArrayDouble::insertAtTheEnd(InputIterator first, InputIterator last);
384 DataArrayDouble::computeBBoxPerTuple(double epsilon=0.0) const;
385 DataArrayDouble::computeTupleIdsNearTuples(const DataArrayDouble* other, double eps, DataArrayInt *& c, DataArrayInt *& cI) const;
386 DataArrayDouble::recenterForMaxPrecision(double eps);
387 DataArrayDouble::distanceToTuple(const double* tupleBg, const double* tupleEnd, int& tupleId) const;
388 DataArrayDouble::buildEuclidianDistanceDenseMatrix() const;
389 DataArrayDouble::buildEuclidianDistanceDenseMatrixWith(const DataArrayDouble* other) const;
390 DataArrayDouble::applyFuncFast32(const char* func);
391 DataArrayDouble::applyFuncFast64(const char* func);
392 DataArrayDouble::getTinySerializationIntInformation(std::vector<int>& tinyInfo) const;
393 DataArrayDouble::getTinySerializationStrInformation(std::vector<std::string>& tinyInfo) const;
394 DataArrayDouble::resizeForUnserialization(const std::vector<int>& tinyInfoI);
395 DataArrayDouble::finishUnserialization(const std::vector<int>& tinyInfoI, const std::vector<std::string>& tinyInfoS);
396
397 DataArrayDouble::findCommonTuplesAlg(const double* bbox, int nbNodes, int limitNodeId, double prec, DataArrayInt* c, DataArrayInt* cI) const;
398
399 DataArrayDouble::FindTupleIdsNearTuplesAlg(const BBTree<SPACEDIM,int>& myTree, const double* pos, int nbOfTuples, double eps, DataArrayInt* c, DataArrayInt* cI);
400 DataArrayDouble::DataArrayDouble();
401 MemArray<double> DataArrayDouble::_mem;
402 ///@} 
403
404 //================================================================================
405 /////////////////////// DataArrayInt GROUPPING ///////////////////////////////////
406 //================================================================================
407
408 /*! \name Advanced API  */
409 ///@{
410 DataArrayInt::checkAllocated() const;
411 DataArrayInt::getHashCode() const;
412 DataArrayInt::buildPermutationArr(const DataArrayInt& other) const;
413 DataArrayInt::transformWithIndArr(const int* indArrBg, const int* indArrEnd);
414 DataArrayInt::transformWithIndArrR(const int* indArrBg, const int* indArrEnd) const;
415 DataArrayInt::splitByValueRange(const int* arrBg, const int* arrEnd,DataArrayInt *& castArr, DataArrayInt *& rankInsideCast, DataArrayInt *& castsPresent) const;
416 DataArrayInt::setPartOfValuesAdv(const DataArrayInt* a, const DataArrayInt* tuplesSelec);
417 DataArrayInt::setContigPartOfSelectedValues(int tupleIdStart, const DataArrayInt*a, const DataArrayInt* tuplesSelec);
418 DataArrayInt::setContigPartOfSelectedValues2(int tupleIdStart, const DataArrayInt* a, int bg, int end2, int step);
419 DataArrayInt::SetArrayIn(DataArrayInt* newArray, DataArrayInt* &arrayToSet);
420 ///@} 
421
422 /*! \name Basic API   */
423 ///@{
424 DataArrayInt::isAllocated() const;
425 DataArrayInt::setInfoAndChangeNbOfCompo(const std::vector<std::string>& info);
426 DataArrayInt::intValue() const;
427 DataArrayInt::empty() const;
428 DataArrayInt::deepCpy() const;
429 DataArrayInt::performCpy(bool deepCpy) const;
430 DataArrayInt::cpyFrom(const DataArrayInt& other);
431 DataArrayInt::alloc(int nbOfTuple, int nbOfCompo);
432 DataArrayInt::allocIfNecessary(int nbOfTuple, int nbOfCompo);
433 DataArrayInt::isEqual(const DataArrayInt& other) const;
434 DataArrayInt::isEqualWithoutConsideringStr(const DataArrayInt& other) const;
435 DataArrayInt::isEqualWithoutConsideringStrAndOrder(const DataArrayInt& other) const;
436 DataArrayInt::sort(bool asc=true);
437 DataArrayInt::reverse();
438 DataArrayInt::fillWithZero();
439 DataArrayInt::fillWithValue(int val);
440 DataArrayInt::iota(int init=0);
441 DataArrayInt::repr() const;
442 DataArrayInt::invertArrayO2N2N2O(int newNbOfElem) const;
443 DataArrayInt::invertArrayN2O2O2N(int oldNbOfElem) const;
444 DataArrayInt::reAlloc(int nbOfTuples);
445 DataArrayInt::convertToDblArr() const;
446 DataArrayInt::fromNoInterlace() const;
447 DataArrayInt::toNoInterlace() const;
448 DataArrayInt::renumberInPlace(const int* old2New);
449 DataArrayInt::renumberInPlaceR(const int* new2Old);
450 DataArrayInt::renumber(const int* old2New) const;
451 DataArrayInt::renumberR(const int* new2Old) const;
452 DataArrayInt::renumberAndReduce(const int* old2NewBg, int newNbOfTuple) const;
453 DataArrayInt::selectByTupleId(const int* new2OldBg, const int* new2OldEnd) const;
454 DataArrayInt::selectByTupleIdSafe(const int* new2OldBg, const int* new2OldEnd) const;
455 DataArrayInt::selectByTupleId2(int bg, int end, int step) const;
456 DataArrayInt::selectByTupleRanges(const std::vector<std::pair<int,int> >& ranges) const;
457 DataArrayInt::checkAndPreparePermutation() const;
458 DataArrayInt::changeSurjectiveFormat(int targetNb, DataArrayInt *&arr, DataArrayInt *&arrI) const;
459 DataArrayInt::buildPermArrPerLevel() const;
460 DataArrayInt::isIdentity() const;
461 DataArrayInt::isUniform(int val) const;
462 DataArrayInt::substr(int tupleIdBg, int tupleIdEnd=-1) const;
463 DataArrayInt::rearrange(int newNbOfCompo);
464 DataArrayInt::transpose();
465 DataArrayInt::changeNbOfComponents(int newNbOfComp, int dftValue) const;
466 DataArrayInt::keepSelectedComponents(const std::vector<int>& compoIds) const;
467 DataArrayInt::meldWith(const DataArrayInt* other);
468 DataArrayInt::setSelectedComponents(const DataArrayInt* a, const std::vector<int>& compoIds);
469 DataArrayInt::setPartOfValues1(const DataArrayInt* a, int bgTuples, int endTuples, int stepTuples, int bgComp, int endComp, int stepComp, bool strictCompoCompare=true);
470 DataArrayInt::setPartOfValuesSimple1(int a, int bgTuples, int endTuples, int stepTuples, int bgComp, int endComp, int stepComp);
471 DataArrayInt::setPartOfValues2(const DataArrayInt* a, const int* bgTuples, const int* endTuples, const int* bgComp, const int* endComp, bool strictCompoCompare=true);
472 DataArrayInt::setPartOfValuesSimple2(int a, const int* bgTuples, const int* endTuples, const int* bgComp, const int* endComp);
473 DataArrayInt::setPartOfValues3(const DataArrayInt* a, const int* bgTuples, const int* endTuples, int bgComp, int endComp, int stepComp, bool strictCompoCompare=true);
474 DataArrayInt::setPartOfValuesSimple3(int a, const int* bgTuples, const int* endTuples, int bgComp, int endComp, int stepComp);
475 DataArrayInt::getTuple(int tupleId, int* res) const;
476 DataArrayInt::getIJ(int tupleId, int compoId) const;
477 DataArrayInt::getIJSafe(int tupleId, int compoId) const;
478 DataArrayInt::back() const;
479 DataArrayInt::setIJ(int tupleId, int compoId, int newVal);
480 DataArrayInt::setIJSilent(int tupleId, int compoId, int newVal);
481 DataArrayInt::getPointer();
482 DataArrayInt::getConstPointer() const;
483 DataArrayInt::getIdsEqual(int val) const;
484 DataArrayInt::getIdsNotEqual(int val) const;
485 DataArrayInt::getIdsEqualList(const int* valsBg, const int* valsEnd) const;
486 DataArrayInt::getIdsNotEqualList(const int* valsBg, const int* valsEnd) const;
487 DataArrayInt::changeValue(int oldValue, int newValue);
488 DataArrayInt::presenceOfValue(int value) const;
489 DataArrayInt::presenceOfValue(const std::vector<int>& vals) const;
490 DataArrayInt::getMaxValue(int& tupleId) const;
491 DataArrayInt::getMaxValueInArray() const;
492 DataArrayInt::getMinValue(int& tupleId) const;
493 DataArrayInt::getMinValueInArray() const;
494 DataArrayInt::abs();
495 DataArrayInt::applyLin(int a, int b, int compoId);
496 DataArrayInt::applyLin(int a, int b);
497 DataArrayInt::applyInv(int numerator);
498 DataArrayInt::negate() const;
499 DataArrayInt::applyDivideBy(int val);
500 DataArrayInt::applyModulus(int val);
501 DataArrayInt::applyRModulus(int val);
502 DataArrayInt::buildComplement(int nbOfElement) const;
503 DataArrayInt::buildSubstraction(const DataArrayInt* other) const;
504 DataArrayInt::buildUnion(const DataArrayInt* other) const;
505 DataArrayInt::buildIntersection(const DataArrayInt* other) const;
506 DataArrayInt::deltaShiftIndex() const;
507 DataArrayInt::computeOffsets();
508 DataArrayInt::computeOffsets2();
509 DataArrayInt::buildExplicitArrByRanges(const DataArrayInt* offsets) const;
510 DataArrayInt::useArray(const int* array, bool ownership, DeallocType type, int nbOfTuple, int nbOfCompo);
511 DataArrayInt::writeOnPlace(int id, int element0, const int* others, int sizeOfOthers);
512 DataArrayInt::addEqual(const DataArrayInt* other);
513 DataArrayInt::substractEqual(const DataArrayInt* other);
514 DataArrayInt::multiplyEqual(const DataArrayInt* other);
515 DataArrayInt::divideEqual(const DataArrayInt* other);
516 DataArrayInt::modulusEqual(const DataArrayInt* other);
517 DataArrayInt::updateTime() const;
518 DataArrayInt::New();
519 DataArrayInt::BuildOld2NewArrayFromSurjectiveFormat2(int nbOfOldTuples, const int* arr, const int* arrIBg, const int* arrIEnd, int &newNbOfTuples);
520 DataArrayInt::Aggregate(const DataArrayInt* a1, const DataArrayInt* a2, int offsetA2);
521 DataArrayInt::Aggregate(const std::vector<const DataArrayInt *>& arr);
522 DataArrayInt::Meld(const DataArrayInt* a1, const DataArrayInt* a2);
523 DataArrayInt::Meld(const std::vector<const DataArrayInt *>& arr);
524 DataArrayInt::MakePartition(const std::vector<const DataArrayInt *>& groups, int newNb, std::vector< std::vector<int> >& fidsOfGroups);
525 DataArrayInt::BuildUnion(const std::vector<const DataArrayInt *>& arr);
526 DataArrayInt::BuildIntersection(const std::vector<const DataArrayInt *>& arr);
527 DataArrayInt::Add(const DataArrayInt* a1, const DataArrayInt* a2);
528 DataArrayInt::Substract(const DataArrayInt* a1, const DataArrayInt* a2);
529 DataArrayInt::Multiply(const DataArrayInt* a1, const DataArrayInt* a2);
530 DataArrayInt::Divide(const DataArrayInt* a1, const DataArrayInt* a2);
531 DataArrayInt::Modulus(const DataArrayInt* a1, const DataArrayInt* a2);
532 DataArrayInt::CheckAndPreparePermutation(const int* start, const int* end);
533 DataArrayInt::Range(int begin, int end, int step);
534 ///@} 
535
536 /*! \name Others... */
537 ///@{
538 DataArrayInt::getNumberOfTuples() const;
539 DataArrayInt::getNbOfElems() const;
540 DataArrayInt::getHeapMemorySize() const;
541 DataArrayInt::reserve(int nbOfElems);
542 DataArrayInt::pushBackSilent(int val);
543 DataArrayInt::popBackSilent();
544 DataArrayInt::pack() const;
545 DataArrayInt::getNbOfElemAllocated() const;
546 DataArrayInt::isEqualIfNotWhy(const DataArrayInt& other, std::string& reason) const;
547 DataArrayInt::checkMonotonic(bool increasing) const;
548 DataArrayInt::isMonotonic(bool increasing) const;
549 DataArrayInt::checkStrictlyMonotonic(bool increasing) const;
550 DataArrayInt::isStrictlyMonotonic(bool increasing) const;
551 DataArrayInt::reprZip() const;
552 DataArrayInt::writeVTK(std::ostream& ofs, int indent, const char* type, const char* nameInFile) const;
553 DataArrayInt::reprStream(std::ostream& stream) const;
554 DataArrayInt::reprZipStream(std::ostream& stream) const;
555 DataArrayInt::reprWithoutNameStream(std::ostream& stream) const;
556 DataArrayInt::reprZipWithoutNameStream(std::ostream& stream) const;
557 DataArrayInt::reprCppStream(const char* varName, std::ostream& stream) const;
558 DataArrayInt::invertArrayO2N2N2OBis(int newNbOfElem) const;
559 DataArrayInt::setPartOfValues4(const DataArrayInt* a, int bgTuples, int endTuples, int stepTuples, const int* bgComp, const int* endComp, bool strictCompoCompare=true);
560 DataArrayInt::setPartOfValuesSimple4(int a, int bgTuples, int endTuples, int stepTuples, const int* bgComp, const int* endComp);
561 DataArrayInt::iterator();
562 DataArrayInt::begin() const;
563 DataArrayInt::end() const;
564 DataArrayInt::locateTuple(const std::vector<int>& tupl) const;
565 DataArrayInt::locateValue(int value) const;
566 DataArrayInt::locateValue(const std::vector<int>& vals) const;
567 DataArrayInt::search(const std::vector<int>& vals) const;
568 DataArrayInt::presenceOfTuple(const std::vector<int>& tupl) const;
569 DataArrayInt::accumulate(int* res) const;
570 DataArrayInt::accumulate(int compId) const;
571 DataArrayInt::getIdsInRange(int vmin, int vmax) const;
572 DataArrayInt::buildSubstractionOptimized(const DataArrayInt* other) const;
573 DataArrayInt::buildUnique() const;
574 DataArrayInt::findRangeIdForEachTuple(const DataArrayInt* ranges) const;
575 DataArrayInt::findIdInRangeForEachTuple(const DataArrayInt* ranges) const;
576 DataArrayInt::duplicateEachTupleNTimes(int nbTimes) const;
577 DataArrayInt::getDifferentValues() const;
578 > DataArrayInt::partitionByDifferentValues(std::vector<int>& differentIds) const;
579 DataArrayInt::useExternalArrayWithRWAccess(const int* array, int nbOfTuple, int nbOfCompo);
580 tor>
581 DataArrayInt::insertAtTheEnd(InputIterator first, InputIterator last);
582 DataArrayInt::getTinySerializationIntInformation(std::vector<int>& tinyInfo) const;
583 DataArrayInt::getTinySerializationStrInformation(std::vector<std::string>& tinyInfo) const;
584 DataArrayInt::resizeForUnserialization(const std::vector<int>& tinyInfoI);
585 DataArrayInt::finishUnserialization(const std::vector<int>& tinyInfoI, const std::vector<std::string>& tinyInfoS);
586 DataArrayInt::DataArrayInt();
587 MemArray<int> DataArrayInt::_mem;
588 ///@}
589
590 }