godot/thirdparty/embree/kernels/builders/splitter.h

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

#pragma once

#if !defined(RTHWIF_STANDALONE)
#include "../common/scene.h"
#endif

#include "../builders/primref.h"

namespace embree
{
  namespace isa
  {
    template<size_t N>
    __forceinline void splitPolygon(const BBox3fa& bounds, 
                                    const size_t dim, 
                                    const float pos, 
                                    const Vec3fa (&v)[N+1],
                                    BBox3fa& left_o, 
                                    BBox3fa& right_o)
    {}
    
    template<size_t N>
    __forceinline void splitPolygon(const BBox3fa& bounds, 
                                    const size_t dim, 
                                    const float pos, 
                                    const Vec3fa (&v)[N+1],
                                    const Vec3fa (&inv_length)[N],
                                    BBox3fa& left_o, 
                                    BBox3fa& right_o)
    {}
    
    template<size_t N>
      __forceinline void splitPolygon(const PrimRef& prim, 
                                      const size_t dim, 
                                      const float pos, 
                                      const Vec3fa (&v)[N+1],
                                      PrimRef& left_o, 
                                      PrimRef& right_o)
    {}

#if !defined(RTHWIF_STANDALONE)

    struct TriangleSplitter
    {};
    
    struct TriangleSplitterFactory
    {};
    
    struct QuadSplitter
    {};
    
    struct QuadSplitterFactory
    {};


    struct DummySplitter
    {};
    
    struct DummySplitterFactory
    {};
#endif 
  }
}