warp-lang 1.0.2__py3-none-win_amd64.whl → 1.2.0__py3-none-win_amd64.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of warp-lang might be problematic. Click here for more details.
- warp/__init__.py +108 -97
- warp/__init__.pyi +1 -1
- warp/bin/warp-clang.dll +0 -0
- warp/bin/warp.dll +0 -0
- warp/build.py +88 -113
- warp/build_dll.py +383 -375
- warp/builtins.py +3693 -3354
- warp/codegen.py +2925 -2792
- warp/config.py +40 -36
- warp/constants.py +49 -45
- warp/context.py +5409 -5102
- warp/dlpack.py +442 -442
- warp/examples/__init__.py +16 -16
- warp/examples/assets/bear.usd +0 -0
- warp/examples/assets/bunny.usd +0 -0
- warp/examples/assets/cartpole.urdf +110 -110
- warp/examples/assets/crazyflie.usd +0 -0
- warp/examples/assets/cube.usd +0 -0
- warp/examples/assets/nv_ant.xml +92 -92
- warp/examples/assets/nv_humanoid.xml +183 -183
- warp/examples/assets/quadruped.urdf +267 -267
- warp/examples/assets/rocks.nvdb +0 -0
- warp/examples/assets/rocks.usd +0 -0
- warp/examples/assets/sphere.usd +0 -0
- warp/examples/benchmarks/benchmark_api.py +381 -383
- warp/examples/benchmarks/benchmark_cloth.py +278 -277
- warp/examples/benchmarks/benchmark_cloth_cupy.py +88 -88
- warp/examples/benchmarks/benchmark_cloth_jax.py +97 -100
- warp/examples/benchmarks/benchmark_cloth_numba.py +146 -142
- warp/examples/benchmarks/benchmark_cloth_numpy.py +77 -77
- warp/examples/benchmarks/benchmark_cloth_pytorch.py +86 -86
- warp/examples/benchmarks/benchmark_cloth_taichi.py +112 -112
- warp/examples/benchmarks/benchmark_cloth_warp.py +145 -146
- warp/examples/benchmarks/benchmark_launches.py +293 -295
- warp/examples/browse.py +29 -29
- warp/examples/core/example_dem.py +232 -219
- warp/examples/core/example_fluid.py +291 -267
- warp/examples/core/example_graph_capture.py +142 -126
- warp/examples/core/example_marching_cubes.py +186 -174
- warp/examples/core/example_mesh.py +172 -155
- warp/examples/core/example_mesh_intersect.py +203 -193
- warp/examples/core/example_nvdb.py +174 -170
- warp/examples/core/example_raycast.py +103 -90
- warp/examples/core/example_raymarch.py +197 -178
- warp/examples/core/example_render_opengl.py +183 -141
- warp/examples/core/example_sph.py +403 -387
- warp/examples/core/example_torch.py +219 -181
- warp/examples/core/example_wave.py +261 -248
- warp/examples/fem/bsr_utils.py +378 -380
- warp/examples/fem/example_apic_fluid.py +432 -389
- warp/examples/fem/example_burgers.py +262 -0
- warp/examples/fem/example_convection_diffusion.py +180 -168
- warp/examples/fem/example_convection_diffusion_dg.py +217 -209
- warp/examples/fem/example_deformed_geometry.py +175 -159
- warp/examples/fem/example_diffusion.py +199 -173
- warp/examples/fem/example_diffusion_3d.py +178 -152
- warp/examples/fem/example_diffusion_mgpu.py +219 -214
- warp/examples/fem/example_mixed_elasticity.py +242 -222
- warp/examples/fem/example_navier_stokes.py +257 -243
- warp/examples/fem/example_stokes.py +218 -192
- warp/examples/fem/example_stokes_transfer.py +263 -249
- warp/examples/fem/mesh_utils.py +133 -109
- warp/examples/fem/plot_utils.py +292 -287
- warp/examples/optim/example_bounce.py +258 -246
- warp/examples/optim/example_cloth_throw.py +220 -209
- warp/examples/optim/example_diffray.py +564 -536
- warp/examples/optim/example_drone.py +862 -835
- warp/examples/optim/example_inverse_kinematics.py +174 -168
- warp/examples/optim/example_inverse_kinematics_torch.py +183 -169
- warp/examples/optim/example_spring_cage.py +237 -231
- warp/examples/optim/example_trajectory.py +221 -199
- warp/examples/optim/example_walker.py +304 -293
- warp/examples/sim/example_cartpole.py +137 -129
- warp/examples/sim/example_cloth.py +194 -186
- warp/examples/sim/example_granular.py +122 -111
- warp/examples/sim/example_granular_collision_sdf.py +195 -186
- warp/examples/sim/example_jacobian_ik.py +234 -214
- warp/examples/sim/example_particle_chain.py +116 -105
- warp/examples/sim/example_quadruped.py +191 -180
- warp/examples/sim/example_rigid_chain.py +195 -187
- warp/examples/sim/example_rigid_contact.py +187 -177
- warp/examples/sim/example_rigid_force.py +125 -125
- warp/examples/sim/example_rigid_gyroscopic.py +107 -95
- warp/examples/sim/example_rigid_soft_contact.py +132 -122
- warp/examples/sim/example_soft_body.py +188 -177
- warp/fabric.py +337 -335
- warp/fem/__init__.py +61 -27
- warp/fem/cache.py +403 -388
- warp/fem/dirichlet.py +178 -179
- warp/fem/domain.py +262 -263
- warp/fem/field/__init__.py +100 -101
- warp/fem/field/field.py +148 -149
- warp/fem/field/nodal_field.py +298 -299
- warp/fem/field/restriction.py +22 -21
- warp/fem/field/test.py +180 -181
- warp/fem/field/trial.py +183 -183
- warp/fem/geometry/__init__.py +16 -19
- warp/fem/geometry/closest_point.py +69 -70
- warp/fem/geometry/deformed_geometry.py +270 -271
- warp/fem/geometry/element.py +748 -744
- warp/fem/geometry/geometry.py +184 -186
- warp/fem/geometry/grid_2d.py +380 -373
- warp/fem/geometry/grid_3d.py +437 -435
- warp/fem/geometry/hexmesh.py +953 -953
- warp/fem/geometry/nanogrid.py +455 -0
- warp/fem/geometry/partition.py +374 -376
- warp/fem/geometry/quadmesh_2d.py +532 -532
- warp/fem/geometry/tetmesh.py +840 -840
- warp/fem/geometry/trimesh_2d.py +577 -577
- warp/fem/integrate.py +1684 -1615
- warp/fem/operator.py +190 -191
- warp/fem/polynomial.py +214 -213
- warp/fem/quadrature/__init__.py +2 -2
- warp/fem/quadrature/pic_quadrature.py +243 -245
- warp/fem/quadrature/quadrature.py +295 -294
- warp/fem/space/__init__.py +179 -292
- warp/fem/space/basis_space.py +522 -489
- warp/fem/space/collocated_function_space.py +100 -105
- warp/fem/space/dof_mapper.py +236 -236
- warp/fem/space/function_space.py +148 -145
- warp/fem/space/grid_2d_function_space.py +148 -267
- warp/fem/space/grid_3d_function_space.py +167 -306
- warp/fem/space/hexmesh_function_space.py +253 -352
- warp/fem/space/nanogrid_function_space.py +202 -0
- warp/fem/space/partition.py +350 -350
- warp/fem/space/quadmesh_2d_function_space.py +261 -369
- warp/fem/space/restriction.py +161 -160
- warp/fem/space/shape/__init__.py +90 -15
- warp/fem/space/shape/cube_shape_function.py +728 -738
- warp/fem/space/shape/shape_function.py +102 -103
- warp/fem/space/shape/square_shape_function.py +611 -611
- warp/fem/space/shape/tet_shape_function.py +565 -567
- warp/fem/space/shape/triangle_shape_function.py +429 -429
- warp/fem/space/tetmesh_function_space.py +224 -292
- warp/fem/space/topology.py +297 -295
- warp/fem/space/trimesh_2d_function_space.py +153 -221
- warp/fem/types.py +77 -77
- warp/fem/utils.py +495 -495
- warp/jax.py +166 -141
- warp/jax_experimental.py +341 -339
- warp/native/array.h +1081 -1025
- warp/native/builtin.h +1603 -1560
- warp/native/bvh.cpp +402 -398
- warp/native/bvh.cu +533 -525
- warp/native/bvh.h +430 -429
- warp/native/clang/clang.cpp +496 -464
- warp/native/crt.cpp +42 -32
- warp/native/crt.h +352 -335
- warp/native/cuda_crt.h +1049 -1049
- warp/native/cuda_util.cpp +549 -540
- warp/native/cuda_util.h +288 -203
- warp/native/cutlass_gemm.cpp +34 -34
- warp/native/cutlass_gemm.cu +372 -372
- warp/native/error.cpp +66 -66
- warp/native/error.h +27 -27
- warp/native/exports.h +187 -0
- warp/native/fabric.h +228 -228
- warp/native/hashgrid.cpp +301 -278
- warp/native/hashgrid.cu +78 -77
- warp/native/hashgrid.h +227 -227
- warp/native/initializer_array.h +32 -32
- warp/native/intersect.h +1204 -1204
- warp/native/intersect_adj.h +365 -365
- warp/native/intersect_tri.h +322 -322
- warp/native/marching.cpp +2 -2
- warp/native/marching.cu +497 -497
- warp/native/marching.h +2 -2
- warp/native/mat.h +1545 -1498
- warp/native/matnn.h +333 -333
- warp/native/mesh.cpp +203 -203
- warp/native/mesh.cu +292 -293
- warp/native/mesh.h +1887 -1887
- warp/native/nanovdb/GridHandle.h +366 -0
- warp/native/nanovdb/HostBuffer.h +590 -0
- warp/native/nanovdb/NanoVDB.h +6624 -4782
- warp/native/nanovdb/PNanoVDB.h +3390 -2553
- warp/native/noise.h +850 -850
- warp/native/quat.h +1112 -1085
- warp/native/rand.h +303 -299
- warp/native/range.h +108 -108
- warp/native/reduce.cpp +156 -156
- warp/native/reduce.cu +348 -348
- warp/native/runlength_encode.cpp +61 -61
- warp/native/runlength_encode.cu +46 -46
- warp/native/scan.cpp +30 -30
- warp/native/scan.cu +36 -36
- warp/native/scan.h +7 -7
- warp/native/solid_angle.h +442 -442
- warp/native/sort.cpp +94 -94
- warp/native/sort.cu +97 -97
- warp/native/sort.h +14 -14
- warp/native/sparse.cpp +337 -337
- warp/native/sparse.cu +544 -544
- warp/native/spatial.h +630 -630
- warp/native/svd.h +562 -562
- warp/native/temp_buffer.h +30 -30
- warp/native/vec.h +1177 -1133
- warp/native/volume.cpp +529 -297
- warp/native/volume.cu +58 -32
- warp/native/volume.h +960 -538
- warp/native/volume_builder.cu +446 -425
- warp/native/volume_builder.h +34 -19
- warp/native/volume_impl.h +61 -0
- warp/native/warp.cpp +1057 -1052
- warp/native/warp.cu +2949 -2828
- warp/native/warp.h +321 -305
- warp/optim/__init__.py +9 -9
- warp/optim/adam.py +120 -120
- warp/optim/linear.py +1104 -939
- warp/optim/sgd.py +104 -92
- warp/render/__init__.py +10 -10
- warp/render/render_opengl.py +3356 -3204
- warp/render/render_usd.py +768 -749
- warp/render/utils.py +152 -150
- warp/sim/__init__.py +52 -59
- warp/sim/articulation.py +685 -685
- warp/sim/collide.py +1594 -1590
- warp/sim/import_mjcf.py +489 -481
- warp/sim/import_snu.py +220 -221
- warp/sim/import_urdf.py +536 -516
- warp/sim/import_usd.py +887 -881
- warp/sim/inertia.py +316 -317
- warp/sim/integrator.py +234 -233
- warp/sim/integrator_euler.py +1956 -1956
- warp/sim/integrator_featherstone.py +1917 -1991
- warp/sim/integrator_xpbd.py +3288 -3312
- warp/sim/model.py +4473 -4314
- warp/sim/particles.py +113 -112
- warp/sim/render.py +417 -403
- warp/sim/utils.py +413 -410
- warp/sparse.py +1289 -1227
- warp/stubs.py +2192 -2469
- warp/tape.py +1162 -225
- warp/tests/__init__.py +1 -1
- warp/tests/__main__.py +4 -4
- warp/tests/assets/test_index_grid.nvdb +0 -0
- warp/tests/assets/torus.usda +105 -105
- warp/tests/aux_test_class_kernel.py +26 -26
- warp/tests/aux_test_compile_consts_dummy.py +10 -10
- warp/tests/aux_test_conditional_unequal_types_kernels.py +21 -21
- warp/tests/aux_test_dependent.py +20 -22
- warp/tests/aux_test_grad_customs.py +21 -23
- warp/tests/aux_test_reference.py +9 -11
- warp/tests/aux_test_reference_reference.py +8 -10
- warp/tests/aux_test_square.py +15 -17
- warp/tests/aux_test_unresolved_func.py +14 -14
- warp/tests/aux_test_unresolved_symbol.py +14 -14
- warp/tests/disabled_kinematics.py +237 -239
- warp/tests/run_coverage_serial.py +31 -31
- warp/tests/test_adam.py +155 -157
- warp/tests/test_arithmetic.py +1088 -1124
- warp/tests/test_array.py +2415 -2326
- warp/tests/test_array_reduce.py +148 -150
- warp/tests/test_async.py +666 -656
- warp/tests/test_atomic.py +139 -141
- warp/tests/test_bool.py +212 -149
- warp/tests/test_builtins_resolution.py +1290 -1292
- warp/tests/test_bvh.py +162 -171
- warp/tests/test_closest_point_edge_edge.py +227 -228
- warp/tests/test_codegen.py +562 -553
- warp/tests/test_compile_consts.py +217 -101
- warp/tests/test_conditional.py +244 -246
- warp/tests/test_copy.py +230 -215
- warp/tests/test_ctypes.py +630 -632
- warp/tests/test_dense.py +65 -67
- warp/tests/test_devices.py +89 -98
- warp/tests/test_dlpack.py +528 -529
- warp/tests/test_examples.py +403 -378
- warp/tests/test_fabricarray.py +952 -955
- warp/tests/test_fast_math.py +60 -54
- warp/tests/test_fem.py +1298 -1278
- warp/tests/test_fp16.py +128 -130
- warp/tests/test_func.py +336 -337
- warp/tests/test_generics.py +596 -571
- warp/tests/test_grad.py +885 -640
- warp/tests/test_grad_customs.py +331 -336
- warp/tests/test_hash_grid.py +208 -164
- warp/tests/test_import.py +37 -39
- warp/tests/test_indexedarray.py +1132 -1134
- warp/tests/test_intersect.py +65 -67
- warp/tests/test_jax.py +305 -307
- warp/tests/test_large.py +169 -164
- warp/tests/test_launch.py +352 -354
- warp/tests/test_lerp.py +217 -261
- warp/tests/test_linear_solvers.py +189 -171
- warp/tests/test_lvalue.py +419 -493
- warp/tests/test_marching_cubes.py +63 -65
- warp/tests/test_mat.py +1799 -1827
- warp/tests/test_mat_lite.py +113 -115
- warp/tests/test_mat_scalar_ops.py +2905 -2889
- warp/tests/test_math.py +124 -193
- warp/tests/test_matmul.py +498 -499
- warp/tests/test_matmul_lite.py +408 -410
- warp/tests/test_mempool.py +186 -190
- warp/tests/test_mesh.py +281 -324
- warp/tests/test_mesh_query_aabb.py +226 -241
- warp/tests/test_mesh_query_point.py +690 -702
- warp/tests/test_mesh_query_ray.py +290 -303
- warp/tests/test_mlp.py +274 -276
- warp/tests/test_model.py +108 -110
- warp/tests/test_module_hashing.py +111 -0
- warp/tests/test_modules_lite.py +36 -39
- warp/tests/test_multigpu.py +161 -163
- warp/tests/test_noise.py +244 -248
- warp/tests/test_operators.py +248 -250
- warp/tests/test_options.py +121 -125
- warp/tests/test_peer.py +131 -137
- warp/tests/test_pinned.py +76 -78
- warp/tests/test_print.py +52 -54
- warp/tests/test_quat.py +2084 -2086
- warp/tests/test_rand.py +324 -288
- warp/tests/test_reload.py +207 -217
- warp/tests/test_rounding.py +177 -179
- warp/tests/test_runlength_encode.py +188 -190
- warp/tests/test_sim_grad.py +241 -0
- warp/tests/test_sim_kinematics.py +89 -97
- warp/tests/test_smoothstep.py +166 -168
- warp/tests/test_snippet.py +303 -266
- warp/tests/test_sparse.py +466 -460
- warp/tests/test_spatial.py +2146 -2148
- warp/tests/test_special_values.py +362 -0
- warp/tests/test_streams.py +484 -473
- warp/tests/test_struct.py +708 -675
- warp/tests/test_tape.py +171 -148
- warp/tests/test_torch.py +741 -743
- warp/tests/test_transient_module.py +85 -87
- warp/tests/test_types.py +554 -659
- warp/tests/test_utils.py +488 -499
- warp/tests/test_vec.py +1262 -1268
- warp/tests/test_vec_lite.py +71 -73
- warp/tests/test_vec_scalar_ops.py +2097 -2099
- warp/tests/test_verify_fp.py +92 -94
- warp/tests/test_volume.py +961 -736
- warp/tests/test_volume_write.py +338 -265
- warp/tests/unittest_serial.py +38 -37
- warp/tests/unittest_suites.py +367 -359
- warp/tests/unittest_utils.py +434 -578
- warp/tests/unused_test_misc.py +69 -71
- warp/tests/walkthrough_debug.py +85 -85
- warp/thirdparty/appdirs.py +598 -598
- warp/thirdparty/dlpack.py +143 -143
- warp/thirdparty/unittest_parallel.py +563 -561
- warp/torch.py +321 -295
- warp/types.py +4941 -4450
- warp/utils.py +1008 -821
- {warp_lang-1.0.2.dist-info → warp_lang-1.2.0.dist-info}/LICENSE.md +126 -126
- {warp_lang-1.0.2.dist-info → warp_lang-1.2.0.dist-info}/METADATA +365 -400
- warp_lang-1.2.0.dist-info/RECORD +359 -0
- warp/examples/assets/cube.usda +0 -42
- warp/examples/assets/sphere.usda +0 -56
- warp/examples/assets/torus.usda +0 -105
- warp/examples/fem/example_convection_diffusion_dg0.py +0 -194
- warp/native/nanovdb/PNanoVDBWrite.h +0 -295
- warp_lang-1.0.2.dist-info/RECORD +0 -352
- {warp_lang-1.0.2.dist-info → warp_lang-1.2.0.dist-info}/WHEEL +0 -0
- {warp_lang-1.0.2.dist-info → warp_lang-1.2.0.dist-info}/top_level.txt +0 -0
warp/native/error.cpp
CHANGED
|
@@ -1,66 +1,66 @@
|
|
|
1
|
-
/** Copyright (c) 2024 NVIDIA CORPORATION. All rights reserved.
|
|
2
|
-
* NVIDIA CORPORATION and its licensors retain all intellectual property
|
|
3
|
-
* and proprietary rights in and to this software, related documentation
|
|
4
|
-
* and any modifications thereto. Any use, reproduction, disclosure or
|
|
5
|
-
* distribution of this software and related documentation without an express
|
|
6
|
-
* license agreement from NVIDIA CORPORATION is strictly prohibited.
|
|
7
|
-
*/
|
|
8
|
-
|
|
9
|
-
#include <stdarg.h>
|
|
10
|
-
#include <stdio.h>
|
|
11
|
-
#include <string.h>
|
|
12
|
-
|
|
13
|
-
namespace wp
|
|
14
|
-
{
|
|
15
|
-
static char g_error_buffer[4096] = "";
|
|
16
|
-
static bool g_error_output_enabled = true;
|
|
17
|
-
static FILE* g_error_stream = stderr;
|
|
18
|
-
|
|
19
|
-
const char* get_error_string()
|
|
20
|
-
{
|
|
21
|
-
return g_error_buffer;
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
void set_error_string(const char* fmt, ...)
|
|
25
|
-
{
|
|
26
|
-
va_list args;
|
|
27
|
-
va_start(args, fmt);
|
|
28
|
-
vsnprintf(g_error_buffer, sizeof(g_error_buffer), fmt, args);
|
|
29
|
-
if (g_error_output_enabled)
|
|
30
|
-
{
|
|
31
|
-
vfprintf(g_error_stream, fmt, args);
|
|
32
|
-
fputc('\n', g_error_stream);
|
|
33
|
-
fflush(g_error_stream);
|
|
34
|
-
}
|
|
35
|
-
va_end(args);
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
void append_error_string(const char* fmt, ...)
|
|
39
|
-
{
|
|
40
|
-
size_t offset = strlen(g_error_buffer);
|
|
41
|
-
if (offset + 2 > sizeof(g_error_buffer))
|
|
42
|
-
return;
|
|
43
|
-
g_error_buffer[offset++] = '\n';
|
|
44
|
-
va_list args;
|
|
45
|
-
va_start(args, fmt);
|
|
46
|
-
vsnprintf(g_error_buffer + offset, sizeof(g_error_buffer) - offset, fmt, args);
|
|
47
|
-
if (g_error_output_enabled)
|
|
48
|
-
{
|
|
49
|
-
vfprintf(g_error_stream, fmt, args);
|
|
50
|
-
fputc('\n', g_error_stream);
|
|
51
|
-
fflush(g_error_stream);
|
|
52
|
-
}
|
|
53
|
-
va_end(args);
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
void set_error_output_enabled(bool enable)
|
|
57
|
-
{
|
|
58
|
-
g_error_output_enabled = enable;
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
bool is_error_output_enabled()
|
|
62
|
-
{
|
|
63
|
-
return g_error_output_enabled;
|
|
64
|
-
}
|
|
65
|
-
|
|
66
|
-
} // end of namespace wp
|
|
1
|
+
/** Copyright (c) 2024 NVIDIA CORPORATION. All rights reserved.
|
|
2
|
+
* NVIDIA CORPORATION and its licensors retain all intellectual property
|
|
3
|
+
* and proprietary rights in and to this software, related documentation
|
|
4
|
+
* and any modifications thereto. Any use, reproduction, disclosure or
|
|
5
|
+
* distribution of this software and related documentation without an express
|
|
6
|
+
* license agreement from NVIDIA CORPORATION is strictly prohibited.
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
#include <stdarg.h>
|
|
10
|
+
#include <stdio.h>
|
|
11
|
+
#include <string.h>
|
|
12
|
+
|
|
13
|
+
namespace wp
|
|
14
|
+
{
|
|
15
|
+
static char g_error_buffer[4096] = "";
|
|
16
|
+
static bool g_error_output_enabled = true;
|
|
17
|
+
static FILE* g_error_stream = stderr;
|
|
18
|
+
|
|
19
|
+
const char* get_error_string()
|
|
20
|
+
{
|
|
21
|
+
return g_error_buffer;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
void set_error_string(const char* fmt, ...)
|
|
25
|
+
{
|
|
26
|
+
va_list args;
|
|
27
|
+
va_start(args, fmt);
|
|
28
|
+
vsnprintf(g_error_buffer, sizeof(g_error_buffer), fmt, args);
|
|
29
|
+
if (g_error_output_enabled)
|
|
30
|
+
{
|
|
31
|
+
vfprintf(g_error_stream, fmt, args);
|
|
32
|
+
fputc('\n', g_error_stream);
|
|
33
|
+
fflush(g_error_stream);
|
|
34
|
+
}
|
|
35
|
+
va_end(args);
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
void append_error_string(const char* fmt, ...)
|
|
39
|
+
{
|
|
40
|
+
size_t offset = strlen(g_error_buffer);
|
|
41
|
+
if (offset + 2 > sizeof(g_error_buffer))
|
|
42
|
+
return;
|
|
43
|
+
g_error_buffer[offset++] = '\n';
|
|
44
|
+
va_list args;
|
|
45
|
+
va_start(args, fmt);
|
|
46
|
+
vsnprintf(g_error_buffer + offset, sizeof(g_error_buffer) - offset, fmt, args);
|
|
47
|
+
if (g_error_output_enabled)
|
|
48
|
+
{
|
|
49
|
+
vfprintf(g_error_stream, fmt, args);
|
|
50
|
+
fputc('\n', g_error_stream);
|
|
51
|
+
fflush(g_error_stream);
|
|
52
|
+
}
|
|
53
|
+
va_end(args);
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
void set_error_output_enabled(bool enable)
|
|
57
|
+
{
|
|
58
|
+
g_error_output_enabled = enable;
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
bool is_error_output_enabled()
|
|
62
|
+
{
|
|
63
|
+
return g_error_output_enabled;
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
} // end of namespace wp
|
warp/native/error.h
CHANGED
|
@@ -1,27 +1,27 @@
|
|
|
1
|
-
/** Copyright (c) 2024 NVIDIA CORPORATION. All rights reserved.
|
|
2
|
-
* NVIDIA CORPORATION and its licensors retain all intellectual property
|
|
3
|
-
* and proprietary rights in and to this software, related documentation
|
|
4
|
-
* and any modifications thereto. Any use, reproduction, disclosure or
|
|
5
|
-
* distribution of this software and related documentation without an express
|
|
6
|
-
* license agreement from NVIDIA CORPORATION is strictly prohibited.
|
|
7
|
-
*/
|
|
8
|
-
|
|
9
|
-
#pragma once
|
|
10
|
-
|
|
11
|
-
namespace wp
|
|
12
|
-
{
|
|
13
|
-
// functions related to error reporting
|
|
14
|
-
|
|
15
|
-
// get error string from Python
|
|
16
|
-
const char* get_error_string();
|
|
17
|
-
|
|
18
|
-
// set error message for Python
|
|
19
|
-
// these functions also print the error message if error output is enabled
|
|
20
|
-
void set_error_string(const char* fmt, ...);
|
|
21
|
-
void append_error_string(const char* fmt, ...);
|
|
22
|
-
|
|
23
|
-
// allow disabling printing errors, which is handy during tests that expect failure
|
|
24
|
-
void set_error_output_enabled(bool enable);
|
|
25
|
-
bool is_error_output_enabled();
|
|
26
|
-
|
|
27
|
-
}
|
|
1
|
+
/** Copyright (c) 2024 NVIDIA CORPORATION. All rights reserved.
|
|
2
|
+
* NVIDIA CORPORATION and its licensors retain all intellectual property
|
|
3
|
+
* and proprietary rights in and to this software, related documentation
|
|
4
|
+
* and any modifications thereto. Any use, reproduction, disclosure or
|
|
5
|
+
* distribution of this software and related documentation without an express
|
|
6
|
+
* license agreement from NVIDIA CORPORATION is strictly prohibited.
|
|
7
|
+
*/
|
|
8
|
+
|
|
9
|
+
#pragma once
|
|
10
|
+
|
|
11
|
+
namespace wp
|
|
12
|
+
{
|
|
13
|
+
// functions related to error reporting
|
|
14
|
+
|
|
15
|
+
// get error string from Python
|
|
16
|
+
const char* get_error_string();
|
|
17
|
+
|
|
18
|
+
// set error message for Python
|
|
19
|
+
// these functions also print the error message if error output is enabled
|
|
20
|
+
void set_error_string(const char* fmt, ...);
|
|
21
|
+
void append_error_string(const char* fmt, ...);
|
|
22
|
+
|
|
23
|
+
// allow disabling printing errors, which is handy during tests that expect failure
|
|
24
|
+
void set_error_output_enabled(bool enable);
|
|
25
|
+
bool is_error_output_enabled();
|
|
26
|
+
|
|
27
|
+
}
|
warp/native/exports.h
CHANGED
|
@@ -298,6 +298,192 @@ WP_API void builtin_ceil_float64(float64 x, float64* ret) { *ret = wp::ceil(x);
|
|
|
298
298
|
WP_API void builtin_frac_float16(float16 x, float16* ret) { *ret = wp::frac(x); }
|
|
299
299
|
WP_API void builtin_frac_float32(float32 x, float32* ret) { *ret = wp::frac(x); }
|
|
300
300
|
WP_API void builtin_frac_float64(float64 x, float64* ret) { *ret = wp::frac(x); }
|
|
301
|
+
WP_API void builtin_isfinite_float16(float16 x, bool* ret) { *ret = wp::isfinite(x); }
|
|
302
|
+
WP_API void builtin_isfinite_float32(float32 x, bool* ret) { *ret = wp::isfinite(x); }
|
|
303
|
+
WP_API void builtin_isfinite_float64(float64 x, bool* ret) { *ret = wp::isfinite(x); }
|
|
304
|
+
WP_API void builtin_isfinite_int16(int16 x, bool* ret) { *ret = wp::isfinite(x); }
|
|
305
|
+
WP_API void builtin_isfinite_int32(int32 x, bool* ret) { *ret = wp::isfinite(x); }
|
|
306
|
+
WP_API void builtin_isfinite_int64(int64 x, bool* ret) { *ret = wp::isfinite(x); }
|
|
307
|
+
WP_API void builtin_isfinite_int8(int8 x, bool* ret) { *ret = wp::isfinite(x); }
|
|
308
|
+
WP_API void builtin_isfinite_uint16(uint16 x, bool* ret) { *ret = wp::isfinite(x); }
|
|
309
|
+
WP_API void builtin_isfinite_uint32(uint32 x, bool* ret) { *ret = wp::isfinite(x); }
|
|
310
|
+
WP_API void builtin_isfinite_uint64(uint64 x, bool* ret) { *ret = wp::isfinite(x); }
|
|
311
|
+
WP_API void builtin_isfinite_uint8(uint8 x, bool* ret) { *ret = wp::isfinite(x); }
|
|
312
|
+
WP_API void builtin_isfinite_vec2h(vec2h& x, bool* ret) { *ret = wp::isfinite(x); }
|
|
313
|
+
WP_API void builtin_isfinite_vec3h(vec3h& x, bool* ret) { *ret = wp::isfinite(x); }
|
|
314
|
+
WP_API void builtin_isfinite_vec4h(vec4h& x, bool* ret) { *ret = wp::isfinite(x); }
|
|
315
|
+
WP_API void builtin_isfinite_spatial_vectorh(spatial_vectorh& x, bool* ret) { *ret = wp::isfinite(x); }
|
|
316
|
+
WP_API void builtin_isfinite_vec2f(vec2f& x, bool* ret) { *ret = wp::isfinite(x); }
|
|
317
|
+
WP_API void builtin_isfinite_vec3f(vec3f& x, bool* ret) { *ret = wp::isfinite(x); }
|
|
318
|
+
WP_API void builtin_isfinite_vec4f(vec4f& x, bool* ret) { *ret = wp::isfinite(x); }
|
|
319
|
+
WP_API void builtin_isfinite_spatial_vectorf(spatial_vectorf& x, bool* ret) { *ret = wp::isfinite(x); }
|
|
320
|
+
WP_API void builtin_isfinite_vec2d(vec2d& x, bool* ret) { *ret = wp::isfinite(x); }
|
|
321
|
+
WP_API void builtin_isfinite_vec3d(vec3d& x, bool* ret) { *ret = wp::isfinite(x); }
|
|
322
|
+
WP_API void builtin_isfinite_vec4d(vec4d& x, bool* ret) { *ret = wp::isfinite(x); }
|
|
323
|
+
WP_API void builtin_isfinite_spatial_vectord(spatial_vectord& x, bool* ret) { *ret = wp::isfinite(x); }
|
|
324
|
+
WP_API void builtin_isfinite_vec2s(vec2s& x, bool* ret) { *ret = wp::isfinite(x); }
|
|
325
|
+
WP_API void builtin_isfinite_vec3s(vec3s& x, bool* ret) { *ret = wp::isfinite(x); }
|
|
326
|
+
WP_API void builtin_isfinite_vec4s(vec4s& x, bool* ret) { *ret = wp::isfinite(x); }
|
|
327
|
+
WP_API void builtin_isfinite_vec2i(vec2i& x, bool* ret) { *ret = wp::isfinite(x); }
|
|
328
|
+
WP_API void builtin_isfinite_vec3i(vec3i& x, bool* ret) { *ret = wp::isfinite(x); }
|
|
329
|
+
WP_API void builtin_isfinite_vec4i(vec4i& x, bool* ret) { *ret = wp::isfinite(x); }
|
|
330
|
+
WP_API void builtin_isfinite_vec2l(vec2l& x, bool* ret) { *ret = wp::isfinite(x); }
|
|
331
|
+
WP_API void builtin_isfinite_vec3l(vec3l& x, bool* ret) { *ret = wp::isfinite(x); }
|
|
332
|
+
WP_API void builtin_isfinite_vec4l(vec4l& x, bool* ret) { *ret = wp::isfinite(x); }
|
|
333
|
+
WP_API void builtin_isfinite_vec2b(vec2b& x, bool* ret) { *ret = wp::isfinite(x); }
|
|
334
|
+
WP_API void builtin_isfinite_vec3b(vec3b& x, bool* ret) { *ret = wp::isfinite(x); }
|
|
335
|
+
WP_API void builtin_isfinite_vec4b(vec4b& x, bool* ret) { *ret = wp::isfinite(x); }
|
|
336
|
+
WP_API void builtin_isfinite_vec2us(vec2us& x, bool* ret) { *ret = wp::isfinite(x); }
|
|
337
|
+
WP_API void builtin_isfinite_vec3us(vec3us& x, bool* ret) { *ret = wp::isfinite(x); }
|
|
338
|
+
WP_API void builtin_isfinite_vec4us(vec4us& x, bool* ret) { *ret = wp::isfinite(x); }
|
|
339
|
+
WP_API void builtin_isfinite_vec2ui(vec2ui& x, bool* ret) { *ret = wp::isfinite(x); }
|
|
340
|
+
WP_API void builtin_isfinite_vec3ui(vec3ui& x, bool* ret) { *ret = wp::isfinite(x); }
|
|
341
|
+
WP_API void builtin_isfinite_vec4ui(vec4ui& x, bool* ret) { *ret = wp::isfinite(x); }
|
|
342
|
+
WP_API void builtin_isfinite_vec2ul(vec2ul& x, bool* ret) { *ret = wp::isfinite(x); }
|
|
343
|
+
WP_API void builtin_isfinite_vec3ul(vec3ul& x, bool* ret) { *ret = wp::isfinite(x); }
|
|
344
|
+
WP_API void builtin_isfinite_vec4ul(vec4ul& x, bool* ret) { *ret = wp::isfinite(x); }
|
|
345
|
+
WP_API void builtin_isfinite_vec2ub(vec2ub& x, bool* ret) { *ret = wp::isfinite(x); }
|
|
346
|
+
WP_API void builtin_isfinite_vec3ub(vec3ub& x, bool* ret) { *ret = wp::isfinite(x); }
|
|
347
|
+
WP_API void builtin_isfinite_vec4ub(vec4ub& x, bool* ret) { *ret = wp::isfinite(x); }
|
|
348
|
+
WP_API void builtin_isfinite_quath(quath& x, bool* ret) { *ret = wp::isfinite(x); }
|
|
349
|
+
WP_API void builtin_isfinite_quatf(quatf& x, bool* ret) { *ret = wp::isfinite(x); }
|
|
350
|
+
WP_API void builtin_isfinite_quatd(quatd& x, bool* ret) { *ret = wp::isfinite(x); }
|
|
351
|
+
WP_API void builtin_isfinite_mat22h(mat22h& m, bool* ret) { *ret = wp::isfinite(m); }
|
|
352
|
+
WP_API void builtin_isfinite_mat33h(mat33h& m, bool* ret) { *ret = wp::isfinite(m); }
|
|
353
|
+
WP_API void builtin_isfinite_mat44h(mat44h& m, bool* ret) { *ret = wp::isfinite(m); }
|
|
354
|
+
WP_API void builtin_isfinite_spatial_matrixh(spatial_matrixh& m, bool* ret) { *ret = wp::isfinite(m); }
|
|
355
|
+
WP_API void builtin_isfinite_mat22f(mat22f& m, bool* ret) { *ret = wp::isfinite(m); }
|
|
356
|
+
WP_API void builtin_isfinite_mat33f(mat33f& m, bool* ret) { *ret = wp::isfinite(m); }
|
|
357
|
+
WP_API void builtin_isfinite_mat44f(mat44f& m, bool* ret) { *ret = wp::isfinite(m); }
|
|
358
|
+
WP_API void builtin_isfinite_spatial_matrixf(spatial_matrixf& m, bool* ret) { *ret = wp::isfinite(m); }
|
|
359
|
+
WP_API void builtin_isfinite_mat22d(mat22d& m, bool* ret) { *ret = wp::isfinite(m); }
|
|
360
|
+
WP_API void builtin_isfinite_mat33d(mat33d& m, bool* ret) { *ret = wp::isfinite(m); }
|
|
361
|
+
WP_API void builtin_isfinite_mat44d(mat44d& m, bool* ret) { *ret = wp::isfinite(m); }
|
|
362
|
+
WP_API void builtin_isfinite_spatial_matrixd(spatial_matrixd& m, bool* ret) { *ret = wp::isfinite(m); }
|
|
363
|
+
WP_API void builtin_isnan_float16(float16 x, bool* ret) { *ret = wp::isnan(x); }
|
|
364
|
+
WP_API void builtin_isnan_float32(float32 x, bool* ret) { *ret = wp::isnan(x); }
|
|
365
|
+
WP_API void builtin_isnan_float64(float64 x, bool* ret) { *ret = wp::isnan(x); }
|
|
366
|
+
WP_API void builtin_isnan_int16(int16 x, bool* ret) { *ret = wp::isnan(x); }
|
|
367
|
+
WP_API void builtin_isnan_int32(int32 x, bool* ret) { *ret = wp::isnan(x); }
|
|
368
|
+
WP_API void builtin_isnan_int64(int64 x, bool* ret) { *ret = wp::isnan(x); }
|
|
369
|
+
WP_API void builtin_isnan_int8(int8 x, bool* ret) { *ret = wp::isnan(x); }
|
|
370
|
+
WP_API void builtin_isnan_uint16(uint16 x, bool* ret) { *ret = wp::isnan(x); }
|
|
371
|
+
WP_API void builtin_isnan_uint32(uint32 x, bool* ret) { *ret = wp::isnan(x); }
|
|
372
|
+
WP_API void builtin_isnan_uint64(uint64 x, bool* ret) { *ret = wp::isnan(x); }
|
|
373
|
+
WP_API void builtin_isnan_uint8(uint8 x, bool* ret) { *ret = wp::isnan(x); }
|
|
374
|
+
WP_API void builtin_isnan_vec2h(vec2h& x, bool* ret) { *ret = wp::isnan(x); }
|
|
375
|
+
WP_API void builtin_isnan_vec3h(vec3h& x, bool* ret) { *ret = wp::isnan(x); }
|
|
376
|
+
WP_API void builtin_isnan_vec4h(vec4h& x, bool* ret) { *ret = wp::isnan(x); }
|
|
377
|
+
WP_API void builtin_isnan_spatial_vectorh(spatial_vectorh& x, bool* ret) { *ret = wp::isnan(x); }
|
|
378
|
+
WP_API void builtin_isnan_vec2f(vec2f& x, bool* ret) { *ret = wp::isnan(x); }
|
|
379
|
+
WP_API void builtin_isnan_vec3f(vec3f& x, bool* ret) { *ret = wp::isnan(x); }
|
|
380
|
+
WP_API void builtin_isnan_vec4f(vec4f& x, bool* ret) { *ret = wp::isnan(x); }
|
|
381
|
+
WP_API void builtin_isnan_spatial_vectorf(spatial_vectorf& x, bool* ret) { *ret = wp::isnan(x); }
|
|
382
|
+
WP_API void builtin_isnan_vec2d(vec2d& x, bool* ret) { *ret = wp::isnan(x); }
|
|
383
|
+
WP_API void builtin_isnan_vec3d(vec3d& x, bool* ret) { *ret = wp::isnan(x); }
|
|
384
|
+
WP_API void builtin_isnan_vec4d(vec4d& x, bool* ret) { *ret = wp::isnan(x); }
|
|
385
|
+
WP_API void builtin_isnan_spatial_vectord(spatial_vectord& x, bool* ret) { *ret = wp::isnan(x); }
|
|
386
|
+
WP_API void builtin_isnan_vec2s(vec2s& x, bool* ret) { *ret = wp::isnan(x); }
|
|
387
|
+
WP_API void builtin_isnan_vec3s(vec3s& x, bool* ret) { *ret = wp::isnan(x); }
|
|
388
|
+
WP_API void builtin_isnan_vec4s(vec4s& x, bool* ret) { *ret = wp::isnan(x); }
|
|
389
|
+
WP_API void builtin_isnan_vec2i(vec2i& x, bool* ret) { *ret = wp::isnan(x); }
|
|
390
|
+
WP_API void builtin_isnan_vec3i(vec3i& x, bool* ret) { *ret = wp::isnan(x); }
|
|
391
|
+
WP_API void builtin_isnan_vec4i(vec4i& x, bool* ret) { *ret = wp::isnan(x); }
|
|
392
|
+
WP_API void builtin_isnan_vec2l(vec2l& x, bool* ret) { *ret = wp::isnan(x); }
|
|
393
|
+
WP_API void builtin_isnan_vec3l(vec3l& x, bool* ret) { *ret = wp::isnan(x); }
|
|
394
|
+
WP_API void builtin_isnan_vec4l(vec4l& x, bool* ret) { *ret = wp::isnan(x); }
|
|
395
|
+
WP_API void builtin_isnan_vec2b(vec2b& x, bool* ret) { *ret = wp::isnan(x); }
|
|
396
|
+
WP_API void builtin_isnan_vec3b(vec3b& x, bool* ret) { *ret = wp::isnan(x); }
|
|
397
|
+
WP_API void builtin_isnan_vec4b(vec4b& x, bool* ret) { *ret = wp::isnan(x); }
|
|
398
|
+
WP_API void builtin_isnan_vec2us(vec2us& x, bool* ret) { *ret = wp::isnan(x); }
|
|
399
|
+
WP_API void builtin_isnan_vec3us(vec3us& x, bool* ret) { *ret = wp::isnan(x); }
|
|
400
|
+
WP_API void builtin_isnan_vec4us(vec4us& x, bool* ret) { *ret = wp::isnan(x); }
|
|
401
|
+
WP_API void builtin_isnan_vec2ui(vec2ui& x, bool* ret) { *ret = wp::isnan(x); }
|
|
402
|
+
WP_API void builtin_isnan_vec3ui(vec3ui& x, bool* ret) { *ret = wp::isnan(x); }
|
|
403
|
+
WP_API void builtin_isnan_vec4ui(vec4ui& x, bool* ret) { *ret = wp::isnan(x); }
|
|
404
|
+
WP_API void builtin_isnan_vec2ul(vec2ul& x, bool* ret) { *ret = wp::isnan(x); }
|
|
405
|
+
WP_API void builtin_isnan_vec3ul(vec3ul& x, bool* ret) { *ret = wp::isnan(x); }
|
|
406
|
+
WP_API void builtin_isnan_vec4ul(vec4ul& x, bool* ret) { *ret = wp::isnan(x); }
|
|
407
|
+
WP_API void builtin_isnan_vec2ub(vec2ub& x, bool* ret) { *ret = wp::isnan(x); }
|
|
408
|
+
WP_API void builtin_isnan_vec3ub(vec3ub& x, bool* ret) { *ret = wp::isnan(x); }
|
|
409
|
+
WP_API void builtin_isnan_vec4ub(vec4ub& x, bool* ret) { *ret = wp::isnan(x); }
|
|
410
|
+
WP_API void builtin_isnan_quath(quath& x, bool* ret) { *ret = wp::isnan(x); }
|
|
411
|
+
WP_API void builtin_isnan_quatf(quatf& x, bool* ret) { *ret = wp::isnan(x); }
|
|
412
|
+
WP_API void builtin_isnan_quatd(quatd& x, bool* ret) { *ret = wp::isnan(x); }
|
|
413
|
+
WP_API void builtin_isnan_mat22h(mat22h& m, bool* ret) { *ret = wp::isnan(m); }
|
|
414
|
+
WP_API void builtin_isnan_mat33h(mat33h& m, bool* ret) { *ret = wp::isnan(m); }
|
|
415
|
+
WP_API void builtin_isnan_mat44h(mat44h& m, bool* ret) { *ret = wp::isnan(m); }
|
|
416
|
+
WP_API void builtin_isnan_spatial_matrixh(spatial_matrixh& m, bool* ret) { *ret = wp::isnan(m); }
|
|
417
|
+
WP_API void builtin_isnan_mat22f(mat22f& m, bool* ret) { *ret = wp::isnan(m); }
|
|
418
|
+
WP_API void builtin_isnan_mat33f(mat33f& m, bool* ret) { *ret = wp::isnan(m); }
|
|
419
|
+
WP_API void builtin_isnan_mat44f(mat44f& m, bool* ret) { *ret = wp::isnan(m); }
|
|
420
|
+
WP_API void builtin_isnan_spatial_matrixf(spatial_matrixf& m, bool* ret) { *ret = wp::isnan(m); }
|
|
421
|
+
WP_API void builtin_isnan_mat22d(mat22d& m, bool* ret) { *ret = wp::isnan(m); }
|
|
422
|
+
WP_API void builtin_isnan_mat33d(mat33d& m, bool* ret) { *ret = wp::isnan(m); }
|
|
423
|
+
WP_API void builtin_isnan_mat44d(mat44d& m, bool* ret) { *ret = wp::isnan(m); }
|
|
424
|
+
WP_API void builtin_isnan_spatial_matrixd(spatial_matrixd& m, bool* ret) { *ret = wp::isnan(m); }
|
|
425
|
+
WP_API void builtin_isinf_float16(float16 x, bool* ret) { *ret = wp::isinf(x); }
|
|
426
|
+
WP_API void builtin_isinf_float32(float32 x, bool* ret) { *ret = wp::isinf(x); }
|
|
427
|
+
WP_API void builtin_isinf_float64(float64 x, bool* ret) { *ret = wp::isinf(x); }
|
|
428
|
+
WP_API void builtin_isinf_int16(int16 x, bool* ret) { *ret = wp::isinf(x); }
|
|
429
|
+
WP_API void builtin_isinf_int32(int32 x, bool* ret) { *ret = wp::isinf(x); }
|
|
430
|
+
WP_API void builtin_isinf_int64(int64 x, bool* ret) { *ret = wp::isinf(x); }
|
|
431
|
+
WP_API void builtin_isinf_int8(int8 x, bool* ret) { *ret = wp::isinf(x); }
|
|
432
|
+
WP_API void builtin_isinf_uint16(uint16 x, bool* ret) { *ret = wp::isinf(x); }
|
|
433
|
+
WP_API void builtin_isinf_uint32(uint32 x, bool* ret) { *ret = wp::isinf(x); }
|
|
434
|
+
WP_API void builtin_isinf_uint64(uint64 x, bool* ret) { *ret = wp::isinf(x); }
|
|
435
|
+
WP_API void builtin_isinf_uint8(uint8 x, bool* ret) { *ret = wp::isinf(x); }
|
|
436
|
+
WP_API void builtin_isinf_vec2h(vec2h& x, bool* ret) { *ret = wp::isinf(x); }
|
|
437
|
+
WP_API void builtin_isinf_vec3h(vec3h& x, bool* ret) { *ret = wp::isinf(x); }
|
|
438
|
+
WP_API void builtin_isinf_vec4h(vec4h& x, bool* ret) { *ret = wp::isinf(x); }
|
|
439
|
+
WP_API void builtin_isinf_spatial_vectorh(spatial_vectorh& x, bool* ret) { *ret = wp::isinf(x); }
|
|
440
|
+
WP_API void builtin_isinf_vec2f(vec2f& x, bool* ret) { *ret = wp::isinf(x); }
|
|
441
|
+
WP_API void builtin_isinf_vec3f(vec3f& x, bool* ret) { *ret = wp::isinf(x); }
|
|
442
|
+
WP_API void builtin_isinf_vec4f(vec4f& x, bool* ret) { *ret = wp::isinf(x); }
|
|
443
|
+
WP_API void builtin_isinf_spatial_vectorf(spatial_vectorf& x, bool* ret) { *ret = wp::isinf(x); }
|
|
444
|
+
WP_API void builtin_isinf_vec2d(vec2d& x, bool* ret) { *ret = wp::isinf(x); }
|
|
445
|
+
WP_API void builtin_isinf_vec3d(vec3d& x, bool* ret) { *ret = wp::isinf(x); }
|
|
446
|
+
WP_API void builtin_isinf_vec4d(vec4d& x, bool* ret) { *ret = wp::isinf(x); }
|
|
447
|
+
WP_API void builtin_isinf_spatial_vectord(spatial_vectord& x, bool* ret) { *ret = wp::isinf(x); }
|
|
448
|
+
WP_API void builtin_isinf_vec2s(vec2s& x, bool* ret) { *ret = wp::isinf(x); }
|
|
449
|
+
WP_API void builtin_isinf_vec3s(vec3s& x, bool* ret) { *ret = wp::isinf(x); }
|
|
450
|
+
WP_API void builtin_isinf_vec4s(vec4s& x, bool* ret) { *ret = wp::isinf(x); }
|
|
451
|
+
WP_API void builtin_isinf_vec2i(vec2i& x, bool* ret) { *ret = wp::isinf(x); }
|
|
452
|
+
WP_API void builtin_isinf_vec3i(vec3i& x, bool* ret) { *ret = wp::isinf(x); }
|
|
453
|
+
WP_API void builtin_isinf_vec4i(vec4i& x, bool* ret) { *ret = wp::isinf(x); }
|
|
454
|
+
WP_API void builtin_isinf_vec2l(vec2l& x, bool* ret) { *ret = wp::isinf(x); }
|
|
455
|
+
WP_API void builtin_isinf_vec3l(vec3l& x, bool* ret) { *ret = wp::isinf(x); }
|
|
456
|
+
WP_API void builtin_isinf_vec4l(vec4l& x, bool* ret) { *ret = wp::isinf(x); }
|
|
457
|
+
WP_API void builtin_isinf_vec2b(vec2b& x, bool* ret) { *ret = wp::isinf(x); }
|
|
458
|
+
WP_API void builtin_isinf_vec3b(vec3b& x, bool* ret) { *ret = wp::isinf(x); }
|
|
459
|
+
WP_API void builtin_isinf_vec4b(vec4b& x, bool* ret) { *ret = wp::isinf(x); }
|
|
460
|
+
WP_API void builtin_isinf_vec2us(vec2us& x, bool* ret) { *ret = wp::isinf(x); }
|
|
461
|
+
WP_API void builtin_isinf_vec3us(vec3us& x, bool* ret) { *ret = wp::isinf(x); }
|
|
462
|
+
WP_API void builtin_isinf_vec4us(vec4us& x, bool* ret) { *ret = wp::isinf(x); }
|
|
463
|
+
WP_API void builtin_isinf_vec2ui(vec2ui& x, bool* ret) { *ret = wp::isinf(x); }
|
|
464
|
+
WP_API void builtin_isinf_vec3ui(vec3ui& x, bool* ret) { *ret = wp::isinf(x); }
|
|
465
|
+
WP_API void builtin_isinf_vec4ui(vec4ui& x, bool* ret) { *ret = wp::isinf(x); }
|
|
466
|
+
WP_API void builtin_isinf_vec2ul(vec2ul& x, bool* ret) { *ret = wp::isinf(x); }
|
|
467
|
+
WP_API void builtin_isinf_vec3ul(vec3ul& x, bool* ret) { *ret = wp::isinf(x); }
|
|
468
|
+
WP_API void builtin_isinf_vec4ul(vec4ul& x, bool* ret) { *ret = wp::isinf(x); }
|
|
469
|
+
WP_API void builtin_isinf_vec2ub(vec2ub& x, bool* ret) { *ret = wp::isinf(x); }
|
|
470
|
+
WP_API void builtin_isinf_vec3ub(vec3ub& x, bool* ret) { *ret = wp::isinf(x); }
|
|
471
|
+
WP_API void builtin_isinf_vec4ub(vec4ub& x, bool* ret) { *ret = wp::isinf(x); }
|
|
472
|
+
WP_API void builtin_isinf_quath(quath& x, bool* ret) { *ret = wp::isinf(x); }
|
|
473
|
+
WP_API void builtin_isinf_quatf(quatf& x, bool* ret) { *ret = wp::isinf(x); }
|
|
474
|
+
WP_API void builtin_isinf_quatd(quatd& x, bool* ret) { *ret = wp::isinf(x); }
|
|
475
|
+
WP_API void builtin_isinf_mat22h(mat22h& m, bool* ret) { *ret = wp::isinf(m); }
|
|
476
|
+
WP_API void builtin_isinf_mat33h(mat33h& m, bool* ret) { *ret = wp::isinf(m); }
|
|
477
|
+
WP_API void builtin_isinf_mat44h(mat44h& m, bool* ret) { *ret = wp::isinf(m); }
|
|
478
|
+
WP_API void builtin_isinf_spatial_matrixh(spatial_matrixh& m, bool* ret) { *ret = wp::isinf(m); }
|
|
479
|
+
WP_API void builtin_isinf_mat22f(mat22f& m, bool* ret) { *ret = wp::isinf(m); }
|
|
480
|
+
WP_API void builtin_isinf_mat33f(mat33f& m, bool* ret) { *ret = wp::isinf(m); }
|
|
481
|
+
WP_API void builtin_isinf_mat44f(mat44f& m, bool* ret) { *ret = wp::isinf(m); }
|
|
482
|
+
WP_API void builtin_isinf_spatial_matrixf(spatial_matrixf& m, bool* ret) { *ret = wp::isinf(m); }
|
|
483
|
+
WP_API void builtin_isinf_mat22d(mat22d& m, bool* ret) { *ret = wp::isinf(m); }
|
|
484
|
+
WP_API void builtin_isinf_mat33d(mat33d& m, bool* ret) { *ret = wp::isinf(m); }
|
|
485
|
+
WP_API void builtin_isinf_mat44d(mat44d& m, bool* ret) { *ret = wp::isinf(m); }
|
|
486
|
+
WP_API void builtin_isinf_spatial_matrixd(spatial_matrixd& m, bool* ret) { *ret = wp::isinf(m); }
|
|
301
487
|
WP_API void builtin_dot_vec2h_vec2h(vec2h& x, vec2h& y, float16* ret) { *ret = wp::dot(x, y); }
|
|
302
488
|
WP_API void builtin_dot_vec3h_vec3h(vec3h& x, vec3h& y, float16* ret) { *ret = wp::dot(x, y); }
|
|
303
489
|
WP_API void builtin_dot_vec4h_vec4h(vec4h& x, vec4h& y, float16* ret) { *ret = wp::dot(x, y); }
|
|
@@ -782,6 +968,7 @@ WP_API void builtin_volume_sample_v_uint64_vec3f_int32(uint64 id, vec3f& uvw, in
|
|
|
782
968
|
WP_API void builtin_volume_lookup_v_uint64_int32_int32_int32(uint64 id, int32 i, int32 j, int32 k, vec3f* ret) { *ret = wp::volume_lookup_v(id, i, j, k); }
|
|
783
969
|
WP_API void builtin_volume_sample_i_uint64_vec3f(uint64 id, vec3f& uvw, int* ret) { *ret = wp::volume_sample_i(id, uvw); }
|
|
784
970
|
WP_API void builtin_volume_lookup_i_uint64_int32_int32_int32(uint64 id, int32 i, int32 j, int32 k, int* ret) { *ret = wp::volume_lookup_i(id, i, j, k); }
|
|
971
|
+
WP_API void builtin_volume_lookup_index_uint64_int32_int32_int32(uint64 id, int32 i, int32 j, int32 k, int32* ret) { *ret = wp::volume_lookup_index(id, i, j, k); }
|
|
785
972
|
WP_API void builtin_volume_index_to_world_uint64_vec3f(uint64 id, vec3f& uvw, vec3f* ret) { *ret = wp::volume_index_to_world(id, uvw); }
|
|
786
973
|
WP_API void builtin_volume_world_to_index_uint64_vec3f(uint64 id, vec3f& xyz, vec3f* ret) { *ret = wp::volume_world_to_index(id, xyz); }
|
|
787
974
|
WP_API void builtin_volume_index_to_world_dir_uint64_vec3f(uint64 id, vec3f& uvw, vec3f* ret) { *ret = wp::volume_index_to_world_dir(id, uvw); }
|