X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FMEDCoupling%2FMEDCouplingMemArrayFloat.cxx;h=c9fa547eb2e5d4d81a393fe238ed470fb4cc78c1;hb=e7835cba1eb17f50ef4e130c2cb8d0f54bc25083;hp=a06401848c202cfa4e71ef972d86e0c8190aa4a8;hpb=8c9ecbe43d32cbea0d0b9ce867144df3f3061abd;p=tools%2Fmedcoupling.git diff --git a/src/MEDCoupling/MEDCouplingMemArrayFloat.cxx b/src/MEDCoupling/MEDCouplingMemArrayFloat.cxx index a06401848..c9fa547eb 100644 --- a/src/MEDCoupling/MEDCouplingMemArrayFloat.cxx +++ b/src/MEDCoupling/MEDCouplingMemArrayFloat.cxx @@ -24,7 +24,9 @@ using namespace MEDCoupling; template class MEDCoupling::MemArray; template class MEDCoupling::DataArrayTemplate; +template class MEDCoupling::DataArrayTemplateClassic; template class MEDCoupling::DataArrayTemplateFP; +template class MEDCoupling::DataArrayIterator; DataArrayFloat *DataArrayFloat::New() { @@ -36,25 +38,6 @@ DataArrayFloat *DataArrayFloat::deepCopy() const return new DataArrayFloat(*this); } -void DataArrayFloat::reprStream(std::ostream& stream) const -{ - stream << "Name of float array : \"" << _name << "\"\n"; - reprWithoutNameStream(stream); -} - -void DataArrayFloat::reprZipStream(std::ostream& stream) const -{ - stream << "Name of float array : \"" << _name << "\"\n"; - reprZipWithoutNameStream(stream); -} - -void DataArrayFloat::reprZipWithoutNameStream(std::ostream& stream) const -{ - DataArray::reprWithoutNameStream(stream); - stream.precision(7); - _mem.repr(getNumberOfComponents(),stream); -} - void DataArrayFloat::reprCppStream(const std::string& varName, std::ostream& stream) const { int nbTuples(getNumberOfTuples()),nbComp(getNumberOfComponents()); @@ -129,26 +112,6 @@ void DataArrayFloat::reprQuickOverviewData(std::ostream& stream, std::size_t max stream << "]"; } -std::string DataArrayFloat::reprNotTooLong() const -{ - std::ostringstream ret; - reprNotTooLongStream(ret); - return ret.str(); -} - -void DataArrayFloat::reprNotTooLongStream(std::ostream& stream) const -{ - stream << "Name of float array : \"" << _name << "\"\n"; - reprNotTooLongWithoutNameStream(stream); -} - -void DataArrayFloat::reprNotTooLongWithoutNameStream(std::ostream& stream) const -{ - DataArray::reprWithoutNameStream(stream); - stream.precision(7); - _mem.reprNotTooLong(getNumberOfComponents(),stream); -} - bool DataArrayFloat::isEqualIfNotWhy(const DataArrayFloat& other, float prec, std::string& reason) const { if(!areInfoEqualsIfNotWhy(other,reason)) @@ -167,3 +130,41 @@ bool DataArrayFloat::isEqualWithoutConsideringStr(const DataArrayFloat& other, f std::string tmp; return _mem.isEqual(other._mem,prec,tmp); } + +DataArrayFloatIterator *DataArrayFloat::iterator() +{ + return new DataArrayFloatIterator(this); +} + +DataArrayFloatIterator::DataArrayFloatIterator(DataArrayFloat *da):DataArrayIterator(da) +{ +} + +DataArrayFloatTuple::DataArrayFloatTuple(float *pt, int nbOfComp):DataArrayTuple(pt,nbOfComp) +{ +} + +std::string DataArrayFloatTuple::repr() const +{ + std::ostringstream oss; oss.precision(7); oss << "("; + for(int i=0;i<_nb_of_compo-1;i++) + oss << _pt[i] << ", "; + oss << _pt[_nb_of_compo-1] << ")"; + return oss.str(); +} + +float DataArrayFloatTuple::floatValue() const +{ + return this->zeValue(); +} + +/*! + * This method returns a newly allocated instance the caller should dealed with by a MEDCoupling::DataArrayFloat::decrRef. + * This method performs \b no copy of data. The content is only referenced using MEDCoupling::DataArrayFloat::useArray with ownership set to \b false. + * This method throws an INTERP_KERNEL::Exception is it is impossible to match sizes of \b this that is too say \b nbOfCompo=this->_nb_of_elem and \bnbOfTuples==1 or + * \b nbOfCompo=1 and \bnbOfTuples==this->_nb_of_elem. + */ +DataArrayFloat *DataArrayFloatTuple::buildDAFloat(int nbOfTuples, int nbOfCompo) const +{ + return this->buildDA(nbOfTuples,nbOfCompo); +}