21 template<
class T,
class MemorySpace>
24 const word eventName = message::eventName(message::ITEM_INSERT);
34 success = field_.insertSetElement(indices, val);
37 else if(varList.
contains(name()+
"Vector"))
41 success = field_.insertSetElement(indices,valVec);
45 success = field_.insertSetElement(indices, defaultValue_);
57 template<
class T,
class MemorySpace>
60 const word eventName = message::eventName(message::ITEM_REARRANGE);
65 field_.reserve( internalPoints_.capacity());
66 field_.resize(internalPoints_.size());
67 if(!field_.reorderItems(indices))
70 "cannot reorder items in field "<< name()<<
endl;
78 template<
class T,
class MemorySpace>
99 defaultValue_(defVal),
100 internalPoints_(
internal)
103 template<
class T,
class MemorySpace>
125 defaultValue_(defVal),
126 internalPoints_(
internal)
132 template <
class T,
class MemorySpace>
136 auto maskH = internalPoints_.activePointsMaskHost();
148 auto aRange = maskH.activeRange();
151 for(
auto i=aRange.start(); i<aRange.end(); i++)
153 if( maskH.isActive(i) )
155 aField[
n] = fieldH[i];
162 template <
class T,
class MemorySpace>
175 message::eventName(message::CAP_CHANGED));
177 field_.reserve(newCap);
182 message::eventName(message::SIZE_CHANGED));
183 field_.resize(newSize);
191 return insert(varList);
195 return rearrange(varList);
201 template<
class T,
class MemorySpace>
208 auto aField = activeValuesHost();
209 return aField.write(os, iop);