nv-sgl 0.6.0__cp313-cp313-win_amd64.whl
Sign up to get free protection for your applications and to get access to all the features.
- include/tevclient.h +393 -0
- nv_sgl-0.6.0.dist-info/LICENSE +29 -0
- nv_sgl-0.6.0.dist-info/METADATA +21 -0
- nv_sgl-0.6.0.dist-info/RECORD +142 -0
- nv_sgl-0.6.0.dist-info/WHEEL +5 -0
- nv_sgl-0.6.0.dist-info/top_level.txt +1 -0
- sgl/__init__.py +15 -0
- sgl/__init__.pyi +6738 -0
- sgl/d3d12/D3D12Core.dll +0 -0
- sgl/d3d12/d3d12SDKLayers.dll +0 -0
- sgl/dxcompiler.dll +0 -0
- sgl/dxil.dll +0 -0
- sgl/gfx.dll +0 -0
- sgl/include/sgl/app/app.h +113 -0
- sgl/include/sgl/core/bitmap.h +302 -0
- sgl/include/sgl/core/crypto.h +89 -0
- sgl/include/sgl/core/data_type.h +46 -0
- sgl/include/sgl/core/dds_file.h +103 -0
- sgl/include/sgl/core/enum.h +201 -0
- sgl/include/sgl/core/error.h +161 -0
- sgl/include/sgl/core/file_stream.h +77 -0
- sgl/include/sgl/core/file_system_watcher.h +141 -0
- sgl/include/sgl/core/format.h +36 -0
- sgl/include/sgl/core/fwd.h +90 -0
- sgl/include/sgl/core/hash.h +45 -0
- sgl/include/sgl/core/input.h +522 -0
- sgl/include/sgl/core/logger.h +214 -0
- sgl/include/sgl/core/macros.h +184 -0
- sgl/include/sgl/core/maths.h +45 -0
- sgl/include/sgl/core/memory_mapped_file.h +112 -0
- sgl/include/sgl/core/memory_mapped_file_stream.h +32 -0
- sgl/include/sgl/core/memory_stream.h +74 -0
- sgl/include/sgl/core/object.h +683 -0
- sgl/include/sgl/core/platform.h +239 -0
- sgl/include/sgl/core/plugin.h +331 -0
- sgl/include/sgl/core/resolver.h +39 -0
- sgl/include/sgl/core/short_vector.h +141 -0
- sgl/include/sgl/core/static_vector.h +111 -0
- sgl/include/sgl/core/stream.h +54 -0
- sgl/include/sgl/core/string.h +276 -0
- sgl/include/sgl/core/struct.h +360 -0
- sgl/include/sgl/core/thread.h +28 -0
- sgl/include/sgl/core/timer.h +52 -0
- sgl/include/sgl/core/traits.h +15 -0
- sgl/include/sgl/core/type_utils.h +19 -0
- sgl/include/sgl/core/window.h +177 -0
- sgl/include/sgl/device/agility_sdk.h +24 -0
- sgl/include/sgl/device/blit.h +88 -0
- sgl/include/sgl/device/buffer_cursor.h +162 -0
- sgl/include/sgl/device/command.h +539 -0
- sgl/include/sgl/device/cuda_api.h +766 -0
- sgl/include/sgl/device/cuda_interop.h +39 -0
- sgl/include/sgl/device/cuda_utils.h +107 -0
- sgl/include/sgl/device/cursor_utils.h +129 -0
- sgl/include/sgl/device/device.h +668 -0
- sgl/include/sgl/device/device_resource.h +37 -0
- sgl/include/sgl/device/fence.h +91 -0
- sgl/include/sgl/device/formats.h +330 -0
- sgl/include/sgl/device/framebuffer.h +85 -0
- sgl/include/sgl/device/fwd.h +164 -0
- sgl/include/sgl/device/helpers.h +20 -0
- sgl/include/sgl/device/hot_reload.h +75 -0
- sgl/include/sgl/device/input_layout.h +74 -0
- sgl/include/sgl/device/kernel.h +69 -0
- sgl/include/sgl/device/memory_heap.h +155 -0
- sgl/include/sgl/device/native_formats.h +342 -0
- sgl/include/sgl/device/native_handle.h +73 -0
- sgl/include/sgl/device/native_handle_traits.h +65 -0
- sgl/include/sgl/device/pipeline.h +138 -0
- sgl/include/sgl/device/print.h +45 -0
- sgl/include/sgl/device/python/cursor_utils.h +853 -0
- sgl/include/sgl/device/query.h +52 -0
- sgl/include/sgl/device/raytracing.h +84 -0
- sgl/include/sgl/device/reflection.h +1254 -0
- sgl/include/sgl/device/resource.h +705 -0
- sgl/include/sgl/device/sampler.h +57 -0
- sgl/include/sgl/device/shader.h +516 -0
- sgl/include/sgl/device/shader_cursor.h +85 -0
- sgl/include/sgl/device/shader_object.h +94 -0
- sgl/include/sgl/device/shader_offset.h +67 -0
- sgl/include/sgl/device/shared_handle.h +12 -0
- sgl/include/sgl/device/slang_utils.h +54 -0
- sgl/include/sgl/device/swapchain.h +74 -0
- sgl/include/sgl/device/types.h +782 -0
- sgl/include/sgl/math/colorspace.h +56 -0
- sgl/include/sgl/math/constants.h +7 -0
- sgl/include/sgl/math/float16.h +146 -0
- sgl/include/sgl/math/matrix.h +6 -0
- sgl/include/sgl/math/matrix_math.h +746 -0
- sgl/include/sgl/math/matrix_types.h +207 -0
- sgl/include/sgl/math/python/primitivetype.h +33 -0
- sgl/include/sgl/math/quaternion.h +6 -0
- sgl/include/sgl/math/quaternion_math.h +484 -0
- sgl/include/sgl/math/quaternion_types.h +83 -0
- sgl/include/sgl/math/ray.h +47 -0
- sgl/include/sgl/math/scalar_math.h +249 -0
- sgl/include/sgl/math/scalar_types.h +107 -0
- sgl/include/sgl/math/vector.h +6 -0
- sgl/include/sgl/math/vector_math.h +1796 -0
- sgl/include/sgl/math/vector_types.h +336 -0
- sgl/include/sgl/python/nanobind.h +489 -0
- sgl/include/sgl/python/py_doc.h +11600 -0
- sgl/include/sgl/python/sgl_ext_pch.h +8 -0
- sgl/include/sgl/sgl.h +21 -0
- sgl/include/sgl/sgl_pch.h +6 -0
- sgl/include/sgl/stl/bit.h +377 -0
- sgl/include/sgl/tests/testing.h +54 -0
- sgl/include/sgl/ui/fwd.h +34 -0
- sgl/include/sgl/ui/imgui_config.h +43 -0
- sgl/include/sgl/ui/ui.h +71 -0
- sgl/include/sgl/ui/widgets.h +918 -0
- sgl/include/sgl/utils/python/slangpy.h +366 -0
- sgl/include/sgl/utils/renderdoc.h +50 -0
- sgl/include/sgl/utils/slangpy.h +153 -0
- sgl/include/sgl/utils/tev.h +93 -0
- sgl/include/sgl/utils/texture_loader.h +106 -0
- sgl/math/__init__.pyi +5083 -0
- sgl/platform/__init__.pyi +102 -0
- sgl/renderdoc/__init__.pyi +51 -0
- sgl/sgl.dll +0 -0
- sgl/sgl_ext.cp313-win_amd64.pyd +0 -0
- sgl/shaders/nvapi/nvHLSLExtns.h +2315 -0
- sgl/shaders/nvapi/nvHLSLExtnsInternal.h +758 -0
- sgl/shaders/nvapi/nvShaderExtnEnums.h +142 -0
- sgl/shaders/sgl/device/blit.slang +93 -0
- sgl/shaders/sgl/device/nvapi.slang +5 -0
- sgl/shaders/sgl/device/nvapi.slangh +7 -0
- sgl/shaders/sgl/device/print.slang +445 -0
- sgl/shaders/sgl/math/constants.slang +4 -0
- sgl/shaders/sgl/math/ray.slang +29 -0
- sgl/shaders/sgl/ui/imgui.slang +49 -0
- sgl/slang-glslang.dll +0 -0
- sgl/slang-llvm.dll +0 -0
- sgl/slang-rt.dll +0 -0
- sgl/slang.dll +0 -0
- sgl/slangpy/__init__.pyi +268 -0
- sgl/tev/__init__.pyi +108 -0
- sgl/tevclient.lib +0 -0
- sgl/thread/__init__.pyi +4 -0
- sgl/ui/__init__.pyi +1118 -0
- share/cmake/tevclient/tevclient-config-release.cmake +19 -0
- share/cmake/tevclient/tevclient-config.cmake +108 -0
include/tevclient.h
ADDED
@@ -0,0 +1,393 @@
|
|
1
|
+
// This file was developed by Simon Kallweit and Thomas Müller <thomas94@gmx.net>.
|
2
|
+
// It is published under the BSD 3-Clause License within the LICENSE file.
|
3
|
+
|
4
|
+
#pragma once
|
5
|
+
|
6
|
+
#include <cstddef>
|
7
|
+
#include <cstdint>
|
8
|
+
|
9
|
+
namespace tevclient
|
10
|
+
{
|
11
|
+
|
12
|
+
/// Vector graphics command.
|
13
|
+
struct VgCommand
|
14
|
+
{
|
15
|
+
enum class EType : int8_t
|
16
|
+
{
|
17
|
+
Invalid = 127,
|
18
|
+
Save = 0,
|
19
|
+
Restore = 1,
|
20
|
+
FillColor = 2,
|
21
|
+
Fill = 3,
|
22
|
+
StrokeColor = 4,
|
23
|
+
Stroke = 5,
|
24
|
+
BeginPath = 6,
|
25
|
+
ClosePath = 7,
|
26
|
+
PathWinding = 8,
|
27
|
+
DebugDumpPathCache = 9,
|
28
|
+
MoveTo = 10,
|
29
|
+
LineTo = 11,
|
30
|
+
ArcTo = 12,
|
31
|
+
Arc = 13,
|
32
|
+
BezierTo = 14,
|
33
|
+
Circle = 15,
|
34
|
+
Ellipse = 16,
|
35
|
+
QuadTo = 17,
|
36
|
+
Rect = 18,
|
37
|
+
RoundedRect = 19,
|
38
|
+
RoundedRectVarying = 20,
|
39
|
+
};
|
40
|
+
|
41
|
+
enum EWinding : int
|
42
|
+
{
|
43
|
+
CounterClockwise = 1,
|
44
|
+
Clockwise = 2,
|
45
|
+
};
|
46
|
+
|
47
|
+
struct Pos
|
48
|
+
{
|
49
|
+
float x, y;
|
50
|
+
};
|
51
|
+
|
52
|
+
struct Size
|
53
|
+
{
|
54
|
+
float width, height;
|
55
|
+
};
|
56
|
+
|
57
|
+
struct Color
|
58
|
+
{
|
59
|
+
float r, g, b, a;
|
60
|
+
};
|
61
|
+
|
62
|
+
VgCommand() = default;
|
63
|
+
|
64
|
+
VgCommand(EType type) : type(type)
|
65
|
+
{
|
66
|
+
}
|
67
|
+
|
68
|
+
template <size_t N> VgCommand(EType type, const float (&data)[N]) : type(type), dataCount(N)
|
69
|
+
{
|
70
|
+
static_assert(N <= MaxPayload, "Payload too large");
|
71
|
+
for (size_t i = 0; i < N; ++i)
|
72
|
+
this->data[i] = data[i];
|
73
|
+
}
|
74
|
+
|
75
|
+
static VgCommand save()
|
76
|
+
{
|
77
|
+
return {EType::Save};
|
78
|
+
}
|
79
|
+
|
80
|
+
static VgCommand restore()
|
81
|
+
{
|
82
|
+
return {EType::Restore};
|
83
|
+
}
|
84
|
+
|
85
|
+
static VgCommand fillColor(const Color &c)
|
86
|
+
{
|
87
|
+
float data[4] = {c.r, c.g, c.b, c.a};
|
88
|
+
return {EType::FillColor, data};
|
89
|
+
}
|
90
|
+
|
91
|
+
static VgCommand fill()
|
92
|
+
{
|
93
|
+
return {EType::Fill};
|
94
|
+
}
|
95
|
+
|
96
|
+
static VgCommand strokeColor(const Color &c)
|
97
|
+
{
|
98
|
+
float data[4] = {c.r, c.g, c.b, c.a};
|
99
|
+
return {EType::StrokeColor, data};
|
100
|
+
}
|
101
|
+
|
102
|
+
static VgCommand stroke()
|
103
|
+
{
|
104
|
+
return {EType::Stroke};
|
105
|
+
}
|
106
|
+
|
107
|
+
static VgCommand beginPath()
|
108
|
+
{
|
109
|
+
return {EType::BeginPath};
|
110
|
+
}
|
111
|
+
|
112
|
+
static VgCommand closePath()
|
113
|
+
{
|
114
|
+
return {EType::ClosePath};
|
115
|
+
}
|
116
|
+
|
117
|
+
static VgCommand pathWinding(EWinding winding)
|
118
|
+
{
|
119
|
+
float data[1] = {(float)(int)winding};
|
120
|
+
return {EType::PathWinding, data};
|
121
|
+
}
|
122
|
+
|
123
|
+
static VgCommand moveTo(const Pos &p)
|
124
|
+
{
|
125
|
+
float data[2] = {p.x, p.y};
|
126
|
+
return {EType::MoveTo, data};
|
127
|
+
}
|
128
|
+
|
129
|
+
static VgCommand lineTo(const Pos &p)
|
130
|
+
{
|
131
|
+
float data[2] = {p.x, p.y};
|
132
|
+
return {EType::LineTo, data};
|
133
|
+
}
|
134
|
+
|
135
|
+
static VgCommand arcTo(const Pos &p1, const Pos &p2, float radius)
|
136
|
+
{
|
137
|
+
float data[5] = {p1.x, p1.y, p2.x, p2.y, radius};
|
138
|
+
return {EType::ArcTo, data};
|
139
|
+
}
|
140
|
+
|
141
|
+
static VgCommand arc(const Pos ¢er, float radius, float angle_begin, float angle_end, EWinding winding)
|
142
|
+
{
|
143
|
+
float data[6] = {center.x, center.y, radius, angle_begin, angle_end, (float)(int)winding};
|
144
|
+
return {EType::Arc, data};
|
145
|
+
}
|
146
|
+
|
147
|
+
static VgCommand bezierTo(const Pos &c1, const Pos &c2, const Pos &p)
|
148
|
+
{
|
149
|
+
float data[6] = {c1.x, c1.y, c2.x, c2.y, p.x, p.y};
|
150
|
+
return {EType::BezierTo, data};
|
151
|
+
}
|
152
|
+
|
153
|
+
static VgCommand circle(const Pos ¢er, float radius)
|
154
|
+
{
|
155
|
+
float data[3] = {center.x, center.y, radius};
|
156
|
+
return {EType::Circle, data};
|
157
|
+
}
|
158
|
+
|
159
|
+
static VgCommand ellipse(const Pos ¢er, const Size &radius)
|
160
|
+
{
|
161
|
+
float data[4] = {center.x, center.y, radius.width, radius.height};
|
162
|
+
return {EType::Ellipse, data};
|
163
|
+
}
|
164
|
+
|
165
|
+
static VgCommand quadTo(const Pos &c, const Pos &p)
|
166
|
+
{
|
167
|
+
float data[4] = {c.x, c.y, p.x, p.y};
|
168
|
+
return {EType::QuadTo, data};
|
169
|
+
}
|
170
|
+
|
171
|
+
static VgCommand rect(const Pos &p, const Size &size)
|
172
|
+
{
|
173
|
+
float data[4] = {p.x, p.y, size.width, size.height};
|
174
|
+
return {EType::Rect, data};
|
175
|
+
}
|
176
|
+
|
177
|
+
static VgCommand roundedRect(const Pos &p, const Size &size, float radius)
|
178
|
+
{
|
179
|
+
float data[5] = {p.x, p.y, size.width, size.height, radius};
|
180
|
+
return {EType::RoundedRect, data};
|
181
|
+
}
|
182
|
+
|
183
|
+
static VgCommand roundedRectVarying(const Pos &p, const Size &size, float radiusTopLeft, float radiusTopRight,
|
184
|
+
float radiusBottomRight, float radiusBottomLeft)
|
185
|
+
{
|
186
|
+
float data[8] = {
|
187
|
+
p.x, p.y, size.width, size.height, radiusTopLeft, radiusTopRight, radiusBottomRight, radiusBottomLeft,
|
188
|
+
};
|
189
|
+
return {EType::RoundedRectVarying, data};
|
190
|
+
}
|
191
|
+
|
192
|
+
static constexpr size_t MaxPayload = 8;
|
193
|
+
|
194
|
+
EType type{EType::Invalid};
|
195
|
+
uint8_t dataCount{0};
|
196
|
+
float data[MaxPayload];
|
197
|
+
};
|
198
|
+
|
199
|
+
/// Error codes.
|
200
|
+
enum class Error
|
201
|
+
{
|
202
|
+
Ok,
|
203
|
+
NotConnected,
|
204
|
+
SocketError,
|
205
|
+
ArgumentError,
|
206
|
+
};
|
207
|
+
|
208
|
+
/**
|
209
|
+
* @brief Initialize the tev client library.
|
210
|
+
*
|
211
|
+
* This is optional as each Client will implicitly initialize
|
212
|
+
* the library if not already done. This function is provided
|
213
|
+
* to allow for more control over global initialization.
|
214
|
+
* The number of calls to initialize() and shutdown() must match.
|
215
|
+
* Only the first call to initialize() will have an effect.
|
216
|
+
*
|
217
|
+
* @param error If not nullptr, will be set to an error message if initialization fails.
|
218
|
+
* @return True if successful.
|
219
|
+
*/
|
220
|
+
bool initialize(const char **error = nullptr);
|
221
|
+
|
222
|
+
/**
|
223
|
+
* @brief Shutdown the tev client library.
|
224
|
+
*/
|
225
|
+
void shutdown();
|
226
|
+
|
227
|
+
/**
|
228
|
+
* @brief Class for remotely controlling the tev image viewer.
|
229
|
+
*
|
230
|
+
* Communication is unidirectional (client -> tev server).
|
231
|
+
* The API is not thread-safe and all calls are blocking.
|
232
|
+
*
|
233
|
+
* Note that a connection is not automatically established.
|
234
|
+
* Before sending any commands, the connection needs to be
|
235
|
+
* opened using connect().
|
236
|
+
*/
|
237
|
+
class Client
|
238
|
+
{
|
239
|
+
public:
|
240
|
+
/**
|
241
|
+
* @brief Constructor.
|
242
|
+
*
|
243
|
+
* Note that the connection is not established automatically.
|
244
|
+
* You need to call connect() to open the connection.
|
245
|
+
*
|
246
|
+
* @param hostname Hostname
|
247
|
+
* @param port Port
|
248
|
+
*/
|
249
|
+
Client(const char *hostname = "127.0.0.1", uint16_t port = 14158);
|
250
|
+
|
251
|
+
~Client();
|
252
|
+
|
253
|
+
Client(const Client &) = delete;
|
254
|
+
Client(Client &&) = delete;
|
255
|
+
Client &operator=(const Client &) = delete;
|
256
|
+
Client &operator=(Client &&) = delete;
|
257
|
+
|
258
|
+
const char *getHostname() const;
|
259
|
+
uint16_t getPort() const;
|
260
|
+
|
261
|
+
/**
|
262
|
+
* @brief Connect to tev.
|
263
|
+
*
|
264
|
+
* @return Error::Ok if succesful.
|
265
|
+
*/
|
266
|
+
Error connect();
|
267
|
+
|
268
|
+
/**
|
269
|
+
* @brief Disconnect from tev.
|
270
|
+
*
|
271
|
+
* @return Error::Ok if successful.
|
272
|
+
*/
|
273
|
+
Error disconnect();
|
274
|
+
|
275
|
+
/// Return true if connected.
|
276
|
+
bool isConnected() const;
|
277
|
+
|
278
|
+
/**
|
279
|
+
* @brief Open an image from a file.
|
280
|
+
*
|
281
|
+
* @param imagePath Path to image.
|
282
|
+
* @param channelSelector Channel to select (optional).
|
283
|
+
* @param grabFocus Select the image in tev.
|
284
|
+
* @return Error::Ok if successful.
|
285
|
+
*/
|
286
|
+
Error openImage(const char *imagePath, const char *channelSelector = "", bool grabFocus = true);
|
287
|
+
|
288
|
+
/**
|
289
|
+
* @brief Reload an image.
|
290
|
+
*
|
291
|
+
* @param imageName Name of the image.
|
292
|
+
* @param grabFocus Select the image in tev.
|
293
|
+
* @return Error::Ok if successful.
|
294
|
+
*/
|
295
|
+
Error reloadImage(const char *imageName, bool grabFocus = true);
|
296
|
+
|
297
|
+
/**
|
298
|
+
* @brief Close an image.
|
299
|
+
*
|
300
|
+
* @param imageName Name of the image.
|
301
|
+
* @return Error::Ok if successful.
|
302
|
+
*/
|
303
|
+
Error closeImage(const char *imageName);
|
304
|
+
|
305
|
+
/**
|
306
|
+
* @brief Create a new empty image.
|
307
|
+
*
|
308
|
+
* This creates a new empty image in tev that can then be updated using updateImage().
|
309
|
+
* If channel names are not provided they default to: R, G, B, A.
|
310
|
+
*
|
311
|
+
* @param imageName Name of the image.
|
312
|
+
* @param width Width in pixels.
|
313
|
+
* @param height Height in pixels.
|
314
|
+
* @param channelCount Number of channels.
|
315
|
+
* @param channelNames Channel names (optional if number of channels <= 4).
|
316
|
+
* @param grabFocus Select the image in tev.
|
317
|
+
* @return Error::Ok if successful.
|
318
|
+
*/
|
319
|
+
Error createImage(const char *imageName, uint32_t width, uint32_t height, uint32_t channelCount,
|
320
|
+
const char **channelNames = nullptr, bool grabFocus = true);
|
321
|
+
|
322
|
+
/**
|
323
|
+
* @brief Update an existing image.
|
324
|
+
*
|
325
|
+
* This updates a region in a previously created image.
|
326
|
+
* If channel names are not provided they default to: R, G, B, A.
|
327
|
+
* If channel offsets are not provided they default to: 0, 1, 2, 3.
|
328
|
+
* If channel strides are not provided they default to: N, N, N, N where N is the number of channels.
|
329
|
+
*
|
330
|
+
* Note: Channel offsets and strides are given in number of floats (NOT number of bytes).
|
331
|
+
*
|
332
|
+
* @param imageName Name of the image.
|
333
|
+
* @param x X position of update region in pixels.
|
334
|
+
* @param y Y position of update region in pixels.
|
335
|
+
* @param width Width of update region in pixels.
|
336
|
+
* @param height Height of update region in pixels.
|
337
|
+
* @param channelCount Number of channels.
|
338
|
+
* @param channelNames Channel names (optional if number of channels <= 4).
|
339
|
+
* @param channelOffsets Channel offsets (optional if number of channels <= 4).
|
340
|
+
* @param channelStrides Channel strides (optional if number of channels <= 4).
|
341
|
+
* @param imageData Image data as array of floats.
|
342
|
+
* @param imageDataCount Number of elements (floats) in image data.
|
343
|
+
* @param grabFocus Select the image in tev.
|
344
|
+
* @return Error::Ok if successful.
|
345
|
+
*/
|
346
|
+
Error updateImage(const char *imageName, uint32_t x, uint32_t y, uint32_t width, uint32_t height,
|
347
|
+
uint32_t channelCount, const char **channelNames, uint64_t *channelOffsets,
|
348
|
+
uint64_t *channelStrides, const float *imageData, size_t imageDataCount, bool grabFocus = true);
|
349
|
+
|
350
|
+
/**
|
351
|
+
* @brief Create a new image.
|
352
|
+
*
|
353
|
+
* This is a convenience helper to create a new image and immediately update it.
|
354
|
+
* Image data is expected to be tightly packed.
|
355
|
+
*
|
356
|
+
* @param imageName Name of the image.
|
357
|
+
* @param width Width in pixels.
|
358
|
+
* @param height Height in pixels.
|
359
|
+
* @param channelCount Number of channels (must be <= 4).
|
360
|
+
* @param imageData Image data as array of floats.
|
361
|
+
* @param imageDataCount Number of elements (floats) in image data.
|
362
|
+
* @param grabFocus Select the image in tev.
|
363
|
+
* @return Error::Ok if successful.
|
364
|
+
*/
|
365
|
+
Error createImage(const char *imageName, uint32_t width, uint32_t height, uint32_t channelCount,
|
366
|
+
const float *imageData, size_t imageDataCount, bool grabFocus = true);
|
367
|
+
|
368
|
+
/**
|
369
|
+
* @brief Draw vector graphics on top of an image.
|
370
|
+
*
|
371
|
+
* @param imageName Name of the image.
|
372
|
+
* @param commands Array of commands.
|
373
|
+
* @param commandCount Number of elements in array of commands.
|
374
|
+
* @param append Append to existing vector graphics.
|
375
|
+
* @param grabFocus
|
376
|
+
* @param grabFocus Select the image in tev.
|
377
|
+
* @return Error::Ok if successful.
|
378
|
+
*/
|
379
|
+
Error vectorGraphics(const char *imageName, const VgCommand *commands, size_t commandCount, bool append = true,
|
380
|
+
bool grabFocus = true);
|
381
|
+
|
382
|
+
/// Return the last error.
|
383
|
+
Error lastError() const;
|
384
|
+
|
385
|
+
/// Return the last error as a string.
|
386
|
+
const char *lastErrorString() const;
|
387
|
+
|
388
|
+
private:
|
389
|
+
class Impl;
|
390
|
+
Impl *mImpl;
|
391
|
+
};
|
392
|
+
|
393
|
+
} // namespace tevclient
|
@@ -0,0 +1,29 @@
|
|
1
|
+
SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
|
2
|
+
|
3
|
+
Licensed under the Apache License, Version 2.0 (the "License");
|
4
|
+
you may not use this file except in compliance with the License.
|
5
|
+
You may obtain a copy of the License at
|
6
|
+
|
7
|
+
http://www.apache.org/licenses/LICENSE-2.0
|
8
|
+
|
9
|
+
Unless required by applicable law or agreed to in writing, software
|
10
|
+
distributed under the License is distributed on an "AS IS" BASIS,
|
11
|
+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
12
|
+
See the License for the specific language governing permissions and
|
13
|
+
limitations under the License.
|
14
|
+
|
15
|
+
LLVM Exceptions to the Apache 2.0 License
|
16
|
+
|
17
|
+
As an exception, if, as a result of your compiling your source code, portions
|
18
|
+
of this Software are embedded into an Object form of such source code, you
|
19
|
+
may redistribute such embedded portions in such Object form without complying
|
20
|
+
with the conditions of Sections 4(a), 4(b) and 4(d) of the License.
|
21
|
+
|
22
|
+
In addition, if you combine or link compiled forms of this Software with
|
23
|
+
software that is licensed under the GPLv2 ("Combined Software") and if a
|
24
|
+
court of competent jurisdiction determines that the patent provision (Section
|
25
|
+
3), the indemnity provision (Section 9) or other Section of the License
|
26
|
+
conflicts with the conditions of the GPLv2, you may retroactively and
|
27
|
+
prospectively choose to deem waived or otherwise exclude such Section(s) of
|
28
|
+
the License, but only in their entirety and only with respect to the Combined
|
29
|
+
Software.
|
@@ -0,0 +1,21 @@
|
|
1
|
+
Metadata-Version: 2.2
|
2
|
+
Name: nv-sgl
|
3
|
+
Version: 0.6.0
|
4
|
+
Summary: Slang Graphics Library
|
5
|
+
Home-page: https://github.com/shader-slang/sgl
|
6
|
+
Author: Simon Kallweit
|
7
|
+
Author-email: skallweit@nvidia.com
|
8
|
+
License: Apache-2.0
|
9
|
+
Requires-Python: >=3.9
|
10
|
+
Description-Content-Type: text/markdown
|
11
|
+
License-File: LICENSE
|
12
|
+
Dynamic: author
|
13
|
+
Dynamic: author-email
|
14
|
+
Dynamic: description
|
15
|
+
Dynamic: description-content-type
|
16
|
+
Dynamic: home-page
|
17
|
+
Dynamic: license
|
18
|
+
Dynamic: requires-python
|
19
|
+
Dynamic: summary
|
20
|
+
|
21
|
+
TBD
|
@@ -0,0 +1,142 @@
|
|
1
|
+
include/tevclient.h,sha256=lsDO1uL1vhN-3gb-6ULPQY6l60shk59dJSH4XPwyxzo,11648
|
2
|
+
sgl/__init__.py,sha256=m9UheRno-Mu-vT-xi4krOEXdJZvxNdFdXhI2neVN7Cc,368
|
3
|
+
sgl/__init__.pyi,sha256=0GmUiQFgborkVAuzlJ9KjAPGqUia7_tiuqhyc0czb7U,170870
|
4
|
+
sgl/dxcompiler.dll,sha256=Vwoac1eJNhVBft9as1ZiW1trchoTG8czG_FyidSSjtc,17367600
|
5
|
+
sgl/dxil.dll,sha256=nMzH70Gdpz-jFP2uyugxxsICBq5wcyyQk_lRkzeM7RA,1421856
|
6
|
+
sgl/gfx.dll,sha256=QsSs12Z222MDzXwNffwgdYESAQlggHAT69sRsK1kSv8,2084864
|
7
|
+
sgl/sgl.dll,sha256=GYa0M3HsWMhcptN-aFQXSU_yGLeXtUAe2c-faPrTvQ4,9102848
|
8
|
+
sgl/sgl_ext.cp313-win_amd64.pyd,sha256=kxKSeujraki-Hhjrd-TnUHsUYg5x6TarCxsGQEUQcbw,7502848
|
9
|
+
sgl/slang-glslang.dll,sha256=s1NCj94N8WfsS5PWebjN-nR2kxlYyHoEyUvpj1SszPc,9609216
|
10
|
+
sgl/slang-llvm.dll,sha256=SKy3Ht6KWV7TNpER_4L7KCMTWbFvQeQSk-dM6LzEQ-I,72957440
|
11
|
+
sgl/slang-rt.dll,sha256=3wwpxJQRft54Binxm8_UcqiX7pOq84SwBv2AsjI0s5k,1306112
|
12
|
+
sgl/slang.dll,sha256=aS8dP7nN6TbOKkWXSzeN3VUzGZNIkifRZ6oUm2n-YV4,23270400
|
13
|
+
sgl/tevclient.lib,sha256=X6DT9epTTZtdQ-JWTdWUd8rhRJ8v7-geXsaSeYX7cPU,181678
|
14
|
+
sgl/d3d12/D3D12Core.dll,sha256=MfNk8rOqF1Pnup_5EtByHI9CS-X6FFA-_dr7swxjXTs,5908408
|
15
|
+
sgl/d3d12/d3d12SDKLayers.dll,sha256=XfwyDV7icZAYGxpj5060gbB-pydRPb6zipbbYVeWnSQ,9525272
|
16
|
+
sgl/include/sgl/sgl.h,sha256=m4XQSDczv3Drx9gNlQqeBWdLubW8-b1N9zvregtkIT8,565
|
17
|
+
sgl/include/sgl/sgl_pch.h,sha256=bj5xpbFjVrIdVAexdbllUBi4HkOBXskwjAC5k0vUXeo,117
|
18
|
+
sgl/include/sgl/app/app.h,sha256=7aJSCRsTglqrRISNV4I-pP1ct1h5gnOUWVQ3dkDCS1g,2992
|
19
|
+
sgl/include/sgl/core/bitmap.h,sha256=9-Hkp_pqmHPKRt_M4eZN0d6MVkc-53QDgaYDIHHgUEg,10438
|
20
|
+
sgl/include/sgl/core/crypto.h,sha256=eLMDkdCn1CRzz2Mp7D2H8f6XD3iItFjtzvnUrzpbEkU,1897
|
21
|
+
sgl/include/sgl/core/data_type.h,sha256=rxT7aVeXTva6C_skVlcH3vm_ctSV2J3k1ggaWIFOfug,926
|
22
|
+
sgl/include/sgl/core/dds_file.h,sha256=rwyDDJpZ9rnMUY2hfxGKSwj9ww7WwwZpePGID_oPQwo,3003
|
23
|
+
sgl/include/sgl/core/enum.h,sha256=UobOp53ZovrLRS9AJg1SPaVgNxlB7NXDDOws9r1Ng-I,7215
|
24
|
+
sgl/include/sgl/core/error.h,sha256=Qqx2hg07Za9GXzgOON1vBHuM8X8xA2Z7GxWPYMKXbvs,6664
|
25
|
+
sgl/include/sgl/core/file_stream.h,sha256=HkEJcyCG4DBA4LJl5qiLsyZqukDt6eRs35yXg8YEToQ,1844
|
26
|
+
sgl/include/sgl/core/file_system_watcher.h,sha256=tklI1-LXF_DBUnV-v2ztWt1tylKxoPUT7GhETn23fcc,4089
|
27
|
+
sgl/include/sgl/core/format.h,sha256=GbFk-7Kfg28KMgYGOQCZOlSHradIVYwyjvomfO1vPN4,919
|
28
|
+
sgl/include/sgl/core/fwd.h,sha256=iTFIdu6WeUdC3pPAo57SYY-JtO_HrWCUpNFVd9nxBGA,1174
|
29
|
+
sgl/include/sgl/core/hash.h,sha256=A6j9o835nbzXpLOZs6jREkcHNhbEWb9YOQsxulvh1Yo,993
|
30
|
+
sgl/include/sgl/core/input.h,sha256=7yZOA5OJXZJUr0O3TRhHvuJOFtyVL_y-qwxUVTUfTOI,14030
|
31
|
+
sgl/include/sgl/core/logger.h,sha256=pftUyvl2FJJx2pMN4kl47o_2UZRQnYYfCxKZ6QmqGJI,8212
|
32
|
+
sgl/include/sgl/core/macros.h,sha256=-6HAr9xGpq3DWWdZvlBgeIHPt02jh-vRz3HrYFBDNaA,7263
|
33
|
+
sgl/include/sgl/core/maths.h,sha256=TiEAzLHa6A2GP7GSIgmdtRcRRV-l46cQJ971wT-oZQw,1004
|
34
|
+
sgl/include/sgl/core/memory_mapped_file.h,sha256=4xWD-Losvtx9w1wC69w0l53pMJ3EUQdnAsJKDEYSDrM,3155
|
35
|
+
sgl/include/sgl/core/memory_mapped_file_stream.h,sha256=--SkxGTuVLJDy0DPS19Vxj0v2y_5TYvKfTCkosAp9pA,809
|
36
|
+
sgl/include/sgl/core/memory_stream.h,sha256=KXT5C8lNHunmBrKOrnzMM4oxLvfipN5oJKETRaw6zHg,2112
|
37
|
+
sgl/include/sgl/core/object.h,sha256=ofAsK6sFmsgPm42i3qvMPRKUU7DHx5AmOdZr2f3tmeE,21702
|
38
|
+
sgl/include/sgl/core/platform.h,sha256=DiED8wN3XpnPHT4L-Nayc-Jj07ODU9x1WBYWWHcohjw,9124
|
39
|
+
sgl/include/sgl/core/plugin.h,sha256=goz1ZElQfsKByvFAfWtpNGk_ztupPTGRaezKM8B1wZo,13431
|
40
|
+
sgl/include/sgl/core/resolver.h,sha256=CaI7oVl3Abszo3g9C4l2BDOmMfV9VM0QvXJl91JYgJ4,970
|
41
|
+
sgl/include/sgl/core/short_vector.h,sha256=oU0AlDpRzuTiKVhUHPhLtdfU7RiWOnuL9PbjHe672uI,3964
|
42
|
+
sgl/include/sgl/core/static_vector.h,sha256=0JtzOVqW3PI_axsFYkNBpo4CfoG8B5S_n-qR2XelpHg,3161
|
43
|
+
sgl/include/sgl/core/stream.h,sha256=mTuV6X91EjQBxdxBCAJ5CqcvpHdu9UyA6nS9vadd90U,1541
|
44
|
+
sgl/include/sgl/core/string.h,sha256=evaDrHEjw8lm8LKKF0O2cR4nd74TNR4sZ0yAycXptxg,8479
|
45
|
+
sgl/include/sgl/core/struct.h,sha256=Tidv7K63ToVPcnvSwsoWpPz_7YT1_2CfZseQfa7PNzQ,11878
|
46
|
+
sgl/include/sgl/core/thread.h,sha256=Zs4ihFTlVe1rh4B84_pYyM-405I1rxrKybra4rIXJec,678
|
47
|
+
sgl/include/sgl/core/timer.h,sha256=CGmYEHW2ZPaFLEYMsbsepyDikymRaPYdIrwOVYTj5_8,1584
|
48
|
+
sgl/include/sgl/core/traits.h,sha256=LjbsOLtKQUqnHpKhBjj9igTEi-loNsf5OXmv0BT9t_M,279
|
49
|
+
sgl/include/sgl/core/type_utils.h,sha256=WLk41-HAC9XFkTReUQKU9EdIphfmOBg1xmLeI7PWU78,328
|
50
|
+
sgl/include/sgl/core/window.h,sha256=TnVihSpvIi89ZrO6pQshDQ3o4B2hdjXxM9EEZCcsWnc,5911
|
51
|
+
sgl/include/sgl/device/agility_sdk.h,sha256=HZ8YGnSPJzb5leEWi2-Ftu7SdQG-PSaEPxd-Nv1_nzI,1318
|
52
|
+
sgl/include/sgl/device/blit.h,sha256=0vGpzApyhtbsB2MuxBKyQyGyycM68Al2nyIoQt5O1XY,2529
|
53
|
+
sgl/include/sgl/device/buffer_cursor.h,sha256=Mh72aQF6KUALm-1skiGb3Y8aJ4NrOHfNRKYBy4x2guU,5906
|
54
|
+
sgl/include/sgl/device/command.h,sha256=MYz4NEzNGCEO3yE5fDORqwQWYz3kNjCcQ3Zi-JKSD0c,18876
|
55
|
+
sgl/include/sgl/device/cuda_api.h,sha256=c9wdzZQBWWVDTBIEVBnh3nlZGf5DPjBBogUQYROm-u4,29775
|
56
|
+
sgl/include/sgl/device/cuda_interop.h,sha256=2JpSSjL3H0sYxBzkVdClC_KoUi7VY-5mv7m_aRIq-Ew,903
|
57
|
+
sgl/include/sgl/device/cuda_utils.h,sha256=RVA9bKkzawJgB5A1RERAM5DgVoxCQAn-RdlQ36kzFJQ,4195
|
58
|
+
sgl/include/sgl/device/cursor_utils.h,sha256=HKAf2pCHXkoGjFDM3JKBzgFU6Rd84_ZtOBdTn9PRWEM,3910
|
59
|
+
sgl/include/sgl/device/device.h,sha256=ZV-5yMe_8Cezq55QSfHDvw4qOLzoe0r7PPQHGFXGq6E,23482
|
60
|
+
sgl/include/sgl/device/device_resource.h,sha256=bYY17qc99rvVuIFpEKJOr4UE89w3Xc32YZiSeIsl4NI,789
|
61
|
+
sgl/include/sgl/device/fence.h,sha256=rXXntcWlgbmEFA76fIOAcLzq-ge_IrjhvcebqUj0hys,3006
|
62
|
+
sgl/include/sgl/device/formats.h,sha256=iX4RtaVrJqADONTCTGfIBuwocfWju6LYQdXEGq2-VNI,13492
|
63
|
+
sgl/include/sgl/device/framebuffer.h,sha256=FOSEJJl-xys8n6rD_IW7KBsvxtTm_yiD0KMsATGsfBA,2634
|
64
|
+
sgl/include/sgl/device/fwd.h,sha256=QIVQ8fKUoHF5D2DVj99FUn2MCQ8yxQgA2Bkp7qXbD2g,2708
|
65
|
+
sgl/include/sgl/device/helpers.h,sha256=846N5JAqvitcFMt0cNs-tmp3gVxlP_VF5xajQ_E7v7I,965
|
66
|
+
sgl/include/sgl/device/hot_reload.h,sha256=GVM3jojkFh5YnhiiwbH2d2c1_ao0TtXP8oH6_xp143U,2551
|
67
|
+
sgl/include/sgl/device/input_layout.h,sha256=bNLRzQmkGA3nEIrJ1131fdQ0FAKhESCyj-B8gAzmCRM,2210
|
68
|
+
sgl/include/sgl/device/kernel.h,sha256=FVs0zo0W2f7kBkdrH2Wqk2ZyU1PfbdXrqncBXbEfNNo,1866
|
69
|
+
sgl/include/sgl/device/memory_heap.h,sha256=PinsNCuV4296f60bw4EDvMj_doR-ABSLejR_dzEAwAQ,4940
|
70
|
+
sgl/include/sgl/device/native_formats.h,sha256=OPM5WqKStcpgl9ZM_-uJ_N0EEQqGoNXMMY6qqLodn3c,12346
|
71
|
+
sgl/include/sgl/device/native_handle.h,sha256=diUU-gTNsilyzihRycjGwMt687o_T4OXKU-ChFJmBtI,1697
|
72
|
+
sgl/include/sgl/device/native_handle_traits.h,sha256=3WloIna84IuXOm---hP8f88_-NtUgmUsH6_qiCkO9WE,3296
|
73
|
+
sgl/include/sgl/device/pipeline.h,sha256=RAMb_IGyavf1qUFrw-iYwYpGoQRmKmyJ4g60os2OTnQ,3698
|
74
|
+
sgl/include/sgl/device/print.h,sha256=LFOdRng5e_bSawOQal_OnO2XfkdZbkQ4GksM4XmVoL8,1067
|
75
|
+
sgl/include/sgl/device/query.h,sha256=bm7k1JDW_Tji6qWtOFOJBpzQ5Dp0PIBfwnw0zHBodA4,1336
|
76
|
+
sgl/include/sgl/device/raytracing.h,sha256=lpnPnBkKfg9FxG-h6QQ7lhLQFaUFZ9lNOTNDg8mkB-U,2255
|
77
|
+
sgl/include/sgl/device/reflection.h,sha256=1ShInM3taCjjdIDW-pAzFttz99R0a9cEzuPYEe8xwpA,46712
|
78
|
+
sgl/include/sgl/device/resource.h,sha256=_ejddtWZvWYhrwe-ctQYtpVpprkaqOGhQj1-rmwn1IQ,25625
|
79
|
+
sgl/include/sgl/device/sampler.h,sha256=bGdgxZSFV9nn6KEX2wy8Aw0np_T5WX_o6F7IRWH_cEE,1692
|
80
|
+
sgl/include/sgl/device/shader.h,sha256=tO5Iy0vw9epJ1lt1c6VwBTUParPCcNhBjk4Faalqc9U,18083
|
81
|
+
sgl/include/sgl/device/shader_cursor.h,sha256=_rfGN9LxXjITzMsPE3QkZOdhbc8h9gCPEhTJP-u3U9s,2676
|
82
|
+
sgl/include/sgl/device/shader_object.h,sha256=2NQqp_10dW_cVrtQZ9Im8q38AXHUFacFdCb9F3RvK2A,3718
|
83
|
+
sgl/include/sgl/device/shader_offset.h,sha256=cRSx6wXOx5AQ172vsn4dSXABjMo3NVN91HsblNuHjd8,2091
|
84
|
+
sgl/include/sgl/device/shared_handle.h,sha256=V0O__UPfuuHr73qNfKANehk-DJjckdaj81Wh9wMdFYA,200
|
85
|
+
sgl/include/sgl/device/slang_utils.h,sha256=8_FNeMcOjpAKTADjgZJAHq9k2JZLkptwdTuvAPPa_SE,2007
|
86
|
+
sgl/include/sgl/device/swapchain.h,sha256=xr5TYMsGYlDT3bnmmS6eQ6U_myaTHBvPNcQ7VF1BstQ,2248
|
87
|
+
sgl/include/sgl/device/types.h,sha256=T85Dot_uHG-yUDwOCa6WzfmcVRO6EbEadBba3eIEbpw,30159
|
88
|
+
sgl/include/sgl/device/python/cursor_utils.h,sha256=b-h5zYJvEuTu-QWyughvj-rrfYjdK9RTxx9L8NYDK-Y,34587
|
89
|
+
sgl/include/sgl/math/colorspace.h,sha256=cBiKEl36AJFgbDMdyw9aOGup-gbfe4XBk7WHhWK4NHQ,1751
|
90
|
+
sgl/include/sgl/math/constants.h,sha256=FdxtGetTPYKntdJM5gZsglXTFzZYFMExnB4zCEPoDTE,115
|
91
|
+
sgl/include/sgl/math/float16.h,sha256=NUMmNlhAU4Iu2myzmYujFgefsMXgKmExJAjWiySEWW8,6107
|
92
|
+
sgl/include/sgl/math/matrix.h,sha256=gBroa0Ldyl11m9pR6lk1LwVwYrAs-c52rLnpGqTqot0,129
|
93
|
+
sgl/include/sgl/math/matrix_math.h,sha256=RePy3BuCshiyzYtoJZNq03aNR_Tyfme4r9JqE_aDnVA,24653
|
94
|
+
sgl/include/sgl/math/matrix_types.h,sha256=2vMKViZvgwu0_SrjVCLVYActs0CSSh4CsPpDr6bswnc,5548
|
95
|
+
sgl/include/sgl/math/quaternion.h,sha256=KUTJmfOX_qNZ2y0evGIGbMsG6pNocUsAP0HKQmmL1zw,137
|
96
|
+
sgl/include/sgl/math/quaternion_math.h,sha256=sbJUrXcS_M-LXSHNh0LbmTIxFaEXAgMg7MZ1fyzpbyg,15819
|
97
|
+
sgl/include/sgl/math/quaternion_types.h,sha256=S6vo2rQXW4cL84sxJ_duwHCzjS_0WRAYtJiKp7CO_U0,1810
|
98
|
+
sgl/include/sgl/math/ray.h,sha256=2Hrn1RBEYhXuyvt6tDho0vIh9YCyW0bI1rffgIYtkfc,1231
|
99
|
+
sgl/include/sgl/math/scalar_math.h,sha256=jCtwLIE1zd8PzqbOgLMi9Nax4a6pcJjPLsAbPpMOTIU,12289
|
100
|
+
sgl/include/sgl/math/scalar_types.h,sha256=iyonV_tsVOMgh-zHZKmK6iaUUtpIpzcsMF_m6x4fwk8,2718
|
101
|
+
sgl/include/sgl/math/vector.h,sha256=DwxOg4yyqtASvD5MxbJxJPphcFqrexmO4GSkl9rDjuw,129
|
102
|
+
sgl/include/sgl/math/vector_math.h,sha256=3N4FASJD327YwzoR39vv3RUilOh2elE18qHUQQIbzeo,60165
|
103
|
+
sgl/include/sgl/math/vector_types.h,sha256=NDbUBmdQxwBWfRL1AE1jvMmXOPJN56rMOoV3u8dv_9E,10040
|
104
|
+
sgl/include/sgl/math/python/primitivetype.h,sha256=iVPZ-pnx4eVYmN07-lQaTHfaYO4keZMy_mq3vy2LpKY,874
|
105
|
+
sgl/include/sgl/python/nanobind.h,sha256=o06q8UD8eVBhM2b0Ouc4Ulz3SlXqRFAdA1JHAZCAVrI,15302
|
106
|
+
sgl/include/sgl/python/py_doc.h,sha256=Gx-2YIpOmOynS6ZUTe3WUmCa464Sk6rhI6UnA95VkGk,436289
|
107
|
+
sgl/include/sgl/python/sgl_ext_pch.h,sha256=FSWNCv1D3Te2s76CRWTGvGnAkCH9lU-4qVXnqKx-QG4,142
|
108
|
+
sgl/include/sgl/stl/bit.h,sha256=Ks-x0S0v8dlq_mDEbXd191GEig_hqP2FePgRyO8K13U,10022
|
109
|
+
sgl/include/sgl/tests/testing.h,sha256=nBF5mY1f717pufBQpYoF9qCwvH4BWwxVlHk6jZsxJeo,1821
|
110
|
+
sgl/include/sgl/ui/fwd.h,sha256=c6vROo55KuRbfsU646SukwdKAzMHZEey9PfKk8oqDYA,484
|
111
|
+
sgl/include/sgl/ui/imgui_config.h,sha256=rzWDC-kzKbbE4s0JrBVO2ZFBbUzK6sFCdt7gEj_0IGA,3846
|
112
|
+
sgl/include/sgl/ui/ui.h,sha256=JN1V0t97yeEJ_OU3JHQCD-LeZoWDw_PdS_FLYCxHovc,1620
|
113
|
+
sgl/include/sgl/ui/widgets.h,sha256=LMqdZLdLyuyarcN-hvarspNZcgDJ9KhFmEW4x8NpUuU,26174
|
114
|
+
sgl/include/sgl/utils/renderdoc.h,sha256=PPN1tbKoZ2hGCqLFFX9FTgXfXEcbnG14912bNmGbMnw,1386
|
115
|
+
sgl/include/sgl/utils/slangpy.h,sha256=KgOWoJpPVo37vHJkp2V9ezc8c655JK0dzVUy-Lit4OE,3494
|
116
|
+
sgl/include/sgl/utils/tev.h,sha256=OCsC9CVzUG0zrZYFSAUug_NgS5apgNcGy23Et3wdXGc,2665
|
117
|
+
sgl/include/sgl/utils/texture_loader.h,sha256=ECRA7NrQ-es2eSoa-PFq-zJukN1XSsP9q2f5cuGKghE,3430
|
118
|
+
sgl/include/sgl/utils/python/slangpy.h,sha256=eGYInTITtRpwDd0S4W2eF7NNrn1MNl7vMnPUqIdsDWY,13964
|
119
|
+
sgl/math/__init__.pyi,sha256=fSB8sk6Ot-sGjwVUkWeAQGN7RmlOD8jmS_DAWqPk5rQ,112303
|
120
|
+
sgl/platform/__init__.pyi,sha256=8kP0-mT6Ex8lxTZcbuSkWV0xfJa7TTK6X1lFX7sCWEM,2632
|
121
|
+
sgl/renderdoc/__init__.pyi,sha256=Ppbobg3kYvdhJhcY19Ou-plzmuHhaxEOcPfrABqiIWs,1285
|
122
|
+
sgl/shaders/nvapi/nvHLSLExtns.h,sha256=3uY9W6S2L4Rh5gAGE-22wa4QkQyFFxYxc1Hi4n-Yt1w,88554
|
123
|
+
sgl/shaders/nvapi/nvHLSLExtnsInternal.h,sha256=50MTWSmT1LxSMDpJyFJKVkcqVHcBj9eKXOJqcypt7C4,28962
|
124
|
+
sgl/shaders/nvapi/nvShaderExtnEnums.h,sha256=ehuJXt3GVjtX4P7_LOTBQPqJzkEvBfNdjziCxwR_4zo,8760
|
125
|
+
sgl/shaders/sgl/device/blit.slang,sha256=ouF9rs2RlHZndIUoSqc5oU53RQ9j6PZ8yscgnNzgYmg,2317
|
126
|
+
sgl/shaders/sgl/device/nvapi.slang,sha256=jcfZnwe8HfWyVvfBYKIAf4QwMkid1bEUNNU3yT3hLRA,104
|
127
|
+
sgl/shaders/sgl/device/nvapi.slangh,sha256=rMB0sn2Z1Al8GKdS-jha2cey5MY0M39uiB6kZEcZQzk,150
|
128
|
+
sgl/shaders/sgl/device/print.slang,sha256=N54X_bEvyfZgS0enz9QNZP6SoFz4XVVB7JarE9fsAsE,16457
|
129
|
+
sgl/shaders/sgl/math/constants.slang,sha256=1MgTz_7eAt6soUPdS1NiQ4Xlx4aA23IJWBP-WBIInRw,105
|
130
|
+
sgl/shaders/sgl/math/ray.slang,sha256=WuLBe5vHwxdTlXU41SrrOkmqVd2MwRAU4kLoeFNP-Dc,692
|
131
|
+
sgl/shaders/sgl/ui/imgui.slang,sha256=hDzGObCrMwBIVL0Xw6kMPdqOvvLXltxTm8NM9oeKxSw,1091
|
132
|
+
sgl/slangpy/__init__.pyi,sha256=BnlPuJWkihEQ7GDrnRykivkb6mF1jCGiSEsIvszKbIE,6645
|
133
|
+
sgl/tev/__init__.pyi,sha256=ryIz1dqehhCJYpJGleSnnipuIW_wNDtW7--gSBCT8Jc,2764
|
134
|
+
sgl/thread/__init__.pyi,sha256=7K4NMfWbFu0AcevuvZiR2f1EQZEv4jMJ0ZdUr3mQfps,93
|
135
|
+
sgl/ui/__init__.pyi,sha256=olxrQD8uhgVc8T8WJ1QKfnf0nFdwbtIvxaHDxDKkS9U,30131
|
136
|
+
share/cmake/tevclient/tevclient-config-release.cmake,sha256=MUqYIejLnztTxjFtpqtIkwJ7BN_9hG30NFKllVTzekk,896
|
137
|
+
share/cmake/tevclient/tevclient-config.cmake,sha256=xfVxSKvVny1PQwm6BCsxSUi6IxpExfVh-h3Kl0BzVQg,4314
|
138
|
+
nv_sgl-0.6.0.dist-info/LICENSE,sha256=YfbU1SlAT2-CcMMLvhXXVRV0JMyDoa9WO0hArf2LVGY,1519
|
139
|
+
nv_sgl-0.6.0.dist-info/METADATA,sha256=ua9jWE5G1aejM01JPTCNtRxMq5xUt6MaVkl0d-LJ-J0,489
|
140
|
+
nv_sgl-0.6.0.dist-info/WHEEL,sha256=6bXTkCllrWLYPW3gCPkeRA91N4604g9hqNhQqZWsUzQ,101
|
141
|
+
nv_sgl-0.6.0.dist-info/top_level.txt,sha256=5d6qg3XBq7bfsiO6EIzqSlTIYkQoXf76bXdCsiQwOxU,4
|
142
|
+
nv_sgl-0.6.0.dist-info/RECORD,,
|
@@ -0,0 +1 @@
|
|
1
|
+
sgl
|
sgl/__init__.py
ADDED
@@ -0,0 +1,15 @@
|
|
1
|
+
import os
|
2
|
+
from importlib import import_module as _import
|
3
|
+
|
4
|
+
if os.name == "nt":
|
5
|
+
if not os.path.exists(
|
6
|
+
os.path.normpath(os.path.join(os.path.dirname(__file__), "sgl.dll"))
|
7
|
+
):
|
8
|
+
os.add_dll_directory(
|
9
|
+
os.path.normpath(os.path.join(os.path.dirname(__file__), "../../"))
|
10
|
+
)
|
11
|
+
|
12
|
+
del os
|
13
|
+
|
14
|
+
_import("sgl.sgl_ext")
|
15
|
+
del _import
|