godot/thirdparty/embree/kernels/bvh/bvh_node_ref.h

// Copyright 2009-2021 Intel Corporation
// SPDX-License-Identifier: Apache-2.0

#pragma once

#include "../common/default.h"
#include "../common/alloc.h"
#include "../common/accel.h"
#include "../common/device.h"
#include "../common/scene.h"
#include "../geometry/primitive.h"
#include "../common/ray.h"

namespace embree
{
  /* BVH node reference with bounds */
  template<typename NodeRef>
  struct BVHNodeRecord
  {};

  template<typename NodeRef>
  struct BVHNodeRecordMB
  {};

  template<typename NodeRef>
  struct BVHNodeRecordMB4D
  {};

  template<typename NodeRef, int N> struct BaseNode_t;
  template<typename NodeRef, int N> struct AABBNode_t;
  template<typename NodeRef, int N> struct AABBNodeMB_t;
  template<typename NodeRef, int N> struct AABBNodeMB4D_t;
  template<typename NodeRef, int N> struct OBBNode_t;
  template<typename NodeRef, int N> struct OBBNodeMB_t;
  template<typename NodeRef, int N> struct QuantizedNode_t;
  template<typename NodeRef, int N> struct QuantizedNodeMB_t;
  
  /*! Pointer that points to a node or a list of primitives */
  template<int N>
    struct NodeRefPtr
  {};
}