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

#pragma once

#include "../common/tutorial/tutorial_device.isph"
#include "../common/math/linearspace.isph"
#include "../../include/embree3/rtcore.isph"

extern "C" struct InstanceLevels
{
  unsigned int numLevels;
  const uniform unsigned int* uniform numInstancesOnLevel;
  uniform LinearSpace3fa* uniform * uniform normalTransforms;
};

extern "C" uniform RTCScene initializeScene(uniform RTCDevice device,
                                            uniform struct InstanceLevels* uniform levels);

extern "C" void cleanupScene();
