JPL Spatial
Sound spatialization and propagation library
Loading...
Searching...
No Matches
SpecularRayTracing.h File Reference
#include "JPLSpatial/Core.h"
#include "JPLSpatial/ErrorReporting.h"
#include "JPLSpatial/Algo/Algorithm.h"
#include "JPLSpatial/Containers/StaticArray.h"
#include "JPLSpatial/Containers/ScratchHashSet.h"
#include "JPLSpatial/PathTracing/SpecularPathCache.h"
#include "JPLSpatial/PathTracing/SceneInterface.h"
#include "JPLSpatial/PathTracing/SpecularPath.h"
#include "JPLSpatial/PathTracing/Math.h"
#include <algorithm>
#include <concepts>
#include <memory_resource>
#include <span>
#include <ranges>
#include <vector>
#include <utility>

Go to the source code of this file.

Classes

struct  JPL::TraceParameters
 Generic parameters used in different kinds of traces. More...
 
struct  JPL::TraceNode< IntersectionType >
 Node of a traced paths. More...
 
struct  JPL::TracedPath< IntersectionType >
 Sequence of traced path intersections. More...
 
struct  JPL::TraceResults< IntersectionType >
 Result of tracing paths. More...
 
class  JPL::SpecularRayTracing
 

Namespaces

namespace  JPL
 

Macros

#define JPL_PROFILE(...)
 
#define JPL_PROFILE_SET_INT(Stat, Value)
 
#define JPL_PROFILE_SET_FLOAT(Stat, Value)
 
#define JPL_HAS_FUNCTION(Type, MemberFunctionCallPrototype)   requires(Type Object){ Object.MemberFunctionCallPrototype; }
 
#define JPL_HAS_FUNCTION_R(Type, MemberFunctionCallPrototype, ReturnType)   requires(Type Object) { { Object.MemberFunctionCallPrototype } -> std::same_as<ReturnType>; }
 

Enumerations

enum class  JPL::ETraceDirection { JPL::Forward , JPL::Backward }
 

Macro Definition Documentation

◆ JPL_HAS_FUNCTION

#define JPL_HAS_FUNCTION (   Type,
  MemberFunctionCallPrototype 
)    requires(Type Object){ Object.MemberFunctionCallPrototype; }

◆ JPL_HAS_FUNCTION_R

#define JPL_HAS_FUNCTION_R (   Type,
  MemberFunctionCallPrototype,
  ReturnType 
)    requires(Type Object) { { Object.MemberFunctionCallPrototype } -> std::same_as<ReturnType>; }

◆ JPL_PROFILE

#define JPL_PROFILE (   ...)

◆ JPL_PROFILE_SET_FLOAT

#define JPL_PROFILE_SET_FLOAT (   Stat,
  Value 
)

◆ JPL_PROFILE_SET_INT

#define JPL_PROFILE_SET_INT (   Stat,
  Value 
)