ni.panels.v1.proto 0.1.0.dev0__tar.gz

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.
@@ -0,0 +1,54 @@
1
+ Metadata-Version: 2.1
2
+ Name: ni.panels.v1.proto
3
+ Version: 0.1.0.dev0
4
+ Summary: Protobuf generated code for the ni.panels.v1 gRPC API
5
+ Home-page: https://github.com/ni/ni-apis-python
6
+ License: MIT
7
+ Keywords: ni-apis,protobuf,panels
8
+ Author: NI
9
+ Author-email: opensource@ni.com
10
+ Maintainer: Brad Keryan
11
+ Maintainer-email: brad.keryan@emerson.com
12
+ Requires-Python: >=3.9,<4.0
13
+ Classifier: Development Status :: 3 - Alpha
14
+ Classifier: Intended Audience :: Developers
15
+ Classifier: Intended Audience :: Manufacturing
16
+ Classifier: Intended Audience :: Science/Research
17
+ Classifier: License :: OSI Approved :: MIT License
18
+ Classifier: Operating System :: Microsoft :: Windows
19
+ Classifier: Operating System :: POSIX
20
+ Classifier: Programming Language :: Python :: 3
21
+ Classifier: Programming Language :: Python :: 3.9
22
+ Classifier: Programming Language :: Python :: 3.10
23
+ Classifier: Programming Language :: Python :: 3.11
24
+ Classifier: Programming Language :: Python :: 3.12
25
+ Classifier: Programming Language :: Python :: 3.13
26
+ Classifier: Programming Language :: Python :: Implementation :: CPython
27
+ Classifier: Programming Language :: Python :: Implementation :: PyPy
28
+ Requires-Dist: grpcio (>=1.49.0,<2.0)
29
+ Requires-Dist: nitypes (>=0.1.0dev3)
30
+ Requires-Dist: protobuf (>=4.21)
31
+ Project-URL: Repository, https://github.com/ni/ni-apis-python
32
+ Description-Content-Type: text/markdown
33
+
34
+ # Table of Contents
35
+
36
+ - [Table of Contents](#table-of-contents)
37
+ - [About](#about)
38
+ - [Operating System Support](#operating-system-support)
39
+ - [Python Version Support](#python-version-support)
40
+
41
+ # About
42
+
43
+ `ni.panels.v1.proto` is a Python package that provides Protobuf generated code for the [ni.panels.v1 gRPC API](https://github.com/ni/ni-apis/tree/main/ni/panels/v1).
44
+
45
+ NI created and supports this package.
46
+
47
+ ## Operating System Support
48
+
49
+ `ni.panels.v1.proto` supports Windows and Linux operating systems.
50
+
51
+ ## Python Version Support
52
+
53
+ `ni.panels.v1.proto` supports CPython 3.9+.
54
+
@@ -0,0 +1,20 @@
1
+ # Table of Contents
2
+
3
+ - [Table of Contents](#table-of-contents)
4
+ - [About](#about)
5
+ - [Operating System Support](#operating-system-support)
6
+ - [Python Version Support](#python-version-support)
7
+
8
+ # About
9
+
10
+ `ni.panels.v1.proto` is a Python package that provides Protobuf generated code for the [ni.panels.v1 gRPC API](https://github.com/ni/ni-apis/tree/main/ni/panels/v1).
11
+
12
+ NI created and supports this package.
13
+
14
+ ## Operating System Support
15
+
16
+ `ni.panels.v1.proto` supports Windows and Linux operating systems.
17
+
18
+ ## Python Version Support
19
+
20
+ `ni.panels.v1.proto` supports CPython 3.9+.
@@ -0,0 +1,97 @@
1
+ [tool.poetry]
2
+ name = "ni.panels.v1.proto"
3
+ version = "0.1.0-dev0"
4
+ license = "MIT"
5
+ description = "Protobuf generated code for the ni.panels.v1 gRPC API"
6
+ authors = ["NI <opensource@ni.com>"]
7
+ maintainers = [
8
+ "Brad Keryan <brad.keryan@emerson.com>",
9
+ "Joe Friedrichsen <joe.friedrichsen@emerson.com>",
10
+ ]
11
+ readme = "README.md"
12
+ repository = "https://github.com/ni/ni-apis-python"
13
+ keywords = ["ni-apis", "protobuf", "panels"]
14
+ classifiers = [
15
+ "Development Status :: 3 - Alpha",
16
+ "Intended Audience :: Developers",
17
+ "Intended Audience :: Manufacturing",
18
+ "Intended Audience :: Science/Research",
19
+ "License :: OSI Approved :: MIT License",
20
+ "Operating System :: Microsoft :: Windows",
21
+ "Operating System :: POSIX",
22
+ "Programming Language :: Python :: 3",
23
+ "Programming Language :: Python :: 3.9",
24
+ "Programming Language :: Python :: 3.10",
25
+ "Programming Language :: Python :: 3.11",
26
+ "Programming Language :: Python :: 3.12",
27
+ "Programming Language :: Python :: 3.13",
28
+ "Programming Language :: Python :: Implementation :: CPython",
29
+ "Programming Language :: Python :: Implementation :: PyPy",
30
+ ]
31
+ packages = [{include = "ni", from = "src"}]
32
+
33
+ [tool.poetry.dependencies]
34
+ python = "^3.9"
35
+ grpcio = {version=">=1.49.0,<2.0"}
36
+ protobuf = {version=">=4.21"}
37
+ nitypes = {version=">=0.1.0dev3", allow-prereleases=true}
38
+
39
+ [tool.poetry.group.dev.dependencies]
40
+ types-grpcio = ">=1.0"
41
+ types-protobuf = ">=4.21"
42
+
43
+ [tool.poetry.group.lint.dependencies]
44
+ bandit = { version = ">=1.7", extras = ["toml"] }
45
+ ni-python-styleguide = ">=0.4.1"
46
+ mypy = ">=1.0"
47
+ pyright = { version = ">=1.1.400", extras = ["nodejs"] }
48
+
49
+ [tool.poetry.group.test.dependencies]
50
+ pytest = ">=7.2"
51
+ pytest-cov = ">=4.0"
52
+ pytest-doctestplus = ">=1.4"
53
+ pytest-mock = ">=3.0"
54
+
55
+ [tool.poetry.group.docs]
56
+ optional = true
57
+
58
+ [tool.poetry.group.docs.dependencies]
59
+ # The latest Sphinx requires a recent Python version.
60
+ Sphinx = { version = ">=8.2", python = "^3.11" }
61
+ sphinx-rtd-theme = ">=1.0.0"
62
+ sphinx-autoapi = ">=1.8.4"
63
+ m2r2 = ">=0.3.2"
64
+ toml = ">=0.10.2"
65
+
66
+ [build-system]
67
+ requires = ["poetry-core>=1.8"]
68
+ build-backend = "poetry.core.masonry.api"
69
+
70
+
71
+ [tool.bandit]
72
+ skips = [
73
+ "B101", # assert_used
74
+ ]
75
+
76
+ [tool.ni-python-styleguide]
77
+ extend_exclude = "docs,*_pb2_grpc.py,*_pb2_grpc.pyi,*_pb2.py,*_pb2.pyi"
78
+
79
+ [tool.black]
80
+ extend-exclude = 'docs/|_pb2(_grpc)?\.(py|pyi)$'
81
+ line-length = 100
82
+
83
+ [tool.mypy]
84
+ mypy_path = "src"
85
+ files = "."
86
+ namespace_packages = true
87
+ strict = true
88
+ explicit_package_bases = true
89
+ exclude = ["docs"]
90
+
91
+ [tool.pyright]
92
+ include = ["src/", "tests/"]
93
+ exclude = ["**/*_pb2_grpc.py", "**/*_pb2_grpc.pyi", "**/*_pb2.py", "**/*_pb2.pyi"]
94
+
95
+ [tool.pytest.ini_options]
96
+ addopts = "--doctest-modules --doctest-plus --strict-markers"
97
+ testpaths = ["tests"]
@@ -0,0 +1 @@
1
+ """Package for ni.panels.v1."""
@@ -0,0 +1,53 @@
1
+ # -*- coding: utf-8 -*-
2
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
3
+ # source: ni/panels/v1/panel_service.proto
4
+ """Generated protocol buffer code."""
5
+ from google.protobuf.internal import builder as _builder
6
+ from google.protobuf import descriptor as _descriptor
7
+ from google.protobuf import descriptor_pool as _descriptor_pool
8
+ from google.protobuf import symbol_database as _symbol_database
9
+ # @@protoc_insertion_point(imports)
10
+
11
+ _sym_db = _symbol_database.Default()
12
+
13
+
14
+ from google.protobuf import any_pb2 as google_dot_protobuf_dot_any__pb2
15
+
16
+
17
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n ni/panels/v1/panel_service.proto\x12\x0cni.panels.v1\x1a\x19google/protobuf/any.proto\"X\n\x11StartPanelRequest\x12\x10\n\x08panel_id\x18\x01 \x01(\t\x12\x31\n\x13panel_configuration\x18\x02 \x01(\x0b\x32\x14.google.protobuf.Any\"\'\n\x12StartPanelResponse\x12\x11\n\tpanel_url\x18\x01 \x01(\t\"3\n\x10StopPanelRequest\x12\x10\n\x08panel_id\x18\x01 \x01(\t\x12\r\n\x05reset\x18\x02 \x01(\x08\"\x13\n\x11StopPanelResponse\"\x18\n\x16\x45numeratePanelsRequest\"J\n\x10PanelInformation\x12\x10\n\x08panel_id\x18\x01 \x01(\t\x12\x11\n\tpanel_url\x18\x02 \x01(\t\x12\x11\n\tvalue_ids\x18\x03 \x03(\t\"I\n\x17\x45numeratePanelsResponse\x12.\n\x06panels\x18\x01 \x03(\x0b\x32\x1e.ni.panels.v1.PanelInformation\"5\n\x0fGetValueRequest\x12\x10\n\x08panel_id\x18\x01 \x01(\t\x12\x10\n\x08value_id\x18\x02 \x01(\t\"7\n\x10GetValueResponse\x12#\n\x05value\x18\x01 \x01(\x0b\x32\x14.google.protobuf.Any\"8\n\x12TryGetValueRequest\x12\x10\n\x08panel_id\x18\x01 \x01(\t\x12\x10\n\x08value_id\x18\x02 \x01(\t\":\n\x13TryGetValueResponse\x12#\n\x05value\x18\x01 \x01(\x0b\x32\x14.google.protobuf.Any\"j\n\x0fSetValueRequest\x12\x10\n\x08panel_id\x18\x01 \x01(\t\x12\x10\n\x08value_id\x18\x02 \x01(\t\x12#\n\x05value\x18\x03 \x01(\x0b\x32\x14.google.protobuf.Any\x12\x0e\n\x06notify\x18\x04 \x01(\x08\"\x12\n\x10SetValueResponse2\xf7\x03\n\x0cPanelService\x12O\n\nStartPanel\x12\x1f.ni.panels.v1.StartPanelRequest\x1a .ni.panels.v1.StartPanelResponse\x12L\n\tStopPanel\x12\x1e.ni.panels.v1.StopPanelRequest\x1a\x1f.ni.panels.v1.StopPanelResponse\x12^\n\x0f\x45numeratePanels\x12$.ni.panels.v1.EnumeratePanelsRequest\x1a%.ni.panels.v1.EnumeratePanelsResponse\x12I\n\x08GetValue\x12\x1d.ni.panels.v1.GetValueRequest\x1a\x1e.ni.panels.v1.GetValueResponse\x12R\n\x0bTryGetValue\x12 .ni.panels.v1.TryGetValueRequest\x1a!.ni.panels.v1.TryGetValueResponse\x12I\n\x08SetValue\x12\x1d.ni.panels.v1.SetValueRequest\x1a\x1e.ni.panels.v1.SetValueResponseBu\n\x10\x63om.ni.panels.v1B\x0bPanelsProtoP\x01Z\x08panelsv1\xf8\x01\x01\xa2\x02\x04NIPS\xaa\x02\x1dNationalInstruments.Panels.V1\xca\x02\x0cNI\\Panels\\V1\xea\x02\x0eNI::Panels::V1b\x06proto3')
18
+
19
+ _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, globals())
20
+ _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'ni.panels.v1.panel_service_pb2', globals())
21
+ if _descriptor._USE_C_DESCRIPTORS == False:
22
+
23
+ DESCRIPTOR._options = None
24
+ DESCRIPTOR._serialized_options = b'\n\020com.ni.panels.v1B\013PanelsProtoP\001Z\010panelsv1\370\001\001\242\002\004NIPS\252\002\035NationalInstruments.Panels.V1\312\002\014NI\\Panels\\V1\352\002\016NI::Panels::V1'
25
+ _STARTPANELREQUEST._serialized_start=77
26
+ _STARTPANELREQUEST._serialized_end=165
27
+ _STARTPANELRESPONSE._serialized_start=167
28
+ _STARTPANELRESPONSE._serialized_end=206
29
+ _STOPPANELREQUEST._serialized_start=208
30
+ _STOPPANELREQUEST._serialized_end=259
31
+ _STOPPANELRESPONSE._serialized_start=261
32
+ _STOPPANELRESPONSE._serialized_end=280
33
+ _ENUMERATEPANELSREQUEST._serialized_start=282
34
+ _ENUMERATEPANELSREQUEST._serialized_end=306
35
+ _PANELINFORMATION._serialized_start=308
36
+ _PANELINFORMATION._serialized_end=382
37
+ _ENUMERATEPANELSRESPONSE._serialized_start=384
38
+ _ENUMERATEPANELSRESPONSE._serialized_end=457
39
+ _GETVALUEREQUEST._serialized_start=459
40
+ _GETVALUEREQUEST._serialized_end=512
41
+ _GETVALUERESPONSE._serialized_start=514
42
+ _GETVALUERESPONSE._serialized_end=569
43
+ _TRYGETVALUEREQUEST._serialized_start=571
44
+ _TRYGETVALUEREQUEST._serialized_end=627
45
+ _TRYGETVALUERESPONSE._serialized_start=629
46
+ _TRYGETVALUERESPONSE._serialized_end=687
47
+ _SETVALUEREQUEST._serialized_start=689
48
+ _SETVALUEREQUEST._serialized_end=795
49
+ _SETVALUERESPONSE._serialized_start=797
50
+ _SETVALUERESPONSE._serialized_end=815
51
+ _PANELSERVICE._serialized_start=818
52
+ _PANELSERVICE._serialized_end=1321
53
+ # @@protoc_insertion_point(module_scope)
@@ -0,0 +1,262 @@
1
+ """
2
+ @generated by mypy-protobuf. Do not edit manually!
3
+ isort:skip_file
4
+ """
5
+
6
+ import builtins
7
+ import collections.abc
8
+ import google.protobuf.any_pb2
9
+ import google.protobuf.descriptor
10
+ import google.protobuf.internal.containers
11
+ import google.protobuf.message
12
+ import typing
13
+
14
+ DESCRIPTOR: google.protobuf.descriptor.FileDescriptor
15
+
16
+ @typing.final
17
+ class StartPanelRequest(google.protobuf.message.Message):
18
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
19
+
20
+ PANEL_ID_FIELD_NUMBER: builtins.int
21
+ PANEL_CONFIGURATION_FIELD_NUMBER: builtins.int
22
+ panel_id: builtins.str
23
+ """Unique ID of the panel. Only alphanumeric characters and underscores are allowed."""
24
+ @property
25
+ def panel_configuration(self) -> google.protobuf.any_pb2.Any:
26
+ """Configuration for the panel, packed as a google.protobuf.Any"""
27
+
28
+ def __init__(
29
+ self,
30
+ *,
31
+ panel_id: builtins.str = ...,
32
+ panel_configuration: google.protobuf.any_pb2.Any | None = ...,
33
+ ) -> None: ...
34
+ def HasField(self, field_name: typing.Literal["panel_configuration", b"panel_configuration"]) -> builtins.bool: ...
35
+ def ClearField(self, field_name: typing.Literal["panel_configuration", b"panel_configuration", "panel_id", b"panel_id"]) -> None: ...
36
+
37
+ global___StartPanelRequest = StartPanelRequest
38
+
39
+ @typing.final
40
+ class StartPanelResponse(google.protobuf.message.Message):
41
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
42
+
43
+ PANEL_URL_FIELD_NUMBER: builtins.int
44
+ panel_url: builtins.str
45
+ """Location of the panel"""
46
+ def __init__(
47
+ self,
48
+ *,
49
+ panel_url: builtins.str = ...,
50
+ ) -> None: ...
51
+ def ClearField(self, field_name: typing.Literal["panel_url", b"panel_url"]) -> None: ...
52
+
53
+ global___StartPanelResponse = StartPanelResponse
54
+
55
+ @typing.final
56
+ class StopPanelRequest(google.protobuf.message.Message):
57
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
58
+
59
+ PANEL_ID_FIELD_NUMBER: builtins.int
60
+ RESET_FIELD_NUMBER: builtins.int
61
+ panel_id: builtins.str
62
+ """Unique ID of the panel. Only alphanumeric characters and underscores are allowed."""
63
+ reset: builtins.bool
64
+ """Reset all storage associated with panel"""
65
+ def __init__(
66
+ self,
67
+ *,
68
+ panel_id: builtins.str = ...,
69
+ reset: builtins.bool = ...,
70
+ ) -> None: ...
71
+ def ClearField(self, field_name: typing.Literal["panel_id", b"panel_id", "reset", b"reset"]) -> None: ...
72
+
73
+ global___StopPanelRequest = StopPanelRequest
74
+
75
+ @typing.final
76
+ class StopPanelResponse(google.protobuf.message.Message):
77
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
78
+
79
+ def __init__(
80
+ self,
81
+ ) -> None: ...
82
+
83
+ global___StopPanelResponse = StopPanelResponse
84
+
85
+ @typing.final
86
+ class EnumeratePanelsRequest(google.protobuf.message.Message):
87
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
88
+
89
+ def __init__(
90
+ self,
91
+ ) -> None: ...
92
+
93
+ global___EnumeratePanelsRequest = EnumeratePanelsRequest
94
+
95
+ @typing.final
96
+ class PanelInformation(google.protobuf.message.Message):
97
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
98
+
99
+ PANEL_ID_FIELD_NUMBER: builtins.int
100
+ PANEL_URL_FIELD_NUMBER: builtins.int
101
+ VALUE_IDS_FIELD_NUMBER: builtins.int
102
+ panel_id: builtins.str
103
+ """Unique ID of the panel"""
104
+ panel_url: builtins.str
105
+ """Location of the panel"""
106
+ @property
107
+ def value_ids(self) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
108
+ """IDs of all of the values associated with the panel"""
109
+
110
+ def __init__(
111
+ self,
112
+ *,
113
+ panel_id: builtins.str = ...,
114
+ panel_url: builtins.str = ...,
115
+ value_ids: collections.abc.Iterable[builtins.str] | None = ...,
116
+ ) -> None: ...
117
+ def ClearField(self, field_name: typing.Literal["panel_id", b"panel_id", "panel_url", b"panel_url", "value_ids", b"value_ids"]) -> None: ...
118
+
119
+ global___PanelInformation = PanelInformation
120
+
121
+ @typing.final
122
+ class EnumeratePanelsResponse(google.protobuf.message.Message):
123
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
124
+
125
+ PANELS_FIELD_NUMBER: builtins.int
126
+ @property
127
+ def panels(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___PanelInformation]:
128
+ """The list of panels available in the system"""
129
+
130
+ def __init__(
131
+ self,
132
+ *,
133
+ panels: collections.abc.Iterable[global___PanelInformation] | None = ...,
134
+ ) -> None: ...
135
+ def ClearField(self, field_name: typing.Literal["panels", b"panels"]) -> None: ...
136
+
137
+ global___EnumeratePanelsResponse = EnumeratePanelsResponse
138
+
139
+ @typing.final
140
+ class GetValueRequest(google.protobuf.message.Message):
141
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
142
+
143
+ PANEL_ID_FIELD_NUMBER: builtins.int
144
+ VALUE_ID_FIELD_NUMBER: builtins.int
145
+ panel_id: builtins.str
146
+ """Unique ID of the panel. Only alphanumeric characters and underscores are allowed."""
147
+ value_id: builtins.str
148
+ """Unique ID of value. Only alphanumeric characters and underscores are allowed."""
149
+ def __init__(
150
+ self,
151
+ *,
152
+ panel_id: builtins.str = ...,
153
+ value_id: builtins.str = ...,
154
+ ) -> None: ...
155
+ def ClearField(self, field_name: typing.Literal["panel_id", b"panel_id", "value_id", b"value_id"]) -> None: ...
156
+
157
+ global___GetValueRequest = GetValueRequest
158
+
159
+ @typing.final
160
+ class GetValueResponse(google.protobuf.message.Message):
161
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
162
+
163
+ VALUE_FIELD_NUMBER: builtins.int
164
+ @property
165
+ def value(self) -> google.protobuf.any_pb2.Any:
166
+ """The value, packed as a google.protobuf.Any.
167
+ Only types from google/protobuf/wrappers.proto and the ni.protobuf.types package are allowed.
168
+ """
169
+
170
+ def __init__(
171
+ self,
172
+ *,
173
+ value: google.protobuf.any_pb2.Any | None = ...,
174
+ ) -> None: ...
175
+ def HasField(self, field_name: typing.Literal["value", b"value"]) -> builtins.bool: ...
176
+ def ClearField(self, field_name: typing.Literal["value", b"value"]) -> None: ...
177
+
178
+ global___GetValueResponse = GetValueResponse
179
+
180
+ @typing.final
181
+ class TryGetValueRequest(google.protobuf.message.Message):
182
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
183
+
184
+ PANEL_ID_FIELD_NUMBER: builtins.int
185
+ VALUE_ID_FIELD_NUMBER: builtins.int
186
+ panel_id: builtins.str
187
+ """Unique ID of the panel. Only alphanumeric characters and underscores are allowed."""
188
+ value_id: builtins.str
189
+ """Unique ID of value. Only alphanumeric characters and underscores are allowed."""
190
+ def __init__(
191
+ self,
192
+ *,
193
+ panel_id: builtins.str = ...,
194
+ value_id: builtins.str = ...,
195
+ ) -> None: ...
196
+ def ClearField(self, field_name: typing.Literal["panel_id", b"panel_id", "value_id", b"value_id"]) -> None: ...
197
+
198
+ global___TryGetValueRequest = TryGetValueRequest
199
+
200
+ @typing.final
201
+ class TryGetValueResponse(google.protobuf.message.Message):
202
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
203
+
204
+ VALUE_FIELD_NUMBER: builtins.int
205
+ @property
206
+ def value(self) -> google.protobuf.any_pb2.Any:
207
+ """The value (if it was found), packed as a google.protobuf.Any.
208
+ Only types from google/protobuf/wrappers.proto and the ni.protobuf.types package are allowed.
209
+ """
210
+
211
+ def __init__(
212
+ self,
213
+ *,
214
+ value: google.protobuf.any_pb2.Any | None = ...,
215
+ ) -> None: ...
216
+ def HasField(self, field_name: typing.Literal["value", b"value"]) -> builtins.bool: ...
217
+ def ClearField(self, field_name: typing.Literal["value", b"value"]) -> None: ...
218
+
219
+ global___TryGetValueResponse = TryGetValueResponse
220
+
221
+ @typing.final
222
+ class SetValueRequest(google.protobuf.message.Message):
223
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
224
+
225
+ PANEL_ID_FIELD_NUMBER: builtins.int
226
+ VALUE_ID_FIELD_NUMBER: builtins.int
227
+ VALUE_FIELD_NUMBER: builtins.int
228
+ NOTIFY_FIELD_NUMBER: builtins.int
229
+ panel_id: builtins.str
230
+ """Unique ID of the panel. Only alphanumeric characters and underscores are allowed."""
231
+ value_id: builtins.str
232
+ """Unique ID of the value. Only alphanumeric characters and underscores are allowed."""
233
+ notify: builtins.bool
234
+ """Notify other clients of this new value"""
235
+ @property
236
+ def value(self) -> google.protobuf.any_pb2.Any:
237
+ """The value, packed as a google.protobuf.Any.
238
+ Only types from google/protobuf/wrappers.proto and the ni.protobuf.types package are allowed.
239
+ """
240
+
241
+ def __init__(
242
+ self,
243
+ *,
244
+ panel_id: builtins.str = ...,
245
+ value_id: builtins.str = ...,
246
+ value: google.protobuf.any_pb2.Any | None = ...,
247
+ notify: builtins.bool = ...,
248
+ ) -> None: ...
249
+ def HasField(self, field_name: typing.Literal["value", b"value"]) -> builtins.bool: ...
250
+ def ClearField(self, field_name: typing.Literal["notify", b"notify", "panel_id", b"panel_id", "value", b"value", "value_id", b"value_id"]) -> None: ...
251
+
252
+ global___SetValueRequest = SetValueRequest
253
+
254
+ @typing.final
255
+ class SetValueResponse(google.protobuf.message.Message):
256
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
257
+
258
+ def __init__(
259
+ self,
260
+ ) -> None: ...
261
+
262
+ global___SetValueResponse = SetValueResponse
@@ -0,0 +1,264 @@
1
+ # Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT!
2
+ """Client and server classes corresponding to protobuf-defined services."""
3
+ import grpc
4
+
5
+ from ni.panels.v1 import panel_service_pb2 as ni_dot_panels_dot_v1_dot_panel__service__pb2
6
+
7
+
8
+ class PanelServiceStub(object):
9
+ """Service interface for interacting with NI panels
10
+ """
11
+
12
+ def __init__(self, channel):
13
+ """Constructor.
14
+
15
+ Args:
16
+ channel: A grpc.Channel.
17
+ """
18
+ self.StartPanel = channel.unary_unary(
19
+ '/ni.panels.v1.PanelService/StartPanel',
20
+ request_serializer=ni_dot_panels_dot_v1_dot_panel__service__pb2.StartPanelRequest.SerializeToString,
21
+ response_deserializer=ni_dot_panels_dot_v1_dot_panel__service__pb2.StartPanelResponse.FromString,
22
+ )
23
+ self.StopPanel = channel.unary_unary(
24
+ '/ni.panels.v1.PanelService/StopPanel',
25
+ request_serializer=ni_dot_panels_dot_v1_dot_panel__service__pb2.StopPanelRequest.SerializeToString,
26
+ response_deserializer=ni_dot_panels_dot_v1_dot_panel__service__pb2.StopPanelResponse.FromString,
27
+ )
28
+ self.EnumeratePanels = channel.unary_unary(
29
+ '/ni.panels.v1.PanelService/EnumeratePanels',
30
+ request_serializer=ni_dot_panels_dot_v1_dot_panel__service__pb2.EnumeratePanelsRequest.SerializeToString,
31
+ response_deserializer=ni_dot_panels_dot_v1_dot_panel__service__pb2.EnumeratePanelsResponse.FromString,
32
+ )
33
+ self.GetValue = channel.unary_unary(
34
+ '/ni.panels.v1.PanelService/GetValue',
35
+ request_serializer=ni_dot_panels_dot_v1_dot_panel__service__pb2.GetValueRequest.SerializeToString,
36
+ response_deserializer=ni_dot_panels_dot_v1_dot_panel__service__pb2.GetValueResponse.FromString,
37
+ )
38
+ self.TryGetValue = channel.unary_unary(
39
+ '/ni.panels.v1.PanelService/TryGetValue',
40
+ request_serializer=ni_dot_panels_dot_v1_dot_panel__service__pb2.TryGetValueRequest.SerializeToString,
41
+ response_deserializer=ni_dot_panels_dot_v1_dot_panel__service__pb2.TryGetValueResponse.FromString,
42
+ )
43
+ self.SetValue = channel.unary_unary(
44
+ '/ni.panels.v1.PanelService/SetValue',
45
+ request_serializer=ni_dot_panels_dot_v1_dot_panel__service__pb2.SetValueRequest.SerializeToString,
46
+ response_deserializer=ni_dot_panels_dot_v1_dot_panel__service__pb2.SetValueResponse.FromString,
47
+ )
48
+
49
+
50
+ class PanelServiceServicer(object):
51
+ """Service interface for interacting with NI panels
52
+ """
53
+
54
+ def StartPanel(self, request, context):
55
+ """Start a panel using the provided configuration (or connect to if it has already been started)
56
+ Status Codes for errors:
57
+ - INVALID_ARGUMENT:
58
+ - The panel identifier contains invalid characters.
59
+ - The panel configuration has an invalid argument.
60
+ - NOT_FOUND:
61
+ - The panel configuration includes a file that was not found.
62
+ """
63
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
64
+ context.set_details('Method not implemented!')
65
+ raise NotImplementedError('Method not implemented!')
66
+
67
+ def StopPanel(self, request, context):
68
+ """Stop a panel
69
+ Status Codes for errors:
70
+ - INVALID_ARGUMENT:
71
+ - The panel identifier contains invalid characters.
72
+ """
73
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
74
+ context.set_details('Method not implemented!')
75
+ raise NotImplementedError('Method not implemented!')
76
+
77
+ def EnumeratePanels(self, request, context):
78
+ """Enumerate the panels available in the system, including information about the state of the panels and what values they have.
79
+ Status Codes for errors:
80
+ """
81
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
82
+ context.set_details('Method not implemented!')
83
+ raise NotImplementedError('Method not implemented!')
84
+
85
+ def GetValue(self, request, context):
86
+ """Get a value for a control on the panel
87
+ Status Codes for errors:
88
+ - INVALID_ARGUMENT:
89
+ - The panel identifier contains invalid characters.
90
+ - The value identifier contains invalid characters.
91
+ - NOT_FOUND:
92
+ - The value with the specified identifier was not found.
93
+ """
94
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
95
+ context.set_details('Method not implemented!')
96
+ raise NotImplementedError('Method not implemented!')
97
+
98
+ def TryGetValue(self, request, context):
99
+ """Try to get a value for a control on the panel
100
+ Status Codes for errors:
101
+ - INVALID_ARGUMENT:
102
+ - The panel identifier contains invalid characters.
103
+ - The value identifier contains invalid characters.
104
+ """
105
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
106
+ context.set_details('Method not implemented!')
107
+ raise NotImplementedError('Method not implemented!')
108
+
109
+ def SetValue(self, request, context):
110
+ """Set a value for a control on the panel
111
+ Status Codes for errors:
112
+ - INVALID_ARGUMENT:
113
+ - The panel identifier contains invalid characters.
114
+ - The value identifier contains invalid characters.
115
+ """
116
+ context.set_code(grpc.StatusCode.UNIMPLEMENTED)
117
+ context.set_details('Method not implemented!')
118
+ raise NotImplementedError('Method not implemented!')
119
+
120
+
121
+ def add_PanelServiceServicer_to_server(servicer, server):
122
+ rpc_method_handlers = {
123
+ 'StartPanel': grpc.unary_unary_rpc_method_handler(
124
+ servicer.StartPanel,
125
+ request_deserializer=ni_dot_panels_dot_v1_dot_panel__service__pb2.StartPanelRequest.FromString,
126
+ response_serializer=ni_dot_panels_dot_v1_dot_panel__service__pb2.StartPanelResponse.SerializeToString,
127
+ ),
128
+ 'StopPanel': grpc.unary_unary_rpc_method_handler(
129
+ servicer.StopPanel,
130
+ request_deserializer=ni_dot_panels_dot_v1_dot_panel__service__pb2.StopPanelRequest.FromString,
131
+ response_serializer=ni_dot_panels_dot_v1_dot_panel__service__pb2.StopPanelResponse.SerializeToString,
132
+ ),
133
+ 'EnumeratePanels': grpc.unary_unary_rpc_method_handler(
134
+ servicer.EnumeratePanels,
135
+ request_deserializer=ni_dot_panels_dot_v1_dot_panel__service__pb2.EnumeratePanelsRequest.FromString,
136
+ response_serializer=ni_dot_panels_dot_v1_dot_panel__service__pb2.EnumeratePanelsResponse.SerializeToString,
137
+ ),
138
+ 'GetValue': grpc.unary_unary_rpc_method_handler(
139
+ servicer.GetValue,
140
+ request_deserializer=ni_dot_panels_dot_v1_dot_panel__service__pb2.GetValueRequest.FromString,
141
+ response_serializer=ni_dot_panels_dot_v1_dot_panel__service__pb2.GetValueResponse.SerializeToString,
142
+ ),
143
+ 'TryGetValue': grpc.unary_unary_rpc_method_handler(
144
+ servicer.TryGetValue,
145
+ request_deserializer=ni_dot_panels_dot_v1_dot_panel__service__pb2.TryGetValueRequest.FromString,
146
+ response_serializer=ni_dot_panels_dot_v1_dot_panel__service__pb2.TryGetValueResponse.SerializeToString,
147
+ ),
148
+ 'SetValue': grpc.unary_unary_rpc_method_handler(
149
+ servicer.SetValue,
150
+ request_deserializer=ni_dot_panels_dot_v1_dot_panel__service__pb2.SetValueRequest.FromString,
151
+ response_serializer=ni_dot_panels_dot_v1_dot_panel__service__pb2.SetValueResponse.SerializeToString,
152
+ ),
153
+ }
154
+ generic_handler = grpc.method_handlers_generic_handler(
155
+ 'ni.panels.v1.PanelService', rpc_method_handlers)
156
+ server.add_generic_rpc_handlers((generic_handler,))
157
+
158
+
159
+ # This class is part of an EXPERIMENTAL API.
160
+ class PanelService(object):
161
+ """Service interface for interacting with NI panels
162
+ """
163
+
164
+ @staticmethod
165
+ def StartPanel(request,
166
+ target,
167
+ options=(),
168
+ channel_credentials=None,
169
+ call_credentials=None,
170
+ insecure=False,
171
+ compression=None,
172
+ wait_for_ready=None,
173
+ timeout=None,
174
+ metadata=None):
175
+ return grpc.experimental.unary_unary(request, target, '/ni.panels.v1.PanelService/StartPanel',
176
+ ni_dot_panels_dot_v1_dot_panel__service__pb2.StartPanelRequest.SerializeToString,
177
+ ni_dot_panels_dot_v1_dot_panel__service__pb2.StartPanelResponse.FromString,
178
+ options, channel_credentials,
179
+ insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
180
+
181
+ @staticmethod
182
+ def StopPanel(request,
183
+ target,
184
+ options=(),
185
+ channel_credentials=None,
186
+ call_credentials=None,
187
+ insecure=False,
188
+ compression=None,
189
+ wait_for_ready=None,
190
+ timeout=None,
191
+ metadata=None):
192
+ return grpc.experimental.unary_unary(request, target, '/ni.panels.v1.PanelService/StopPanel',
193
+ ni_dot_panels_dot_v1_dot_panel__service__pb2.StopPanelRequest.SerializeToString,
194
+ ni_dot_panels_dot_v1_dot_panel__service__pb2.StopPanelResponse.FromString,
195
+ options, channel_credentials,
196
+ insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
197
+
198
+ @staticmethod
199
+ def EnumeratePanels(request,
200
+ target,
201
+ options=(),
202
+ channel_credentials=None,
203
+ call_credentials=None,
204
+ insecure=False,
205
+ compression=None,
206
+ wait_for_ready=None,
207
+ timeout=None,
208
+ metadata=None):
209
+ return grpc.experimental.unary_unary(request, target, '/ni.panels.v1.PanelService/EnumeratePanels',
210
+ ni_dot_panels_dot_v1_dot_panel__service__pb2.EnumeratePanelsRequest.SerializeToString,
211
+ ni_dot_panels_dot_v1_dot_panel__service__pb2.EnumeratePanelsResponse.FromString,
212
+ options, channel_credentials,
213
+ insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
214
+
215
+ @staticmethod
216
+ def GetValue(request,
217
+ target,
218
+ options=(),
219
+ channel_credentials=None,
220
+ call_credentials=None,
221
+ insecure=False,
222
+ compression=None,
223
+ wait_for_ready=None,
224
+ timeout=None,
225
+ metadata=None):
226
+ return grpc.experimental.unary_unary(request, target, '/ni.panels.v1.PanelService/GetValue',
227
+ ni_dot_panels_dot_v1_dot_panel__service__pb2.GetValueRequest.SerializeToString,
228
+ ni_dot_panels_dot_v1_dot_panel__service__pb2.GetValueResponse.FromString,
229
+ options, channel_credentials,
230
+ insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
231
+
232
+ @staticmethod
233
+ def TryGetValue(request,
234
+ target,
235
+ options=(),
236
+ channel_credentials=None,
237
+ call_credentials=None,
238
+ insecure=False,
239
+ compression=None,
240
+ wait_for_ready=None,
241
+ timeout=None,
242
+ metadata=None):
243
+ return grpc.experimental.unary_unary(request, target, '/ni.panels.v1.PanelService/TryGetValue',
244
+ ni_dot_panels_dot_v1_dot_panel__service__pb2.TryGetValueRequest.SerializeToString,
245
+ ni_dot_panels_dot_v1_dot_panel__service__pb2.TryGetValueResponse.FromString,
246
+ options, channel_credentials,
247
+ insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
248
+
249
+ @staticmethod
250
+ def SetValue(request,
251
+ target,
252
+ options=(),
253
+ channel_credentials=None,
254
+ call_credentials=None,
255
+ insecure=False,
256
+ compression=None,
257
+ wait_for_ready=None,
258
+ timeout=None,
259
+ metadata=None):
260
+ return grpc.experimental.unary_unary(request, target, '/ni.panels.v1.PanelService/SetValue',
261
+ ni_dot_panels_dot_v1_dot_panel__service__pb2.SetValueRequest.SerializeToString,
262
+ ni_dot_panels_dot_v1_dot_panel__service__pb2.SetValueResponse.FromString,
263
+ options, channel_credentials,
264
+ insecure, call_credentials, compression, wait_for_ready, timeout, metadata)
@@ -0,0 +1,240 @@
1
+ """
2
+ @generated by mypy-protobuf. Do not edit manually!
3
+ isort:skip_file
4
+ """
5
+
6
+ import abc
7
+ import collections.abc
8
+ import grpc
9
+ import grpc.aio
10
+ import ni.panels.v1.panel_service_pb2
11
+ import typing
12
+
13
+ _T = typing.TypeVar("_T")
14
+
15
+ class _MaybeAsyncIterator(collections.abc.AsyncIterator[_T], collections.abc.Iterator[_T], metaclass=abc.ABCMeta): ...
16
+
17
+ class _ServicerContext(grpc.ServicerContext, grpc.aio.ServicerContext): # type: ignore[misc, type-arg]
18
+ ...
19
+
20
+ class PanelServiceStub:
21
+ """Service interface for interacting with NI panels"""
22
+
23
+ def __init__(self, channel: typing.Union[grpc.Channel, grpc.aio.Channel]) -> None: ...
24
+ StartPanel: grpc.UnaryUnaryMultiCallable[
25
+ ni.panels.v1.panel_service_pb2.StartPanelRequest,
26
+ ni.panels.v1.panel_service_pb2.StartPanelResponse,
27
+ ]
28
+ """Start a panel using the provided configuration (or connect to if it has already been started)
29
+ Status Codes for errors:
30
+ - INVALID_ARGUMENT:
31
+ - The panel identifier contains invalid characters.
32
+ - The panel configuration has an invalid argument.
33
+ - NOT_FOUND:
34
+ - The panel configuration includes a file that was not found.
35
+ """
36
+
37
+ StopPanel: grpc.UnaryUnaryMultiCallable[
38
+ ni.panels.v1.panel_service_pb2.StopPanelRequest,
39
+ ni.panels.v1.panel_service_pb2.StopPanelResponse,
40
+ ]
41
+ """Stop a panel
42
+ Status Codes for errors:
43
+ - INVALID_ARGUMENT:
44
+ - The panel identifier contains invalid characters.
45
+ """
46
+
47
+ EnumeratePanels: grpc.UnaryUnaryMultiCallable[
48
+ ni.panels.v1.panel_service_pb2.EnumeratePanelsRequest,
49
+ ni.panels.v1.panel_service_pb2.EnumeratePanelsResponse,
50
+ ]
51
+ """Enumerate the panels available in the system, including information about the state of the panels and what values they have.
52
+ Status Codes for errors:
53
+ """
54
+
55
+ GetValue: grpc.UnaryUnaryMultiCallable[
56
+ ni.panels.v1.panel_service_pb2.GetValueRequest,
57
+ ni.panels.v1.panel_service_pb2.GetValueResponse,
58
+ ]
59
+ """Get a value for a control on the panel
60
+ Status Codes for errors:
61
+ - INVALID_ARGUMENT:
62
+ - The panel identifier contains invalid characters.
63
+ - The value identifier contains invalid characters.
64
+ - NOT_FOUND:
65
+ - The value with the specified identifier was not found.
66
+ """
67
+
68
+ TryGetValue: grpc.UnaryUnaryMultiCallable[
69
+ ni.panels.v1.panel_service_pb2.TryGetValueRequest,
70
+ ni.panels.v1.panel_service_pb2.TryGetValueResponse,
71
+ ]
72
+ """Try to get a value for a control on the panel
73
+ Status Codes for errors:
74
+ - INVALID_ARGUMENT:
75
+ - The panel identifier contains invalid characters.
76
+ - The value identifier contains invalid characters.
77
+ """
78
+
79
+ SetValue: grpc.UnaryUnaryMultiCallable[
80
+ ni.panels.v1.panel_service_pb2.SetValueRequest,
81
+ ni.panels.v1.panel_service_pb2.SetValueResponse,
82
+ ]
83
+ """Set a value for a control on the panel
84
+ Status Codes for errors:
85
+ - INVALID_ARGUMENT:
86
+ - The panel identifier contains invalid characters.
87
+ - The value identifier contains invalid characters.
88
+ """
89
+
90
+ class PanelServiceAsyncStub:
91
+ """Service interface for interacting with NI panels"""
92
+
93
+ StartPanel: grpc.aio.UnaryUnaryMultiCallable[
94
+ ni.panels.v1.panel_service_pb2.StartPanelRequest,
95
+ ni.panels.v1.panel_service_pb2.StartPanelResponse,
96
+ ]
97
+ """Start a panel using the provided configuration (or connect to if it has already been started)
98
+ Status Codes for errors:
99
+ - INVALID_ARGUMENT:
100
+ - The panel identifier contains invalid characters.
101
+ - The panel configuration has an invalid argument.
102
+ - NOT_FOUND:
103
+ - The panel configuration includes a file that was not found.
104
+ """
105
+
106
+ StopPanel: grpc.aio.UnaryUnaryMultiCallable[
107
+ ni.panels.v1.panel_service_pb2.StopPanelRequest,
108
+ ni.panels.v1.panel_service_pb2.StopPanelResponse,
109
+ ]
110
+ """Stop a panel
111
+ Status Codes for errors:
112
+ - INVALID_ARGUMENT:
113
+ - The panel identifier contains invalid characters.
114
+ """
115
+
116
+ EnumeratePanels: grpc.aio.UnaryUnaryMultiCallable[
117
+ ni.panels.v1.panel_service_pb2.EnumeratePanelsRequest,
118
+ ni.panels.v1.panel_service_pb2.EnumeratePanelsResponse,
119
+ ]
120
+ """Enumerate the panels available in the system, including information about the state of the panels and what values they have.
121
+ Status Codes for errors:
122
+ """
123
+
124
+ GetValue: grpc.aio.UnaryUnaryMultiCallable[
125
+ ni.panels.v1.panel_service_pb2.GetValueRequest,
126
+ ni.panels.v1.panel_service_pb2.GetValueResponse,
127
+ ]
128
+ """Get a value for a control on the panel
129
+ Status Codes for errors:
130
+ - INVALID_ARGUMENT:
131
+ - The panel identifier contains invalid characters.
132
+ - The value identifier contains invalid characters.
133
+ - NOT_FOUND:
134
+ - The value with the specified identifier was not found.
135
+ """
136
+
137
+ TryGetValue: grpc.aio.UnaryUnaryMultiCallable[
138
+ ni.panels.v1.panel_service_pb2.TryGetValueRequest,
139
+ ni.panels.v1.panel_service_pb2.TryGetValueResponse,
140
+ ]
141
+ """Try to get a value for a control on the panel
142
+ Status Codes for errors:
143
+ - INVALID_ARGUMENT:
144
+ - The panel identifier contains invalid characters.
145
+ - The value identifier contains invalid characters.
146
+ """
147
+
148
+ SetValue: grpc.aio.UnaryUnaryMultiCallable[
149
+ ni.panels.v1.panel_service_pb2.SetValueRequest,
150
+ ni.panels.v1.panel_service_pb2.SetValueResponse,
151
+ ]
152
+ """Set a value for a control on the panel
153
+ Status Codes for errors:
154
+ - INVALID_ARGUMENT:
155
+ - The panel identifier contains invalid characters.
156
+ - The value identifier contains invalid characters.
157
+ """
158
+
159
+ class PanelServiceServicer(metaclass=abc.ABCMeta):
160
+ """Service interface for interacting with NI panels"""
161
+
162
+ @abc.abstractmethod
163
+ def StartPanel(
164
+ self,
165
+ request: ni.panels.v1.panel_service_pb2.StartPanelRequest,
166
+ context: _ServicerContext,
167
+ ) -> typing.Union[ni.panels.v1.panel_service_pb2.StartPanelResponse, collections.abc.Awaitable[ni.panels.v1.panel_service_pb2.StartPanelResponse]]:
168
+ """Start a panel using the provided configuration (or connect to if it has already been started)
169
+ Status Codes for errors:
170
+ - INVALID_ARGUMENT:
171
+ - The panel identifier contains invalid characters.
172
+ - The panel configuration has an invalid argument.
173
+ - NOT_FOUND:
174
+ - The panel configuration includes a file that was not found.
175
+ """
176
+
177
+ @abc.abstractmethod
178
+ def StopPanel(
179
+ self,
180
+ request: ni.panels.v1.panel_service_pb2.StopPanelRequest,
181
+ context: _ServicerContext,
182
+ ) -> typing.Union[ni.panels.v1.panel_service_pb2.StopPanelResponse, collections.abc.Awaitable[ni.panels.v1.panel_service_pb2.StopPanelResponse]]:
183
+ """Stop a panel
184
+ Status Codes for errors:
185
+ - INVALID_ARGUMENT:
186
+ - The panel identifier contains invalid characters.
187
+ """
188
+
189
+ @abc.abstractmethod
190
+ def EnumeratePanels(
191
+ self,
192
+ request: ni.panels.v1.panel_service_pb2.EnumeratePanelsRequest,
193
+ context: _ServicerContext,
194
+ ) -> typing.Union[ni.panels.v1.panel_service_pb2.EnumeratePanelsResponse, collections.abc.Awaitable[ni.panels.v1.panel_service_pb2.EnumeratePanelsResponse]]:
195
+ """Enumerate the panels available in the system, including information about the state of the panels and what values they have.
196
+ Status Codes for errors:
197
+ """
198
+
199
+ @abc.abstractmethod
200
+ def GetValue(
201
+ self,
202
+ request: ni.panels.v1.panel_service_pb2.GetValueRequest,
203
+ context: _ServicerContext,
204
+ ) -> typing.Union[ni.panels.v1.panel_service_pb2.GetValueResponse, collections.abc.Awaitable[ni.panels.v1.panel_service_pb2.GetValueResponse]]:
205
+ """Get a value for a control on the panel
206
+ Status Codes for errors:
207
+ - INVALID_ARGUMENT:
208
+ - The panel identifier contains invalid characters.
209
+ - The value identifier contains invalid characters.
210
+ - NOT_FOUND:
211
+ - The value with the specified identifier was not found.
212
+ """
213
+
214
+ @abc.abstractmethod
215
+ def TryGetValue(
216
+ self,
217
+ request: ni.panels.v1.panel_service_pb2.TryGetValueRequest,
218
+ context: _ServicerContext,
219
+ ) -> typing.Union[ni.panels.v1.panel_service_pb2.TryGetValueResponse, collections.abc.Awaitable[ni.panels.v1.panel_service_pb2.TryGetValueResponse]]:
220
+ """Try to get a value for a control on the panel
221
+ Status Codes for errors:
222
+ - INVALID_ARGUMENT:
223
+ - The panel identifier contains invalid characters.
224
+ - The value identifier contains invalid characters.
225
+ """
226
+
227
+ @abc.abstractmethod
228
+ def SetValue(
229
+ self,
230
+ request: ni.panels.v1.panel_service_pb2.SetValueRequest,
231
+ context: _ServicerContext,
232
+ ) -> typing.Union[ni.panels.v1.panel_service_pb2.SetValueResponse, collections.abc.Awaitable[ni.panels.v1.panel_service_pb2.SetValueResponse]]:
233
+ """Set a value for a control on the panel
234
+ Status Codes for errors:
235
+ - INVALID_ARGUMENT:
236
+ - The panel identifier contains invalid characters.
237
+ - The value identifier contains invalid characters.
238
+ """
239
+
240
+ def add_PanelServiceServicer_to_server(servicer: PanelServiceServicer, server: typing.Union[grpc.Server, grpc.aio.Server]) -> None: ...
@@ -0,0 +1,26 @@
1
+ # -*- coding: utf-8 -*-
2
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
3
+ # source: ni/panels/v1/streamlit_panel_configuration.proto
4
+ """Generated protocol buffer code."""
5
+ from google.protobuf.internal import builder as _builder
6
+ from google.protobuf import descriptor as _descriptor
7
+ from google.protobuf import descriptor_pool as _descriptor_pool
8
+ from google.protobuf import symbol_database as _symbol_database
9
+ # @@protoc_insertion_point(imports)
10
+
11
+ _sym_db = _symbol_database.Default()
12
+
13
+
14
+
15
+
16
+ DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n0ni/panels/v1/streamlit_panel_configuration.proto\x12\x0cni.panels.v1\"W\n\x1bStreamlitPanelConfiguration\x12\x18\n\x10panel_script_url\x18\x01 \x01(\t\x12\x1e\n\x16python_interpreter_url\x18\x02 \x01(\tB\x8a\x01\n\x10\x63om.ni.panels.v1B StreamlitPanelConfigurationProtoP\x01Z\x08panelsv1\xf8\x01\x01\xa2\x02\x04NIPS\xaa\x02\x1dNationalInstruments.Panels.V1\xca\x02\x0cNI\\Panels\\V1\xea\x02\x0eNI::Panels::V1b\x06proto3')
17
+
18
+ _builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, globals())
19
+ _builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'ni.panels.v1.streamlit_panel_configuration_pb2', globals())
20
+ if _descriptor._USE_C_DESCRIPTORS == False:
21
+
22
+ DESCRIPTOR._options = None
23
+ DESCRIPTOR._serialized_options = b'\n\020com.ni.panels.v1B StreamlitPanelConfigurationProtoP\001Z\010panelsv1\370\001\001\242\002\004NIPS\252\002\035NationalInstruments.Panels.V1\312\002\014NI\\Panels\\V1\352\002\016NI::Panels::V1'
24
+ _STREAMLITPANELCONFIGURATION._serialized_start=66
25
+ _STREAMLITPANELCONFIGURATION._serialized_end=153
26
+ # @@protoc_insertion_point(module_scope)
@@ -0,0 +1,33 @@
1
+ """
2
+ @generated by mypy-protobuf. Do not edit manually!
3
+ isort:skip_file
4
+ """
5
+
6
+ import builtins
7
+ import google.protobuf.descriptor
8
+ import google.protobuf.message
9
+ import typing
10
+
11
+ DESCRIPTOR: google.protobuf.descriptor.FileDescriptor
12
+
13
+ @typing.final
14
+ class StreamlitPanelConfiguration(google.protobuf.message.Message):
15
+ """Pack this into PanelService.StartPanelRequest.panel_configuration to start a Streamlit panel."""
16
+
17
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
18
+
19
+ PANEL_SCRIPT_URL_FIELD_NUMBER: builtins.int
20
+ PYTHON_INTERPRETER_URL_FIELD_NUMBER: builtins.int
21
+ panel_script_url: builtins.str
22
+ """Location of the streamlit script file on disk, or network path to the file. This must end in ".py"."""
23
+ python_interpreter_url: builtins.str
24
+ """Location of the python interpreter to use for running the streamlit script."""
25
+ def __init__(
26
+ self,
27
+ *,
28
+ panel_script_url: builtins.str = ...,
29
+ python_interpreter_url: builtins.str = ...,
30
+ ) -> None: ...
31
+ def ClearField(self, field_name: typing.Literal["panel_script_url", b"panel_script_url", "python_interpreter_url", b"python_interpreter_url"]) -> None: ...
32
+
33
+ global___StreamlitPanelConfiguration = StreamlitPanelConfiguration