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.
Files changed (142) hide show
  1. include/tevclient.h +393 -0
  2. nv_sgl-0.6.0.dist-info/LICENSE +29 -0
  3. nv_sgl-0.6.0.dist-info/METADATA +21 -0
  4. nv_sgl-0.6.0.dist-info/RECORD +142 -0
  5. nv_sgl-0.6.0.dist-info/WHEEL +5 -0
  6. nv_sgl-0.6.0.dist-info/top_level.txt +1 -0
  7. sgl/__init__.py +15 -0
  8. sgl/__init__.pyi +6738 -0
  9. sgl/d3d12/D3D12Core.dll +0 -0
  10. sgl/d3d12/d3d12SDKLayers.dll +0 -0
  11. sgl/dxcompiler.dll +0 -0
  12. sgl/dxil.dll +0 -0
  13. sgl/gfx.dll +0 -0
  14. sgl/include/sgl/app/app.h +113 -0
  15. sgl/include/sgl/core/bitmap.h +302 -0
  16. sgl/include/sgl/core/crypto.h +89 -0
  17. sgl/include/sgl/core/data_type.h +46 -0
  18. sgl/include/sgl/core/dds_file.h +103 -0
  19. sgl/include/sgl/core/enum.h +201 -0
  20. sgl/include/sgl/core/error.h +161 -0
  21. sgl/include/sgl/core/file_stream.h +77 -0
  22. sgl/include/sgl/core/file_system_watcher.h +141 -0
  23. sgl/include/sgl/core/format.h +36 -0
  24. sgl/include/sgl/core/fwd.h +90 -0
  25. sgl/include/sgl/core/hash.h +45 -0
  26. sgl/include/sgl/core/input.h +522 -0
  27. sgl/include/sgl/core/logger.h +214 -0
  28. sgl/include/sgl/core/macros.h +184 -0
  29. sgl/include/sgl/core/maths.h +45 -0
  30. sgl/include/sgl/core/memory_mapped_file.h +112 -0
  31. sgl/include/sgl/core/memory_mapped_file_stream.h +32 -0
  32. sgl/include/sgl/core/memory_stream.h +74 -0
  33. sgl/include/sgl/core/object.h +683 -0
  34. sgl/include/sgl/core/platform.h +239 -0
  35. sgl/include/sgl/core/plugin.h +331 -0
  36. sgl/include/sgl/core/resolver.h +39 -0
  37. sgl/include/sgl/core/short_vector.h +141 -0
  38. sgl/include/sgl/core/static_vector.h +111 -0
  39. sgl/include/sgl/core/stream.h +54 -0
  40. sgl/include/sgl/core/string.h +276 -0
  41. sgl/include/sgl/core/struct.h +360 -0
  42. sgl/include/sgl/core/thread.h +28 -0
  43. sgl/include/sgl/core/timer.h +52 -0
  44. sgl/include/sgl/core/traits.h +15 -0
  45. sgl/include/sgl/core/type_utils.h +19 -0
  46. sgl/include/sgl/core/window.h +177 -0
  47. sgl/include/sgl/device/agility_sdk.h +24 -0
  48. sgl/include/sgl/device/blit.h +88 -0
  49. sgl/include/sgl/device/buffer_cursor.h +162 -0
  50. sgl/include/sgl/device/command.h +539 -0
  51. sgl/include/sgl/device/cuda_api.h +766 -0
  52. sgl/include/sgl/device/cuda_interop.h +39 -0
  53. sgl/include/sgl/device/cuda_utils.h +107 -0
  54. sgl/include/sgl/device/cursor_utils.h +129 -0
  55. sgl/include/sgl/device/device.h +668 -0
  56. sgl/include/sgl/device/device_resource.h +37 -0
  57. sgl/include/sgl/device/fence.h +91 -0
  58. sgl/include/sgl/device/formats.h +330 -0
  59. sgl/include/sgl/device/framebuffer.h +85 -0
  60. sgl/include/sgl/device/fwd.h +164 -0
  61. sgl/include/sgl/device/helpers.h +20 -0
  62. sgl/include/sgl/device/hot_reload.h +75 -0
  63. sgl/include/sgl/device/input_layout.h +74 -0
  64. sgl/include/sgl/device/kernel.h +69 -0
  65. sgl/include/sgl/device/memory_heap.h +155 -0
  66. sgl/include/sgl/device/native_formats.h +342 -0
  67. sgl/include/sgl/device/native_handle.h +73 -0
  68. sgl/include/sgl/device/native_handle_traits.h +65 -0
  69. sgl/include/sgl/device/pipeline.h +138 -0
  70. sgl/include/sgl/device/print.h +45 -0
  71. sgl/include/sgl/device/python/cursor_utils.h +853 -0
  72. sgl/include/sgl/device/query.h +52 -0
  73. sgl/include/sgl/device/raytracing.h +84 -0
  74. sgl/include/sgl/device/reflection.h +1254 -0
  75. sgl/include/sgl/device/resource.h +705 -0
  76. sgl/include/sgl/device/sampler.h +57 -0
  77. sgl/include/sgl/device/shader.h +516 -0
  78. sgl/include/sgl/device/shader_cursor.h +85 -0
  79. sgl/include/sgl/device/shader_object.h +94 -0
  80. sgl/include/sgl/device/shader_offset.h +67 -0
  81. sgl/include/sgl/device/shared_handle.h +12 -0
  82. sgl/include/sgl/device/slang_utils.h +54 -0
  83. sgl/include/sgl/device/swapchain.h +74 -0
  84. sgl/include/sgl/device/types.h +782 -0
  85. sgl/include/sgl/math/colorspace.h +56 -0
  86. sgl/include/sgl/math/constants.h +7 -0
  87. sgl/include/sgl/math/float16.h +146 -0
  88. sgl/include/sgl/math/matrix.h +6 -0
  89. sgl/include/sgl/math/matrix_math.h +746 -0
  90. sgl/include/sgl/math/matrix_types.h +207 -0
  91. sgl/include/sgl/math/python/primitivetype.h +33 -0
  92. sgl/include/sgl/math/quaternion.h +6 -0
  93. sgl/include/sgl/math/quaternion_math.h +484 -0
  94. sgl/include/sgl/math/quaternion_types.h +83 -0
  95. sgl/include/sgl/math/ray.h +47 -0
  96. sgl/include/sgl/math/scalar_math.h +249 -0
  97. sgl/include/sgl/math/scalar_types.h +107 -0
  98. sgl/include/sgl/math/vector.h +6 -0
  99. sgl/include/sgl/math/vector_math.h +1796 -0
  100. sgl/include/sgl/math/vector_types.h +336 -0
  101. sgl/include/sgl/python/nanobind.h +489 -0
  102. sgl/include/sgl/python/py_doc.h +11600 -0
  103. sgl/include/sgl/python/sgl_ext_pch.h +8 -0
  104. sgl/include/sgl/sgl.h +21 -0
  105. sgl/include/sgl/sgl_pch.h +6 -0
  106. sgl/include/sgl/stl/bit.h +377 -0
  107. sgl/include/sgl/tests/testing.h +54 -0
  108. sgl/include/sgl/ui/fwd.h +34 -0
  109. sgl/include/sgl/ui/imgui_config.h +43 -0
  110. sgl/include/sgl/ui/ui.h +71 -0
  111. sgl/include/sgl/ui/widgets.h +918 -0
  112. sgl/include/sgl/utils/python/slangpy.h +366 -0
  113. sgl/include/sgl/utils/renderdoc.h +50 -0
  114. sgl/include/sgl/utils/slangpy.h +153 -0
  115. sgl/include/sgl/utils/tev.h +93 -0
  116. sgl/include/sgl/utils/texture_loader.h +106 -0
  117. sgl/math/__init__.pyi +5083 -0
  118. sgl/platform/__init__.pyi +102 -0
  119. sgl/renderdoc/__init__.pyi +51 -0
  120. sgl/sgl.dll +0 -0
  121. sgl/sgl_ext.cp313-win_amd64.pyd +0 -0
  122. sgl/shaders/nvapi/nvHLSLExtns.h +2315 -0
  123. sgl/shaders/nvapi/nvHLSLExtnsInternal.h +758 -0
  124. sgl/shaders/nvapi/nvShaderExtnEnums.h +142 -0
  125. sgl/shaders/sgl/device/blit.slang +93 -0
  126. sgl/shaders/sgl/device/nvapi.slang +5 -0
  127. sgl/shaders/sgl/device/nvapi.slangh +7 -0
  128. sgl/shaders/sgl/device/print.slang +445 -0
  129. sgl/shaders/sgl/math/constants.slang +4 -0
  130. sgl/shaders/sgl/math/ray.slang +29 -0
  131. sgl/shaders/sgl/ui/imgui.slang +49 -0
  132. sgl/slang-glslang.dll +0 -0
  133. sgl/slang-llvm.dll +0 -0
  134. sgl/slang-rt.dll +0 -0
  135. sgl/slang.dll +0 -0
  136. sgl/slangpy/__init__.pyi +268 -0
  137. sgl/tev/__init__.pyi +108 -0
  138. sgl/tevclient.lib +0 -0
  139. sgl/thread/__init__.pyi +4 -0
  140. sgl/ui/__init__.pyi +1118 -0
  141. share/cmake/tevclient/tevclient-config-release.cmake +19 -0
  142. 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 &center, 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 &center, 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 &center, 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,5 @@
1
+ Wheel-Version: 1.0
2
+ Generator: setuptools (75.8.0)
3
+ Root-Is-Purelib: false
4
+ Tag: cp313-cp313-win_amd64
5
+
@@ -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