robotpy-cscore 2025.3.2.3__cp313-cp313-win_amd64.whl → 2027.0.0a3__cp313-cp313-win_amd64.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of robotpy-cscore might be problematic. Click here for more details.
- cscore/__init__.py +1 -1
- cscore/__main__.py +1 -19
- cscore/_cscore.cp313-win_amd64.lib +0 -0
- cscore/_cscore.cp313-win_amd64.pyd +0 -0
- cscore/_cscore.pyi +11 -52
- cscore/imagewriter.py +2 -2
- cscore/py.typed +0 -0
- cscore/src/main.cpp +1 -11
- cscore/version.py +1 -1
- {robotpy_cscore-2025.3.2.3.dist-info → robotpy_cscore-2027.0.0a3.dist-info}/METADATA +4 -4
- {robotpy_cscore-2025.3.2.3.dist-info → robotpy_cscore-2027.0.0a3.dist-info}/RECORD +14 -13
- {robotpy_cscore-2025.3.2.3.dist-info → robotpy_cscore-2027.0.0a3.dist-info}/WHEEL +0 -0
- {robotpy_cscore-2025.3.2.3.dist-info → robotpy_cscore-2027.0.0a3.dist-info}/entry_points.txt +0 -0
- {robotpy_cscore-2025.3.2.3.dist-info → robotpy_cscore-2027.0.0a3.dist-info}/licenses/LICENSE +0 -0
cscore/__init__.py
CHANGED
cscore/__main__.py
CHANGED
|
@@ -82,13 +82,6 @@ def main():
|
|
|
82
82
|
nt_server_group.add_argument(
|
|
83
83
|
"--team", help="Team number to specify robot", type=int
|
|
84
84
|
)
|
|
85
|
-
parser.add_argument(
|
|
86
|
-
"--nt-protocol",
|
|
87
|
-
choices=[3, 4],
|
|
88
|
-
type=int,
|
|
89
|
-
help="NetworkTables protocol",
|
|
90
|
-
default=4,
|
|
91
|
-
)
|
|
92
85
|
parser.add_argument(
|
|
93
86
|
"--nt-identity", default="cscore", help="NetworkTables identity"
|
|
94
87
|
)
|
|
@@ -118,10 +111,7 @@ def main():
|
|
|
118
111
|
else:
|
|
119
112
|
ntinst.setServer(args.robot)
|
|
120
113
|
|
|
121
|
-
|
|
122
|
-
ntinst.startClient3(args.nt_identity)
|
|
123
|
-
else:
|
|
124
|
-
ntinst.startClient4(args.nt_identity)
|
|
114
|
+
ntinst.startClient(args.nt_identity)
|
|
125
115
|
|
|
126
116
|
# If stdin is a pipe, then die when the pipe goes away
|
|
127
117
|
# -> this allows us to detect if a parent process exits
|
|
@@ -159,12 +149,4 @@ def main():
|
|
|
159
149
|
|
|
160
150
|
|
|
161
151
|
if __name__ == "__main__":
|
|
162
|
-
# Setup wpi::now on roborio when executed as __main__
|
|
163
|
-
try:
|
|
164
|
-
from ._cscore import _setupWpiNow # type: ignore
|
|
165
|
-
|
|
166
|
-
_setupWpiNow()
|
|
167
|
-
except ImportError:
|
|
168
|
-
pass
|
|
169
|
-
|
|
170
152
|
main()
|
|
Binary file
|
|
Binary file
|
cscore/_cscore.pyi
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
from __future__ import annotations
|
|
2
|
+
import collections.abc
|
|
2
3
|
import numpy
|
|
3
4
|
import typing
|
|
4
5
|
import wpiutil
|
|
5
6
|
import wpiutil._wpiutil
|
|
6
|
-
__all__ = ['AxisCamera', 'CameraServer', 'CvSink', 'CvSource', 'HttpCamera', 'ImageSink', 'ImageSource', 'MjpegServer', 'RawEvent', 'UsbCamera', 'UsbCameraInfo', 'VideoCamera', 'VideoEvent', 'VideoListener', 'VideoMode', 'VideoProperty', 'VideoSink', 'VideoSource', 'runMainRunLoop', 'runMainRunLoopTimeout', 'stopMainRunLoop']
|
|
7
|
+
__all__: list[str] = ['AxisCamera', 'CameraServer', 'CvSink', 'CvSource', 'HttpCamera', 'ImageSink', 'ImageSource', 'MjpegServer', 'RawEvent', 'UsbCamera', 'UsbCameraInfo', 'VideoCamera', 'VideoEvent', 'VideoListener', 'VideoMode', 'VideoProperty', 'VideoSink', 'VideoSource', 'runMainRunLoop', 'runMainRunLoopTimeout', 'stopMainRunLoop']
|
|
7
8
|
class AxisCamera(HttpCamera):
|
|
8
9
|
"""
|
|
9
10
|
A source that represents an Axis IP camera.
|
|
@@ -50,52 +51,6 @@ class CameraServer:
|
|
|
50
51
|
"""
|
|
51
52
|
kBasePort: typing.ClassVar[int] = 1181
|
|
52
53
|
@staticmethod
|
|
53
|
-
@typing.overload
|
|
54
|
-
def addAxisCamera(host: str) -> AxisCamera:
|
|
55
|
-
"""
|
|
56
|
-
Adds an Axis IP camera.
|
|
57
|
-
|
|
58
|
-
This overload calls AddAxisCamera() with name "Axis Camera".
|
|
59
|
-
|
|
60
|
-
:deprecated: Call StartAutomaticCapture with a HttpCamera instead.
|
|
61
|
-
|
|
62
|
-
:param host: Camera host IP or DNS name (e.g. "10.x.y.11")
|
|
63
|
-
"""
|
|
64
|
-
@staticmethod
|
|
65
|
-
@typing.overload
|
|
66
|
-
def addAxisCamera(hosts: list[str]) -> AxisCamera:
|
|
67
|
-
"""
|
|
68
|
-
Adds an Axis IP camera.
|
|
69
|
-
|
|
70
|
-
This overload calls AddAxisCamera() with name "Axis Camera".
|
|
71
|
-
|
|
72
|
-
:deprecated: Call StartAutomaticCapture with a HttpCamera instead.
|
|
73
|
-
|
|
74
|
-
:param hosts: Array of Camera host IPs/DNS names
|
|
75
|
-
"""
|
|
76
|
-
@staticmethod
|
|
77
|
-
@typing.overload
|
|
78
|
-
def addAxisCamera(name: str, host: str) -> AxisCamera:
|
|
79
|
-
"""
|
|
80
|
-
Adds an Axis IP camera.
|
|
81
|
-
|
|
82
|
-
:deprecated: Call StartAutomaticCapture with a HttpCamera instead.
|
|
83
|
-
|
|
84
|
-
:param name: The name to give the camera
|
|
85
|
-
:param host: Camera host IP or DNS name (e.g. "10.x.y.11")
|
|
86
|
-
"""
|
|
87
|
-
@staticmethod
|
|
88
|
-
@typing.overload
|
|
89
|
-
def addAxisCamera(name: str, hosts: list[str]) -> AxisCamera:
|
|
90
|
-
"""
|
|
91
|
-
Adds an Axis IP camera.
|
|
92
|
-
|
|
93
|
-
:deprecated: Call StartAutomaticCapture with a HttpCamera instead.
|
|
94
|
-
|
|
95
|
-
:param name: The name to give the camera
|
|
96
|
-
:param hosts: Array of Camera host IPs/DNS names
|
|
97
|
-
"""
|
|
98
|
-
@staticmethod
|
|
99
54
|
def addCamera(camera: VideoSource) -> None:
|
|
100
55
|
"""
|
|
101
56
|
Adds an already created camera.
|
|
@@ -778,7 +733,7 @@ class UsbCameraInfo:
|
|
|
778
733
|
Other path aliases to device (e.g. '/dev/v4l/by-id/...' etc on Linux)
|
|
779
734
|
"""
|
|
780
735
|
@otherPaths.setter
|
|
781
|
-
def otherPaths(self, arg0:
|
|
736
|
+
def otherPaths(self, arg0: collections.abc.Sequence[str]) -> None:
|
|
782
737
|
...
|
|
783
738
|
@property
|
|
784
739
|
def path(self) -> str:
|
|
@@ -923,7 +878,7 @@ class VideoListener:
|
|
|
923
878
|
def __init__(self) -> None:
|
|
924
879
|
...
|
|
925
880
|
@typing.overload
|
|
926
|
-
def __init__(self, callback:
|
|
881
|
+
def __init__(self, callback: collections.abc.Callable[[VideoEvent], None], eventMask: typing.SupportsInt, immediateNotify: bool) -> None:
|
|
927
882
|
"""
|
|
928
883
|
Create an event listener.
|
|
929
884
|
|
|
@@ -1645,12 +1600,16 @@ class VideoSource:
|
|
|
1645
1600
|
|
|
1646
1601
|
:returns: True if set successfully
|
|
1647
1602
|
"""
|
|
1648
|
-
def _setLogger(func:
|
|
1603
|
+
def _setLogger(func: collections.abc.Callable[[typing.SupportsInt, str, typing.SupportsInt, str], None], min_level: typing.SupportsInt) -> None:
|
|
1649
1604
|
...
|
|
1650
1605
|
def runMainRunLoop() -> None:
|
|
1651
1606
|
...
|
|
1652
|
-
def runMainRunLoopTimeout(
|
|
1653
|
-
|
|
1607
|
+
def runMainRunLoopTimeout(timeout: typing.SupportsFloat) -> int:
|
|
1608
|
+
"""
|
|
1609
|
+
Runs main run loop with timeout.
|
|
1610
|
+
|
|
1611
|
+
:param timeout: Timeout in seconds.
|
|
1612
|
+
"""
|
|
1654
1613
|
def stopMainRunLoop() -> None:
|
|
1655
1614
|
...
|
|
1656
1615
|
_cleanup: typing.Any # value = <capsule object>
|
cscore/imagewriter.py
CHANGED
|
@@ -104,7 +104,7 @@ class ImageWriter:
|
|
|
104
104
|
if self._location is None:
|
|
105
105
|
# This assures that we only log when a USB memory stick is plugged in
|
|
106
106
|
if not os.path.exists(self.location_root):
|
|
107
|
-
raise
|
|
107
|
+
raise OSError(
|
|
108
108
|
"Logging disabled, %s does not exist" % self.location_root
|
|
109
109
|
)
|
|
110
110
|
|
|
@@ -139,7 +139,7 @@ class ImageWriter:
|
|
|
139
139
|
|
|
140
140
|
last = now
|
|
141
141
|
|
|
142
|
-
except
|
|
142
|
+
except OSError as e:
|
|
143
143
|
logger.error("Error logging images: %s", e)
|
|
144
144
|
|
|
145
145
|
logger.warn("Storage thread exited")
|
cscore/py.typed
ADDED
|
File without changes
|
cscore/src/main.cpp
CHANGED
|
@@ -3,12 +3,6 @@
|
|
|
3
3
|
|
|
4
4
|
#include "cscore_cpp.h"
|
|
5
5
|
|
|
6
|
-
#ifdef __FRC_ROBORIO__
|
|
7
|
-
extern "C" {
|
|
8
|
-
void WPI_Impl_SetupNowUseDefaultOnRio(void);
|
|
9
|
-
}
|
|
10
|
-
#endif
|
|
11
|
-
|
|
12
6
|
SEMIWRAP_PYBIND11_MODULE(m) {
|
|
13
7
|
initWrapper(m);
|
|
14
8
|
|
|
@@ -22,8 +16,4 @@ SEMIWRAP_PYBIND11_MODULE(m) {
|
|
|
22
16
|
CS_Shutdown();
|
|
23
17
|
});
|
|
24
18
|
m.add_object("_cleanup", cleanup);
|
|
25
|
-
|
|
26
|
-
#ifdef __FRC_ROBORIO__
|
|
27
|
-
m.def("_setupWpiNow", WPI_Impl_SetupNowUseDefaultOnRio);
|
|
28
|
-
#endif
|
|
29
|
-
}
|
|
19
|
+
}
|
cscore/version.py
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: robotpy-cscore
|
|
3
|
-
Version:
|
|
3
|
+
Version: 2027.0.0a3
|
|
4
4
|
Summary: RobotPy bindings for cscore image processing library
|
|
5
5
|
Project-URL: Source code, https://github.com/robotpy/mostrobotpy
|
|
6
6
|
Author-email: RobotPy Development Team <robotpy@googlegroups.com>
|
|
7
7
|
License-Expression: BSD-3-Clause
|
|
8
8
|
License-File: LICENSE
|
|
9
|
-
Requires-Dist: pyntcore==
|
|
10
|
-
Requires-Dist: robotpy-wpinet==
|
|
11
|
-
Requires-Dist: robotpy-wpiutil==
|
|
9
|
+
Requires-Dist: pyntcore==2027.0.0a3
|
|
10
|
+
Requires-Dist: robotpy-wpinet==2027.0.0a3
|
|
11
|
+
Requires-Dist: robotpy-wpiutil==2027.0.0a3
|
|
@@ -1,18 +1,19 @@
|
|
|
1
|
-
cscore/__init__.py,sha256=
|
|
2
|
-
cscore/__main__.py,sha256=
|
|
1
|
+
cscore/__init__.py,sha256=2KPIpDfsggg3MteQbYPSO_mU5j6HI1MsCUTaBuCRqus,1115
|
|
2
|
+
cscore/__main__.py,sha256=77vxHVW5oOZ_b7N29bCeg1rxbEAG214GDL0OzqkXceI,4136
|
|
3
3
|
cscore/_logging.py,sha256=uv1Shlu49aPgQpRn5yD2ybT4N8ewJS3qUFOn8YTffwg,333
|
|
4
4
|
cscore/grip.py,sha256=qC6MbWvVllpnnsm10f31gqq4_PMWI_G9GKt3PfOaUpo,1042
|
|
5
|
-
cscore/imagewriter.py,sha256=
|
|
6
|
-
cscore/
|
|
5
|
+
cscore/imagewriter.py,sha256=qJcokzyD_Dd2IT7IuNdrT-vLwRg5IVyR_pj7m94sKt8,4537
|
|
6
|
+
cscore/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
7
|
+
cscore/version.py,sha256=WkUEqhrEcOfbZzc0XgtzdGbqHNUvbdcCzyKcatdd9uw,93
|
|
7
8
|
cscore/cvnp/README.md,sha256=197MQ-gG-pZf9YAUZqcHXLKk8au8WtxXrfFf7lnwHAo,1175
|
|
8
9
|
cscore/cvnp/cvnp.cpp,sha256=dE3cBEbVVXaEdULdxbzglt9elRCxhkcXjF69W_Ak6so,9216
|
|
9
10
|
cscore/cvnp/cvnp.h,sha256=021_w8fhAlnew4Nc88ypPAdT9sBPwPzXwGPRiGIY1_Q,14937
|
|
10
11
|
cscore/cvnp/cvnp_synonyms.cpp,sha256=ZpLZzmK5ZcrIgLfi_j7eJ_NXLNtcb8ymDWehYuVVHvo,2419
|
|
11
12
|
cscore/cvnp/cvnp_synonyms.h,sha256=MgU4yOOXMhGGLrKb06dX4nsQLtqkq_1gDE6ToR3mjFo,589
|
|
12
|
-
cscore/src/main.cpp,sha256=
|
|
13
|
-
cscore/_cscore.cp313-win_amd64.lib,sha256=
|
|
14
|
-
cscore/_cscore.cp313-win_amd64.pyd,sha256=
|
|
15
|
-
cscore/_cscore.pyi,sha256=
|
|
13
|
+
cscore/src/main.cpp,sha256=QKR7KwsRnJ0XHCsVryAizRB1tOIlqAeAWlVfsqovyN4,548
|
|
14
|
+
cscore/_cscore.cp313-win_amd64.lib,sha256=1KXOCpSLe81BVpB0R7RO0s-kez8Ti4zb4wNRiEs8jRA,2012
|
|
15
|
+
cscore/_cscore.cp313-win_amd64.pyd,sha256=_VpPTNVJWKXDMNKEvsdwAn8HqcmOx_dji6ie_GOHf9Q,3722752
|
|
16
|
+
cscore/_cscore.pyi,sha256=M3I59SSAMW9QrzcR_DqG5nWa0OtQADY_VgdacDldbXM,57376
|
|
16
17
|
cscore/_init__cscore.py,sha256=-yKGqNCAEqvHZ2kbrDeNapB2BcNMF76wBh4S1nKAU-4,156
|
|
17
18
|
cscore/cscore-casters.pc,sha256=_Mf7zY4dTBwzS0oX4z9YIIg-RCzCVh3AIs_tPVAjBo0,200
|
|
18
19
|
cscore/cscore-casters.pybind11.json,sha256=OhrB1ZkzUlHqaL5_tPr0hvifkq13qZZ2pbXVSprxLho,89
|
|
@@ -35,8 +36,8 @@ cscore/trampolines/cs__VideoProperty.hpp,sha256=AvE0I2LcbUvrXuPa28afi2bCSsjzj8bx
|
|
|
35
36
|
cscore/trampolines/cs__VideoSink.hpp,sha256=wdIqcz7YcJU4mMfgVuLyZg7Tedl2iaBxAPzv6siIUSI,181
|
|
36
37
|
cscore/trampolines/cs__VideoSource.hpp,sha256=tuOysl9BxSX0CSjRvFOqnhtPEH78wHGNVOK_dMkOjU8,183
|
|
37
38
|
cscore/trampolines/frc__CameraServer.hpp,sha256=HrifiweHkUgzh3snsOD0y0YIE8rE_ovyg2WFnKh2Xbk,248
|
|
38
|
-
robotpy_cscore-
|
|
39
|
-
robotpy_cscore-
|
|
40
|
-
robotpy_cscore-
|
|
41
|
-
robotpy_cscore-
|
|
42
|
-
robotpy_cscore-
|
|
39
|
+
robotpy_cscore-2027.0.0a3.dist-info/METADATA,sha256=R2tXv1rniJjWfY7wL8KhxFVNirlYu8ptrgkC4xMHMLw,432
|
|
40
|
+
robotpy_cscore-2027.0.0a3.dist-info/WHEEL,sha256=O7AUB0KTOxr_I9NzV8XaS6URMp4gsOs4mqmM2xDsrc0,97
|
|
41
|
+
robotpy_cscore-2027.0.0a3.dist-info/entry_points.txt,sha256=MTVv-2rIw51vWKhX4bVj581sChRKQvZp9WTUlp3mGiY,53
|
|
42
|
+
robotpy_cscore-2027.0.0a3.dist-info/licenses/LICENSE,sha256=eday0nHMlO9Rc7a6n0ONgNEe6N20r5xNWivVL5n-fN4,3138
|
|
43
|
+
robotpy_cscore-2027.0.0a3.dist-info/RECORD,,
|
|
File without changes
|
{robotpy_cscore-2025.3.2.3.dist-info → robotpy_cscore-2027.0.0a3.dist-info}/entry_points.txt
RENAMED
|
File without changes
|
{robotpy_cscore-2025.3.2.3.dist-info → robotpy_cscore-2027.0.0a3.dist-info}/licenses/LICENSE
RENAMED
|
File without changes
|