Give IteratorFromArrayPortalValue class a less operator.

This is required so that they can be sorted, which happens when sorting
an ArrayHandleZip.
This commit is contained in:
Robert Maynard 2015-06-10 08:58:11 -04:00
parent ee4687f8ee
commit 5b96d435c7

@ -66,6 +66,13 @@ struct IteratorFromArrayPortalValue
return value;
}
VTKM_CONT_EXPORT
bool operator<(const ValueType& value) const
{
return this->Portal.Get(this->Index) < value;
}
VTKM_CONT_EXPORT
operator ValueType(void) const
{
@ -100,7 +107,7 @@ public:
operator[](std::size_t idx) const
{
return detail::IteratorFromArrayPortalValue<ArrayPortalType>(this->Portal,
static_cast<vtkm::Id>(idx) );
this->Index + static_cast<vtkm::Id>(idx) );
}
private: