diff options
Diffstat (limited to 'thirdparty/embree-aarch64/kernels/subdiv/gridrange.h')
-rw-r--r-- | thirdparty/embree-aarch64/kernels/subdiv/gridrange.h | 96 |
1 files changed, 0 insertions, 96 deletions
diff --git a/thirdparty/embree-aarch64/kernels/subdiv/gridrange.h b/thirdparty/embree-aarch64/kernels/subdiv/gridrange.h deleted file mode 100644 index 4fd741c879..0000000000 --- a/thirdparty/embree-aarch64/kernels/subdiv/gridrange.h +++ /dev/null @@ -1,96 +0,0 @@ -// Copyright 2009-2020 Intel Corporation -// SPDX-License-Identifier: Apache-2.0 - -#pragma once - -#include "../common/default.h" - -namespace embree -{ - struct __aligned(16) GridRange - { - unsigned int u_start; - unsigned int u_end; - unsigned int v_start; - unsigned int v_end; - - __forceinline GridRange() {} - - __forceinline GridRange(unsigned int u_start, unsigned int u_end, unsigned int v_start, unsigned int v_end) - : u_start(u_start), u_end(u_end), v_start(v_start), v_end(v_end) {} - - __forceinline unsigned int width() const { - return u_end-u_start+1; - } - - __forceinline unsigned int height() const { - return v_end-v_start+1; - } - - __forceinline bool hasLeafSize() const - { - const unsigned int u_size = u_end-u_start+1; - const unsigned int v_size = v_end-v_start+1; - assert(u_size >= 1); - assert(v_size >= 1); - return u_size <= 3 && v_size <= 3; - } - - static __forceinline unsigned int split(unsigned int start,unsigned int end) - { - const unsigned int center = (start+end)/2; - assert (center > start); - assert (center < end); - return center; - } - - __forceinline void split(GridRange& r0, GridRange& r1) const - { - assert( hasLeafSize() == false ); - const unsigned int u_size = u_end-u_start+1; - const unsigned int v_size = v_end-v_start+1; - r0 = *this; - r1 = *this; - - if (u_size >= v_size) - { - const unsigned int u_mid = split(u_start,u_end); - r0.u_end = u_mid; - r1.u_start = u_mid; - } - else - { - const unsigned int v_mid = split(v_start,v_end); - r0.v_end = v_mid; - r1.v_start = v_mid; - } - } - - __forceinline unsigned int splitIntoSubRanges(GridRange r[4]) const - { - assert( !hasLeafSize() ); - unsigned int children = 0; - GridRange first,second; - split(first,second); - - if (first.hasLeafSize()) { - r[0] = first; - children++; - } - else { - first.split(r[0],r[1]); - children += 2; - } - - if (second.hasLeafSize()) { - r[children] = second; - children++; - } - else { - second.split(r[children+0],r[children+1]); - children += 2; - } - return children; - } - }; -} |