Skip to content

Commit 1e995f0

Browse files
[NFC][SYCL] Add device_images_range helper
1 parent 46b04db commit 1e995f0

File tree

3 files changed

+95
-107
lines changed

3 files changed

+95
-107
lines changed

sycl/source/detail/device_image_impl.hpp

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1341,6 +1341,18 @@ class device_image_impl
13411341
std::unique_ptr<DynRTDeviceBinaryImage> MMergedImageStorage = nullptr;
13421342
};
13431343

1344+
using device_images_iterator =
1345+
variadic_iterator<device_image_plain,
1346+
std::vector<device_image_plain>::const_iterator,
1347+
std::set<device_image_impl *>::const_iterator>;
1348+
class device_images_range : public iterator_range<device_images_iterator> {
1349+
private:
1350+
using Base = iterator_range<device_images_iterator>;
1351+
1352+
public:
1353+
using Base::Base;
1354+
};
1355+
13441356
} // namespace detail
13451357
} // namespace _V1
13461358
} // namespace sycl

sycl/source/detail/helpers.hpp

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -91,6 +91,8 @@ template <typename SyclTy, typename... Iterators> class variadic_iterator {
9191
},
9292
It);
9393
}
94+
95+
pointer operator->() { return &this->operator*(); }
9496
};
9597

9698
// Non-owning!

0 commit comments

Comments
 (0)