summaryrefslogtreecommitdiffstats
path: root/thirdparty/embree-aarch64/common/algorithms/parallel_set.h
diff options
context:
space:
mode:
Diffstat (limited to 'thirdparty/embree-aarch64/common/algorithms/parallel_set.h')
-rw-r--r--thirdparty/embree-aarch64/common/algorithms/parallel_set.h52
1 files changed, 0 insertions, 52 deletions
diff --git a/thirdparty/embree-aarch64/common/algorithms/parallel_set.h b/thirdparty/embree-aarch64/common/algorithms/parallel_set.h
deleted file mode 100644
index 640beba7ec..0000000000
--- a/thirdparty/embree-aarch64/common/algorithms/parallel_set.h
+++ /dev/null
@@ -1,52 +0,0 @@
-// Copyright 2009-2020 Intel Corporation
-// SPDX-License-Identifier: Apache-2.0
-
-#pragma once
-
-#include "parallel_sort.h"
-
-namespace embree
-{
- /* implementation of a set of values with parallel construction */
- template<typename T>
- class parallel_set
- {
- public:
-
- /*! default constructor for the parallel set */
- parallel_set () {}
-
- /*! construction from vector */
- template<typename Vector>
- parallel_set (const Vector& in) { init(in); }
-
- /*! initialized the parallel set from a vector */
- template<typename Vector>
- void init(const Vector& in)
- {
- /* copy data to internal vector */
- vec.resize(in.size());
- parallel_for( size_t(0), in.size(), size_t(4*4096), [&](const range<size_t>& r) {
- for (size_t i=r.begin(); i<r.end(); i++)
- vec[i] = in[i];
- });
-
- /* sort the data */
- std::vector<T> temp(in.size());
- radix_sort<T>(vec.data(),temp.data(),vec.size());
- }
-
- /*! tests if some element is in the set */
- __forceinline bool lookup(const T& elt) const {
- return std::binary_search(vec.begin(), vec.end(), elt);
- }
-
- /*! clears all state */
- void clear() {
- vec.clear();
- }
-
- private:
- std::vector<T> vec; //!< vector containing sorted elements
- };
-}