nv-sgl 0.6.0__cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.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 +133 -0
- nv_sgl-0.6.0.dist-info/WHEEL +6 -0
- nv_sgl-0.6.0.dist-info/top_level.txt +1 -0
- sgl/__init__.py +15 -0
- sgl/__init__.pyi +6738 -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/libgfx.so +0 -0
- sgl/libsgl.so +0 -0
- sgl/libslang-glslang.so +0 -0
- sgl/libslang.so +0 -0
- sgl/libtevclient.a +0 -0
- sgl/math/__init__.pyi +5083 -0
- sgl/platform/__init__.pyi +102 -0
- sgl/renderdoc/__init__.pyi +51 -0
- sgl/sgl_ext.cpython-313-x86_64-linux-gnu.so +0 -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/slangpy/__init__.pyi +268 -0
- sgl/tev/__init__.pyi +108 -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 +103 -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,133 @@
|
|
1
|
+
sgl/sgl_ext.cpython-313-x86_64-linux-gnu.so,sha256=njhsNOhtiauNJe7eZ40UWDJyc5B11p3vwtBRsbEJGTA,2167656
|
2
|
+
sgl/libtevclient.a,sha256=bI1QWAULY7uonNDEwMZ3WRpwqAbtb7e7QDm6ut9_ZlY,48822
|
3
|
+
sgl/__init__.py,sha256=sUgs8f3ffW4kb8cvDjhVLcacAgRqbEXcoQJCNh1Xeb4,353
|
4
|
+
sgl/libgfx.so,sha256=pqoXlIrtLvGWkOK45a2KPlnFFFcEuh-pc239dawIDuU,1039528
|
5
|
+
sgl/libsgl.so,sha256=0fdUlPTCnVdePsvTQB-EGdxipRr6zAlbMfZ1MRVkZd4,10019664
|
6
|
+
sgl/libslang.so,sha256=K2f1uOGNUeV9jhfdW-K7dAESQKIa1pDjctuQ6UhrA2I,21825632
|
7
|
+
sgl/__init__.pyi,sha256=Eg9unM9DXt5q4TNLAX7BZPiJ_JD9AzQvB0sjnN4TKrA,164166
|
8
|
+
sgl/libslang-glslang.so,sha256=ubXggthInn47HojhCumA2H67g5fOKqQSl68P2r7ymPo,9174384
|
9
|
+
sgl/math/__init__.pyi,sha256=9FTNz14SQ_YgCmQJ3URY_tB69NuhRiJR3h-mY9X0Koc,107228
|
10
|
+
sgl/include/sgl/sgl.h,sha256=pMuUQG0VqJHPTE_iB8m57sx038B7SvnkQXdHouBY_l4,544
|
11
|
+
sgl/include/sgl/sgl_pch.h,sha256=3gqif-2pHj4nC4eSUDVP5hu8v8Ld28c33AvrkN7wmKE,111
|
12
|
+
sgl/include/sgl/stl/bit.h,sha256=M0_MwNFeihW3kBUwN_dQEXaO-7CIs6yBQuujSZ5Jyn0,9645
|
13
|
+
sgl/include/sgl/core/memory_mapped_file_stream.h,sha256=uLK1K_GbCt5Rvjj34IWU-k_FFsgu2fMpZ_NTPU4KM2M,777
|
14
|
+
sgl/include/sgl/core/timer.h,sha256=6KZMxvErNmdPO8X7kumGxIP8Heaxt3IPQZOotfub_NY,1532
|
15
|
+
sgl/include/sgl/core/short_vector.h,sha256=FVoiWb4XvaF2cVKU746TgHTz1567s1RA4Mls43Apjrs,3823
|
16
|
+
sgl/include/sgl/core/hash.h,sha256=oIvdXZb2uYm3z0wzm3sd8_b0TPmysRRQhgaAyFZhYCA,948
|
17
|
+
sgl/include/sgl/core/thread.h,sha256=PP1OfJMMzUmuAkQsPDaHozKWrwRZvWV9RBKdfCfCpec,650
|
18
|
+
sgl/include/sgl/core/object.h,sha256=MMXhVHmEz9GeHUpU7hCaIMWK91LhEMcsCZdr-WCHTYs,21019
|
19
|
+
sgl/include/sgl/core/struct.h,sha256=8neBSzqq6SIainEMa4-zqc3wn84z5xDMq9j_YjJgPbk,11518
|
20
|
+
sgl/include/sgl/core/plugin.h,sha256=PxKp4iXYHVSqbgw_Khyq6m-tIcNNKaHQMz7K6CKV7zQ,13100
|
21
|
+
sgl/include/sgl/core/window.h,sha256=FAxGeSqH-mnodqpMIjBk3e08amBtAPr1Nds_dof45QY,5734
|
22
|
+
sgl/include/sgl/core/file_stream.h,sha256=kQmYAaFGkeJzZ8Nn2fwJ0BTxehPHbLAwXWWMqcxw0P8,1767
|
23
|
+
sgl/include/sgl/core/file_system_watcher.h,sha256=4s-k-m6NLXhYfRNaXNlS6NAwmyilOrNEy3ff7xNxlwI,3948
|
24
|
+
sgl/include/sgl/core/platform.h,sha256=j1isO8xZyN0r8Jg6lodt2JZj6VGgHy8wsWzVvLUnX8g,8885
|
25
|
+
sgl/include/sgl/core/memory_stream.h,sha256=CPsf5RumcHtq-n5LpKIsKPnKM82pPrefAO7D6w84KNc,2038
|
26
|
+
sgl/include/sgl/core/enum.h,sha256=c6IraCSdTPh1VzKW6ebvBYLI0lgtEuvbhJuNtPKP9EQ,7014
|
27
|
+
sgl/include/sgl/core/static_vector.h,sha256=jkJfQ32RoTZDV5bDxnIzkuYRxwmLkUGCKf0KCvVQoj8,3050
|
28
|
+
sgl/include/sgl/core/fwd.h,sha256=v_O2fx0bkzxi56cb6xSDVpkmdrjSogv5PEBS9GoZc2Q,1084
|
29
|
+
sgl/include/sgl/core/crypto.h,sha256=tZEnfL0lgdVjjPkt3cz4UEbS8KFtf7UexNKK7p0OyAY,1808
|
30
|
+
sgl/include/sgl/core/dds_file.h,sha256=0ximzkBgPXcHK01hFfgeCksgmxeMUodTdGlceSOqKlY,2900
|
31
|
+
sgl/include/sgl/core/maths.h,sha256=xLZE1e4MYCk-lFmYJJ3PIdnB1YrA4KaRGoUsUG6XPmc,959
|
32
|
+
sgl/include/sgl/core/string.h,sha256=HipLBG7G6rJeMif_YaoMtsStUAmC-t0U323P8apBgGc,8203
|
33
|
+
sgl/include/sgl/core/bitmap.h,sha256=ntUHS2sBiO-s0PgUev9BMYevQQLzPtfQk_H2FNUUYNA,10136
|
34
|
+
sgl/include/sgl/core/input.h,sha256=HoKG-zTM8CtsyLem-C1x-j8yERLh4nlMfio-uQNC0gM,13508
|
35
|
+
sgl/include/sgl/core/format.h,sha256=ccBQJqpQA88uK7gYQusSfW_RJxFbASqByd0qHr67NEo,883
|
36
|
+
sgl/include/sgl/core/data_type.h,sha256=7eJPJVM6gYYI5fFcNy3vUtB8CTGlR2XOJMt6S0_l4Jk,880
|
37
|
+
sgl/include/sgl/core/type_utils.h,sha256=obFktWrtF302qAL7A3zdsMt5BWfLJzs0ECe2CSwDXic,309
|
38
|
+
sgl/include/sgl/core/traits.h,sha256=GpolSe09GnlF20T7hoZyYfZIKm8qgQfdwmowicHAb38,264
|
39
|
+
sgl/include/sgl/core/memory_mapped_file.h,sha256=o42FlYcfoZy7NcmtdOJe_O2x3VfRlELrdLlOHZJXoqM,3043
|
40
|
+
sgl/include/sgl/core/macros.h,sha256=JddJTZ8ENu6hExamuOll2-SE082QCsPbM47KlHgc04c,7079
|
41
|
+
sgl/include/sgl/core/logger.h,sha256=NEkEML8MWK0kyQUlUknBIge9wUcGjTPQeZWPHpGAUKY,7998
|
42
|
+
sgl/include/sgl/core/stream.h,sha256=LyFJFD06wYG3lpDplT2dGnHU2scmtG5QsK__n9aqNFI,1487
|
43
|
+
sgl/include/sgl/core/resolver.h,sha256=IlKMoSr5-WJA-JYNswgXKxFST0rZy773dYNRlUQp414,931
|
44
|
+
sgl/include/sgl/core/error.h,sha256=f9eS9NOetQ0f4RfZmRt6gBIdrZW3UCqXWQb76KwSVTI,6503
|
45
|
+
sgl/include/sgl/math/quaternion_types.h,sha256=q7UANOw2o94r3Q5StpXo1uwQP9Spq8rkgXGSYHXCG-k,1727
|
46
|
+
sgl/include/sgl/math/scalar_types.h,sha256=53cVI1th7WTuusMAHzRZ3yuwmGaM8qulxZNx8keghkw,2611
|
47
|
+
sgl/include/sgl/math/matrix.h,sha256=muaKP9ze1RQsWlWcJ695Vsk4py5PC5j5fchvvKXlPIc,123
|
48
|
+
sgl/include/sgl/math/vector_types.h,sha256=ORiZj3ULdcMCF6WWteDAcMeh-lBogST3oJoP6PhwA7Y,9704
|
49
|
+
sgl/include/sgl/math/vector_math.h,sha256=MUpkcY1Lj3gF1k8Ss9CSUWRKaB7NYn8QTBL6ckIezQU,58369
|
50
|
+
sgl/include/sgl/math/scalar_math.h,sha256=DJThdEI47pP90oXT3KiNI1jWB7A7W-kIfLlm4_W4-1M,12040
|
51
|
+
sgl/include/sgl/math/vector.h,sha256=nZ_Lgw-7o7Zdst9E3Ae7PYJe0Jyh9PSMFHSP5-i3xL0,123
|
52
|
+
sgl/include/sgl/math/colorspace.h,sha256=QNLy8dX6LPqwrBFbJ3_06zbw0RvYGbg1KvAAXbOv3co,1695
|
53
|
+
sgl/include/sgl/math/quaternion_math.h,sha256=wrH_DF00rI8RHBedwprnhQ5c_rbLyyz6m9RU8x1mlfc,15335
|
54
|
+
sgl/include/sgl/math/quaternion.h,sha256=oVsuSYnz6Hl4uPvRFOecxhFkBBRnjaEh-6B29YWCVLk,131
|
55
|
+
sgl/include/sgl/math/matrix_types.h,sha256=76vbn9sUdi9Vzd70qlNp6Oco9-dFNIMB4aMR4uETFOI,5341
|
56
|
+
sgl/include/sgl/math/constants.h,sha256=hoAJH0jcJTTqIdtN2AIk3Zuh36q6boDc7FjDl5ci8LI,108
|
57
|
+
sgl/include/sgl/math/matrix_math.h,sha256=jlC-enk92OcLeDNKjDE0Uo-EOzxK8-j8D6_Pu_bu7AY,23907
|
58
|
+
sgl/include/sgl/math/float16.h,sha256=mEV2xpxQ7LsYIu16wWbnf7iFm9vSPYnLSKYR4fUqaKM,5961
|
59
|
+
sgl/include/sgl/math/ray.h,sha256=MMkIa0OBTK_W9xP4veS0a_CUWm-5puBzErteJ2qwJzI,1184
|
60
|
+
sgl/include/sgl/math/python/primitivetype.h,sha256=NPXtkBhYCcOwIJtfXpBy-ZQX6YQNaM9T8BFarvnGrvw,841
|
61
|
+
sgl/include/sgl/python/py_doc.h,sha256=saVGwSw-Ri9TdHv5vLj7kdt7-pAR40cU_NxFmZmkN9c,424689
|
62
|
+
sgl/include/sgl/python/sgl_ext_pch.h,sha256=gDeeojzXmqdaysT4mHPFaPPUaNNT5NVef2Nz-y47g3s,134
|
63
|
+
sgl/include/sgl/python/nanobind.h,sha256=YP7b28fuM5b0Jow4ncVbvsw5bCK3m5VFwbhp56nZiDM,14813
|
64
|
+
sgl/include/sgl/app/app.h,sha256=PXlZAfnK9HYhvBvzkRPElG2PuX_Hk06y8Xej4F1U_Kc,2879
|
65
|
+
sgl/include/sgl/tests/testing.h,sha256=8rVw5jMo3S_mZPYqO_uPizD1wu8G2Qracd2W65pcMec,1767
|
66
|
+
sgl/include/sgl/utils/texture_loader.h,sha256=LS6MkZyXkhLAYK0tABHDTBCUUP4h2JOKCCUw4pRdZzo,3324
|
67
|
+
sgl/include/sgl/utils/slangpy.h,sha256=ZL3YFQoNdgNVItTImQMQ9aChnWDuW6wwKF5RRI7EDcw,3341
|
68
|
+
sgl/include/sgl/utils/renderdoc.h,sha256=nZ_qRXNjXYMPyRb9ZqJhutmxWcCaU48AKgfK8jmSu7o,1336
|
69
|
+
sgl/include/sgl/utils/tev.h,sha256=fcnaMoDmciOomDlZqodaisuXcHzmWmAT60wBhDJcuqc,2572
|
70
|
+
sgl/include/sgl/utils/python/slangpy.h,sha256=pdP-S-AYCzAD5ECmzazFAJw1TV-7nZNnHSgZc97pkew,13598
|
71
|
+
sgl/include/sgl/device/pipeline.h,sha256=tMzMtSxIZz-02YXwRlAkwi4nDd_p3VFXHSIsk0r8uHI,3560
|
72
|
+
sgl/include/sgl/device/buffer_cursor.h,sha256=zMOZcqgosKbh-6DtZl6Bl3iXoKOH2ZbwTv-1i0dvPzs,5744
|
73
|
+
sgl/include/sgl/device/print.h,sha256=TjAu1WRnveSYSqs_m6JsnGPYpnZRT4jKrOsuo5Ku3Zg,1022
|
74
|
+
sgl/include/sgl/device/reflection.h,sha256=L2t6saVZXpgulBt4yrihki645olbJ6QlLMkOZ3e91oM,45458
|
75
|
+
sgl/include/sgl/device/native_formats.h,sha256=-Q58ZGxRYpihNpMROnZuDn677qr-69mx6frpgJ00v-8,12004
|
76
|
+
sgl/include/sgl/device/native_handle_traits.h,sha256=0_htKyIVmKaSTOXVRXKSczdru8bQopOMvLi0HyuQ83g,3231
|
77
|
+
sgl/include/sgl/device/input_layout.h,sha256=RujmqunkAXe1zdADgH2uiyJ2LNOtAmJBiiOvidNJfJo,2136
|
78
|
+
sgl/include/sgl/device/native_handle.h,sha256=DM26eo6nz_CVFSQ6POci6zvMH4uTzTapH29o8RHWNPE,1624
|
79
|
+
sgl/include/sgl/device/shader.h,sha256=SiX0qgR9LTUBf1ZFFzmid_W74CKFXFG-oc5Xc7mUoq0,17567
|
80
|
+
sgl/include/sgl/device/formats.h,sha256=qbB3WViQMTX-fu_kncwdOJZ4imuI6OzFJVroyPQoXjg,13162
|
81
|
+
sgl/include/sgl/device/fence.h,sha256=epmE7l8k6IJUTazM0z5es8bbY4oWp-WE5DvkJwfmnE8,2915
|
82
|
+
sgl/include/sgl/device/cuda_interop.h,sha256=-hH6Yip3ghQDItbZhnDyrpU_Ybg1wlp30cPc8hfxtcs,864
|
83
|
+
sgl/include/sgl/device/cuda_utils.h,sha256=nFReT9zHue9UQ67RKDKS85glcK0xfXZ8_WBHtcfJuoM,4088
|
84
|
+
sgl/include/sgl/device/shader_object.h,sha256=03GMXqTX6CE9ycaozV1Z0HCIJ-uW-fVh0HYPn0KG8Eo,3624
|
85
|
+
sgl/include/sgl/device/memory_heap.h,sha256=E81Kf45_Q2umrdtrS_291kox7PGnC_xxM4rkEUx6IFc,4785
|
86
|
+
sgl/include/sgl/device/hot_reload.h,sha256=ZxwHc14ttXNI19zYaNKltJKyfmDWuPO3x5pA1eX61LM,2476
|
87
|
+
sgl/include/sgl/device/device.h,sha256=A-VML89LvUs9B51cGSxzDIoaxvi-uQR0GqgYICQYer4,22814
|
88
|
+
sgl/include/sgl/device/fwd.h,sha256=G2sytVNpzF0sJ8X06DpasXbEmgCtd2ZsM05K3tnPoOY,2544
|
89
|
+
sgl/include/sgl/device/shader_cursor.h,sha256=skJ3F9g1IYrs9gud9BqaNP9hPV6cm93xUFuNlSEZIyw,2591
|
90
|
+
sgl/include/sgl/device/cuda_api.h,sha256=6Hg0WqWyO-ob3ibMt9FpvK-xS2JAa3kuPuCMIXdy18Q,29009
|
91
|
+
sgl/include/sgl/device/kernel.h,sha256=zafr1OqPmfRfnEqJEWyxZBEC_piSqwefFJ1-1YUNdb0,1797
|
92
|
+
sgl/include/sgl/device/device_resource.h,sha256=g3y2slvAAv7ci_ad5GeuFUinMlSlE2fypYP8eiKGq1Y,752
|
93
|
+
sgl/include/sgl/device/query.h,sha256=_OGJUb6is4gjowI98qbSoZA2f2q3b-ObefY0CDBGuT0,1284
|
94
|
+
sgl/include/sgl/device/agility_sdk.h,sha256=g_cBlB2ZO2LjWdSgXqfQYODYEtNrFAgj-FoHE-1n7OY,1294
|
95
|
+
sgl/include/sgl/device/shader_offset.h,sha256=KFcY3czIiYP-I2HtUYvXtoWEMgDSblces0b4WxE9adc,2024
|
96
|
+
sgl/include/sgl/device/types.h,sha256=FkTxoJkL-1Gk8MsKoyyM557StIVB6Yx7RR4Znk3Kqnw,29377
|
97
|
+
sgl/include/sgl/device/cursor_utils.h,sha256=VLni2ZcIb7eQQLu8PUFWvRBi4I-ZM6YyThKsnpuD7m0,3781
|
98
|
+
sgl/include/sgl/device/sampler.h,sha256=LB0wumLKt7n6WSDl-Yar2rCu28fsdMci98BNZ3AxRCk,1635
|
99
|
+
sgl/include/sgl/device/shared_handle.h,sha256=nKDaLakwLvkvRZrrwXqa603HvTiuZj0kQH-zxY3ASZU,188
|
100
|
+
sgl/include/sgl/device/blit.h,sha256=Pcr3hJaXvYzML6rOtRWDlowp4beOg291hVu96foNonE,2441
|
101
|
+
sgl/include/sgl/device/command.h,sha256=k03E2gE-x26VxR-inESCCDCkcBJ4ro7jRcFy-By6_4c,18337
|
102
|
+
sgl/include/sgl/device/swapchain.h,sha256=thBZuA7-hD21jp58nX9-8AtVNQVw5d2jJwrNYIwsia4,2174
|
103
|
+
sgl/include/sgl/device/raytracing.h,sha256=NnwlUasLlGjGIr0VNPPLgsuPSjj_YgdH27KW-ENg30o,2171
|
104
|
+
sgl/include/sgl/device/slang_utils.h,sha256=Th6Mi1eHrTu7N9JAwFiqc914Rj5JBNK7CetCAp54lsQ,1953
|
105
|
+
sgl/include/sgl/device/resource.h,sha256=46Ydbr1urpv3Z1mgUSD65zlqIglYUnrBnPhl7kMci2g,24920
|
106
|
+
sgl/include/sgl/device/helpers.h,sha256=_fw-83zSJ5nrHcxh4BNQyYfELCdr9RAT-jegF-_0VsE,945
|
107
|
+
sgl/include/sgl/device/framebuffer.h,sha256=4WYFniqUSjgFPZiWAYNBytSYGdTqb6RthTmR5PzOoYk,2549
|
108
|
+
sgl/include/sgl/device/python/cursor_utils.h,sha256=4UPEfhbg1LuclfU4RPqSx2qUgU3s1pVg2U34oZE6W_U,33734
|
109
|
+
sgl/include/sgl/ui/ui.h,sha256=h41XjfBxZiGtGyoAV9AtYNXgNntJHS5pQ0wPL3D_OeQ,1549
|
110
|
+
sgl/include/sgl/ui/fwd.h,sha256=jrArAxRUFszUbtbC42YJT72wGcCVXEvNvsio3B4XQ4o,450
|
111
|
+
sgl/include/sgl/ui/widgets.h,sha256=H8kxf6a9tCpTG1VnTLi5uhnMIYgEcOaShMcXTKkHMIg,25256
|
112
|
+
sgl/include/sgl/ui/imgui_config.h,sha256=rgepgKgofP-y65pU2MPG_71TMxU3DKhIiMfO9rsE9hA,3803
|
113
|
+
sgl/platform/__init__.pyi,sha256=klLFQeeeRO4isZD_xs2qYzz0_0b4ZpoA6tYgBiNFFuY,2529
|
114
|
+
sgl/renderdoc/__init__.pyi,sha256=PRgB_3Dp3L1-WbKquI7kQou9Rgr0eSaz82QA5NUJDN8,1234
|
115
|
+
sgl/slangpy/__init__.pyi,sha256=027_CLQY7UORYX3GBaiNfTxF9y5WjjKcCUf3yauLN5w,6377
|
116
|
+
sgl/thread/__init__.pyi,sha256=PRdYXfFBKg8ia494-ydw9Xbh0fwVM30hZ70HtnhdoKM,89
|
117
|
+
sgl/ui/__init__.pyi,sha256=v469mk_jWBrCb1gaMylRiUjjx2oBcHVIVFc6vwzfO3w,29013
|
118
|
+
sgl/tev/__init__.pyi,sha256=GO-vYhUTYEuzEMWXWHzDW9tmVvBz1KtrmlwDkPC1Wx4,2656
|
119
|
+
sgl/shaders/sgl/math/ray.slang,sha256=0fpipzx_-FdXYy2xMREhMnpz6STs5CZzc88PX_UAnVM,663
|
120
|
+
sgl/shaders/sgl/math/constants.slang,sha256=jSZh-vZs_z6xT5gW6bIUfAFU_XCANMGeG6uZUFZw7H8,101
|
121
|
+
sgl/shaders/sgl/device/nvapi.slangh,sha256=H0Lgab94Bsos3jpT0-SiSL5cEpCGdHdBOvcDdlSXpqQ,143
|
122
|
+
sgl/shaders/sgl/device/nvapi.slang,sha256=rAPjLm6uOVBUKqvkEda4iIh-y452zLQOddp8QV0yxHo,99
|
123
|
+
sgl/shaders/sgl/device/blit.slang,sha256=OY-hLbGYiDoxgAJKVjIMHXRQ0jQWzdWAEmpT8PLHyhY,2224
|
124
|
+
sgl/shaders/sgl/device/print.slang,sha256=MdRfIEYUHHnetRIFbQeYSy86n4i3tA6gOb9_qN4Thoc,16012
|
125
|
+
sgl/shaders/sgl/ui/imgui.slang,sha256=1LQCmicYSEPWfFfTQApe4NPqwOspFWj0gXme4YaoK24,1042
|
126
|
+
share/cmake/tevclient/tevclient-config.cmake,sha256=YEZjUu3HWvwk186nq27nFgNF1uHC9cQy9IHSyw1Ip6k,4001
|
127
|
+
share/cmake/tevclient/tevclient-config-release.cmake,sha256=tOJNo2Y9e2N6ukWLX6OIu5gKXf2eAVFJznHdUa20L5w,879
|
128
|
+
include/tevclient.h,sha256=ugHEEz-G3F-ihRnG4YEfeCe_SGrVfptHcU35HpN-22Y,11255
|
129
|
+
nv_sgl-0.6.0.dist-info/METADATA,sha256=UC3v-P-soKKGBEGYYtGSkDk3mjMnzD1iuuWxfljaCGg,468
|
130
|
+
nv_sgl-0.6.0.dist-info/RECORD,,
|
131
|
+
nv_sgl-0.6.0.dist-info/top_level.txt,sha256=5d6qg3XBq7bfsiO6EIzqSlTIYkQoXf76bXdCsiQwOxU,4
|
132
|
+
nv_sgl-0.6.0.dist-info/WHEEL,sha256=2Ipf6Cs3OSBO_WUqVpBCGTZbPJtjI10rcp3RBVCWvJo,152
|
133
|
+
nv_sgl-0.6.0.dist-info/LICENSE,sha256=tzjZi3clQUtTTBGaxmEmh2uMvUCqiuSCENsZBxS4FnA,1490
|
@@ -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
|