complete last change
This commit is contained in:
parent
fe4275766a
commit
844c7ef8e1
2 changed files with 10 additions and 8 deletions
|
@ -425,13 +425,19 @@ namespace MultiArrayTools
|
||||||
mapMult = MultiArray<size_t,ORType>( outRange, outmult );
|
mapMult = MultiArray<size_t,ORType>( outRange, outmult );
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
//!!!!!
|
|
||||||
template <class Op, SpaceType XSTYPE, class... Ranges>
|
template <class Op, SpaceType XSTYPE, class... Ranges>
|
||||||
template <class MA>
|
template <class MA>
|
||||||
void GenMapRange<Op,XSTYPE,Ranges...>::mkOutRange(const MA& mapf)
|
void GenMapRange<Op,XSTYPE,Ranges...>::mkOutRange(const MA& mapf)
|
||||||
{
|
{
|
||||||
//FunctionalMultiArray<typename MapF::value_type,MapF,Ranges...> fma(mSpace, mMapf);
|
//FunctionalMultiArray<typename MapF::value_type,MapF,Ranges...> fma(mSpace, mMapf);
|
||||||
OutRangeMaker<XSTYPE>::mk(mOutRange,mMapMult,mapf);
|
OutRangeMaker<XSTYPE>::mk(mOutRange,mMapMult,mapf);
|
||||||
|
auto i = mapf.begin();
|
||||||
|
mMapPos.resize(i.max());
|
||||||
|
for(; i.pos() != i.max(); ++i){
|
||||||
|
mMapPos[i.pos()] = mOutRange->getMeta( mapf[i] );
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
template <class Op, SpaceType XSTYPE, class... Ranges>
|
template <class Op, SpaceType XSTYPE, class... Ranges>
|
||||||
|
@ -593,12 +599,7 @@ namespace MultiArrayTools
|
||||||
template <class Op, SpaceType XSTYPE, class... Ranges>
|
template <class Op, SpaceType XSTYPE, class... Ranges>
|
||||||
vector<size_t> GenMapRange<Op,XSTYPE,Ranges...>::mapPos() const
|
vector<size_t> GenMapRange<Op,XSTYPE,Ranges...>::mapPos() const
|
||||||
{
|
{
|
||||||
auto i = mMapf.begin();
|
return mMapPos;
|
||||||
vector<size_t> out(i.max());
|
|
||||||
for(; i.pos() != i.max(); ++i){
|
|
||||||
out[i.pos()] = mOutRange->getMeta( mMapf[i] );
|
|
||||||
}
|
|
||||||
return out;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|
|
@ -259,7 +259,8 @@ namespace MultiArrayTools
|
||||||
//Op mMapf;
|
//Op mMapf;
|
||||||
std::shared_ptr<ORType> mOutRange;
|
std::shared_ptr<ORType> mOutRange;
|
||||||
MultiArray<size_t,ORType> mMapMult;
|
MultiArray<size_t,ORType> mMapMult;
|
||||||
|
vector<size_t> mMapPos;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
template <class MA>
|
template <class MA>
|
||||||
void mkOutRange(const MA& mapf);
|
void mkOutRange(const MA& mapf);
|
||||||
|
|
Loading…
Reference in a new issue