+ static std::vector< MCAuto<DataArrayIdType> > RetrieveVecIndex(const std::vector< MCAuto<MEDCouplingSkyLineArray> >& vecSka)
+ {
+ auto fct = [](MEDCouplingSkyLineArray *ska) { return ska->getIndexArray(); };
+ return RetrieveVecOfSkyLineArrayGen(vecSka,fct);
+ }
+
+ static std::vector< MCAuto<DataArrayIdType> > RetrieveVecValues(const std::vector< MCAuto<MEDCouplingSkyLineArray> >& vecSka)
+ {
+ auto fct = [](MEDCouplingSkyLineArray *ska) { return ska->getValuesArray(); };
+ return RetrieveVecOfSkyLineArrayGen(vecSka,fct);
+ }
+
+ static std::vector< MCAuto<DataArrayIdType> > RetrieveVecOfSkyLineArrayGen(const std::vector< MCAuto<MEDCouplingSkyLineArray> >& vecSka, std::function<DataArrayIdType *(MEDCouplingSkyLineArray *)> fct)
+ {
+ std::size_t sz(vecSka.size());
+ std::vector< MCAuto<DataArrayIdType> > ret(sz);
+ std::vector< MCAuto<DataArrayIdType> >::iterator it(ret.begin());
+ std::for_each(vecSka.begin(),vecSka.end(),[&it,fct](MCAuto<MEDCouplingSkyLineArray> elt) { *it++ = MCAuto<DataArrayIdType>::TakeRef(fct(elt)); } );
+ return ret;
+ }
+
+ std::string getClassName() const override { return std::string("MEDCouplingSkyLineArray"); }