dttlib 0.8.2__cp311-cp311-manylinux_2_31_x86_64.whl → 0.9.0__cp311-cp311-manylinux_2_31_x86_64.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.
dttlib/__init__.pyi CHANGED
@@ -5,7 +5,7 @@ import builtins
5
5
  import typing
6
6
  from enum import Enum
7
7
 
8
- class AnalysisID:
8
+ class AnalysisHeaderId:
9
9
  r"""
10
10
  This is the name of a result
11
11
  Can be of the simple form "SomeChannelName"
@@ -14,15 +14,33 @@ class AnalysisID:
14
14
  Structured to avoid unnecessary string parsing
15
15
  """
16
16
  @staticmethod
17
- def from_channel(channel: Channel) -> AnalysisID: ...
17
+ def from_channel(channel: ChannelHeader) -> AnalysisHeaderId: ...
18
18
  def __new__(
19
- cls, name: builtins.str, args: typing.Sequence[AnalysisID]
20
- ) -> AnalysisID: ...
21
- def first_channel(self) -> Channel:
19
+ cls, name: builtins.str, args: typing.Sequence[AnalysisHeaderId]
20
+ ) -> AnalysisHeaderId: ...
21
+ def first_channel(self) -> ChannelHeader:
22
22
  r"""
23
23
  get the first channel
24
24
  """
25
- class Compound(AnalysisID):
25
+ def add_to_set_recursive(
26
+ self, set: builtins.set[AnalysisHeaderId]
27
+ ) -> builtins.set[AnalysisHeaderId]:
28
+ r"""
29
+ The set is pass-through ownership so that the function is usable from python
30
+
31
+ This function is needed to "flesh out" the collection of analyses request
32
+ by the user to include all intermediate analyses
33
+ """
34
+ def add_trend(self, trend: TrendType) -> AnalysisHeaderId: ...
35
+ def to_analysis_name_id(self) -> AnalysisNameId: ...
36
+ def get_channels(self) -> builtins.set[ChannelHeader]: ...
37
+ class Simple(AnalysisHeaderId):
38
+ __match_args__ = ("channel",)
39
+ @property
40
+ def channel(self) -> ChannelHeader: ...
41
+ def __new__(cls, channel: ChannelHeader) -> AnalysisHeaderId.Simple: ...
42
+
43
+ class Compound(AnalysisHeaderId):
26
44
  __match_args__ = (
27
45
  "name",
28
46
  "args",
@@ -30,16 +48,202 @@ class AnalysisID:
30
48
  @property
31
49
  def name(self) -> builtins.str: ...
32
50
  @property
33
- def args(self) -> builtins.list[AnalysisID]: ...
51
+ def args(self) -> builtins.list[AnalysisHeaderId]: ...
34
52
  def __new__(
35
- cls, name: builtins.str, args: typing.Sequence[AnalysisID]
36
- ) -> AnalysisID.Compound: ...
53
+ cls, name: builtins.str, args: typing.Sequence[AnalysisHeaderId]
54
+ ) -> AnalysisHeaderId.Compound: ...
55
+
56
+ class AnalysisId:
57
+ r"""
58
+ This is the name of a result
59
+ Can be of the simple form "SomeChannelName"
60
+ Or the compound form "Name(OtherID1, OtherID2, ...)"
37
61
 
38
- class Simple(AnalysisID):
62
+ Structured to avoid unnecessary string parsing
63
+ """
64
+ @staticmethod
65
+ def from_channel(channel: Channel) -> AnalysisId: ...
66
+ def __new__(
67
+ cls, name: builtins.str, args: typing.Sequence[AnalysisId]
68
+ ) -> AnalysisId: ...
69
+ def first_channel(self) -> Channel:
70
+ r"""
71
+ get the first channel
72
+ """
73
+ def add_to_set_recursive(
74
+ self, set: builtins.set[AnalysisId]
75
+ ) -> builtins.set[AnalysisId]:
76
+ r"""
77
+ The set is pass-through ownership so that the function is usable from python
78
+
79
+ This function is needed to "flesh out" the collection of analyses request
80
+ by the user to include all intermediate analyses
81
+ """
82
+ def add_trend(self, trend: TrendType) -> AnalysisId: ...
83
+ def to_analysis_name_id(self) -> AnalysisNameId: ...
84
+ def get_channels(self) -> builtins.set[Channel]: ...
85
+ class Simple(AnalysisId):
39
86
  __match_args__ = ("channel",)
40
87
  @property
41
88
  def channel(self) -> Channel: ...
42
- def __new__(cls, channel: Channel) -> AnalysisID.Simple: ...
89
+ def __new__(cls, channel: Channel) -> AnalysisId.Simple: ...
90
+
91
+ class Compound(AnalysisId):
92
+ __match_args__ = (
93
+ "name",
94
+ "args",
95
+ )
96
+ @property
97
+ def name(self) -> builtins.str: ...
98
+ @property
99
+ def args(self) -> builtins.list[AnalysisId]: ...
100
+ def __new__(
101
+ cls, name: builtins.str, args: typing.Sequence[AnalysisId]
102
+ ) -> AnalysisId.Compound: ...
103
+
104
+ class AnalysisNameId:
105
+ r"""
106
+ This is the name of a result
107
+ Can be of the simple form "SomeChannelName"
108
+ Or the compound form "Name(OtherID1, OtherID2, ...)"
109
+
110
+ Structured to avoid unnecessary string parsing
111
+ """
112
+ @staticmethod
113
+ def from_channel(channel: ChannelName) -> AnalysisNameId: ...
114
+ def __new__(
115
+ cls, name: builtins.str, args: typing.Sequence[AnalysisNameId]
116
+ ) -> AnalysisNameId: ...
117
+ def first_channel(self) -> ChannelName:
118
+ r"""
119
+ get the first channel
120
+ """
121
+ def add_to_set_recursive(
122
+ self, set: builtins.set[AnalysisNameId]
123
+ ) -> builtins.set[AnalysisNameId]:
124
+ r"""
125
+ The set is pass-through ownership so that the function is usable from python
126
+
127
+ This function is needed to "flesh out" the collection of analyses request
128
+ by the user to include all intermediate analyses
129
+ """
130
+ def add_trend(self, trend: TrendType) -> AnalysisRequestId: ...
131
+ def to_analysis_name_id(self) -> AnalysisNameId: ...
132
+ def get_channels(self) -> builtins.set[ChannelName]: ...
133
+ class Simple(AnalysisNameId):
134
+ __match_args__ = ("channel",)
135
+ @property
136
+ def channel(self) -> ChannelName: ...
137
+ def __new__(cls, channel: ChannelName) -> AnalysisNameId.Simple: ...
138
+
139
+ class Compound(AnalysisNameId):
140
+ __match_args__ = (
141
+ "name",
142
+ "args",
143
+ )
144
+ @property
145
+ def name(self) -> builtins.str: ...
146
+ @property
147
+ def args(self) -> builtins.list[AnalysisNameId]: ...
148
+ def __new__(
149
+ cls, name: builtins.str, args: typing.Sequence[AnalysisNameId]
150
+ ) -> AnalysisNameId.Compound: ...
151
+
152
+ class AnalysisRequestId:
153
+ r"""
154
+ This is the name of a result
155
+ Can be of the simple form "SomeChannelName"
156
+ Or the compound form "Name(OtherID1, OtherID2, ...)"
157
+
158
+ Structured to avoid unnecessary string parsing
159
+ """
160
+ @staticmethod
161
+ def from_channel(channel: ChannelId) -> AnalysisRequestId: ...
162
+ def __new__(
163
+ cls, name: builtins.str, args: typing.Sequence[AnalysisRequestId]
164
+ ) -> AnalysisRequestId: ...
165
+ def first_channel(self) -> ChannelId:
166
+ r"""
167
+ get the first channel
168
+ """
169
+ def add_to_set_recursive(
170
+ self, set: builtins.set[AnalysisRequestId]
171
+ ) -> builtins.set[AnalysisRequestId]:
172
+ r"""
173
+ The set is pass-through ownership so that the function is usable from python
174
+
175
+ This function is needed to "flesh out" the collection of analyses request
176
+ by the user to include all intermediate analyses
177
+ """
178
+ def add_trend(self, trend: TrendType) -> AnalysisRequestId: ...
179
+ def to_analysis_name_id(self) -> AnalysisNameId: ...
180
+ def get_channels(self) -> builtins.set[ChannelId]: ...
181
+ class Simple(AnalysisRequestId):
182
+ __match_args__ = ("channel",)
183
+ @property
184
+ def channel(self) -> ChannelId: ...
185
+ def __new__(cls, channel: ChannelId) -> AnalysisRequestId.Simple: ...
186
+
187
+ class Compound(AnalysisRequestId):
188
+ __match_args__ = (
189
+ "name",
190
+ "args",
191
+ )
192
+ @property
193
+ def name(self) -> builtins.str: ...
194
+ @property
195
+ def args(self) -> builtins.list[AnalysisRequestId]: ...
196
+ def __new__(
197
+ cls, name: builtins.str, args: typing.Sequence[AnalysisRequestId]
198
+ ) -> AnalysisRequestId.Compound: ...
199
+
200
+ class AnalysisSettingsId:
201
+ r"""
202
+ This is the name of a result
203
+ Can be of the simple form "SomeChannelName"
204
+ Or the compound form "Name(OtherID1, OtherID2, ...)"
205
+
206
+ Structured to avoid unnecessary string parsing
207
+ """
208
+ @staticmethod
209
+ def from_channel(channel: ChannelSettings) -> AnalysisSettingsId: ...
210
+ def __new__(
211
+ cls, name: builtins.str, args: typing.Sequence[AnalysisSettingsId]
212
+ ) -> AnalysisSettingsId: ...
213
+ def first_channel(self) -> ChannelSettings:
214
+ r"""
215
+ get the first channel
216
+ """
217
+ def add_to_set_recursive(
218
+ self, set: builtins.set[AnalysisSettingsId]
219
+ ) -> builtins.set[AnalysisSettingsId]:
220
+ r"""
221
+ The set is pass-through ownership so that the function is usable from python
222
+
223
+ This function is needed to "flesh out" the collection of analyses request
224
+ by the user to include all intermediate analyses
225
+ """
226
+ def add_trend(self, trend: TrendType) -> AnalysisSettingsId: ...
227
+ def to_analysis_name_id(self) -> AnalysisNameId: ...
228
+ def get_channels(self) -> builtins.set[ChannelSettings]: ...
229
+ class Simple(AnalysisSettingsId):
230
+ __match_args__ = ("channel",)
231
+ @property
232
+ def channel(self) -> ChannelSettings: ...
233
+ def __new__(cls, channel: ChannelSettings) -> AnalysisSettingsId.Simple: ...
234
+
235
+ class Compound(AnalysisSettingsId):
236
+ __match_args__ = (
237
+ "name",
238
+ "args",
239
+ )
240
+ @property
241
+ def name(self) -> builtins.str: ...
242
+ @property
243
+ def args(self) -> builtins.list[AnalysisSettingsId]: ...
244
+ def __new__(
245
+ cls, name: builtins.str, args: typing.Sequence[AnalysisSettingsId]
246
+ ) -> AnalysisSettingsId.Compound: ...
43
247
 
44
248
  class Channel:
45
249
  @property
@@ -82,6 +286,19 @@ class Channel:
82
286
  cls, name: builtins.str, data_type: NDSDataType, period: PipDuration
83
287
  ) -> Channel: ...
84
288
 
289
+ class ChannelHeader:
290
+ r"""
291
+ Used internally to map full name and trend info
292
+ this is the minimum needed information
293
+ to generate a request to the cache or other data source
294
+ """
295
+ @property
296
+ def name(self) -> builtins.str: ...
297
+ @property
298
+ def trend_type(self) -> TrendType: ...
299
+ @property
300
+ def trend_stat(self) -> TrendStat: ...
301
+
85
302
  class ChannelId:
86
303
  r"""
87
304
  Provides enough info to query a channel from an NDS server by name.
@@ -97,6 +314,14 @@ class ChannelId:
97
314
  One ChannelID will return into a channel for each.
98
315
  """
99
316
 
317
+ class ChannelName:
318
+ r"""
319
+ Provides enough info to query a channel from an NDS server by name.
320
+ """
321
+ @property
322
+ def name(self) -> builtins.str: ...
323
+ def __new__(cls, name: builtins.str) -> ChannelName: ...
324
+
100
325
  class ChannelParams:
101
326
  @property
102
327
  def active(self) -> builtins.bool: ...
@@ -270,11 +495,11 @@ class FreqDomainArray:
270
495
  @property
271
496
  def data(self) -> typing.Any: ...
272
497
  @property
273
- def id(self) -> AnalysisID: ...
498
+ def id(self) -> AnalysisId: ...
274
499
  @property
275
500
  def unit(self) -> Unit: ...
276
501
  def clone_metadata(
277
- self, id: AnalysisID, unit: Unit, new_data: typing.Any
502
+ self, id: AnalysisId, unit: Unit, new_data: typing.Any
278
503
  ) -> FreqDomainArray:
279
504
  r"""
280
505
  Copy everything from another object except replace the data
@@ -644,18 +869,7 @@ class ScopeViewHandle:
644
869
  Update the span of a view. This is a pythonic wrapper. Rust code should call update_online() or update_fixed().
645
870
  """
646
871
  def close(self) -> None: ...
647
- def get_result_store(self) -> builtins.dict[AnalysisID, typing.Any]: ...
648
-
649
- class SetMember:
650
- class Channel(SetMember):
651
- __match_args__ = ("_0",)
652
- @property
653
- def _0(self) -> Channel: ...
654
- def __new__(cls, _0: Channel) -> SetMember.Channel: ...
655
- def __len__(self) -> builtins.int: ...
656
- def __getitem__(self, key: builtins.int) -> typing.Any: ...
657
-
658
- ...
872
+ def get_result_store(self) -> builtins.dict[AnalysisId, typing.Any]: ...
659
873
 
660
874
  class SimpleUnit:
661
875
  r"""
@@ -1057,7 +1271,7 @@ class TimeDomainArray:
1057
1271
  @property
1058
1272
  def total_gap_size(self) -> builtins.int: ...
1059
1273
  @property
1060
- def id(self) -> AnalysisID: ...
1274
+ def id(self) -> AnalysisId: ...
1061
1275
  @property
1062
1276
  def unit(self) -> Unit: ...
1063
1277
  @property
@@ -1077,6 +1291,13 @@ class TimeDomainArray:
1077
1291
  but the return value can be greater or equal to the length of the array
1078
1292
  and therefore out of bounds
1079
1293
  """
1294
+ def timestamps(self) -> builtins.list[PipInstant]: ...
1295
+ def delta_t_seconds(self, t0: PipInstant) -> builtins.list[builtins.float]:
1296
+ r"""
1297
+ Get the timestamps transformed into a delta time from some t0
1298
+ return values in seconds as floating point
1299
+ Useful for getting relative timestamps to a point of time on a graph
1300
+ """
1080
1301
 
1081
1302
  class Timeline: ...
1082
1303
 
@@ -1110,6 +1331,10 @@ class ViewSet:
1110
1331
  for turning a simple list of channel names into a ViewSet with
1111
1332
  unresolved channel names
1112
1333
  """
1334
+ @staticmethod
1335
+ def from_analysis_request_ids(
1336
+ request_ids: builtins.set[AnalysisRequestId],
1337
+ ) -> ViewSet: ...
1113
1338
  def has_unresolved_channels(self) -> builtins.bool: ...
1114
1339
  def to_resolved_channel_names(self) -> builtins.list[builtins.str]:
1115
1340
  r"""
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: dttlib
3
- Version: 0.8.2
3
+ Version: 0.9.0
4
4
  License-File: COPYING
5
5
  License-File: COPYING-GPL-3
6
6
  Summary: Advanced LIGO core library for online and offline frequency-domain diagnostics tool.
@@ -1,7 +1,7 @@
1
- dttlib-0.8.2.dist-info/METADATA,sha256=42H4OVJNC_Q0QYOC-qWMXx2dR5v8H5EyofhL-ZwUvJk,1134
2
- dttlib-0.8.2.dist-info/WHEEL,sha256=7iuh79E9PxJWyCAFph8GjUJhUDhrUEMt9mk-6N1Jk4Q,108
3
- dttlib-0.8.2.dist-info/licenses/COPYING,sha256=jxnpJYe5OWc5-08NV3sStA6JFXKvqHwqTF14C_0Hwg4,1735
4
- dttlib-0.8.2.dist-info/licenses/COPYING-GPL-3,sha256=_ILKi2_bGNTj6Fz9irWNG80_Gymr54KJWr2R1kdj-Oc,35068
1
+ dttlib-0.9.0.dist-info/METADATA,sha256=D7uZ478EreSenNg48dedQ5guDLNSwtmBBDs_GAgdibw,1134
2
+ dttlib-0.9.0.dist-info/WHEEL,sha256=vuhAB05tV_1w8STY4-DycUD37-lUo37lNYN6dKsimvw,108
3
+ dttlib-0.9.0.dist-info/licenses/COPYING,sha256=jxnpJYe5OWc5-08NV3sStA6JFXKvqHwqTF14C_0Hwg4,1735
4
+ dttlib-0.9.0.dist-info/licenses/COPYING-GPL-3,sha256=_ILKi2_bGNTj6Fz9irWNG80_Gymr54KJWr2R1kdj-Oc,35068
5
5
  dttlib.libs/libfftw3-7229d6f2.so.3,sha256=Ex3MhKZdYUUcoY8Jpo_V6MPRm_KzWt64b-ocxvEl2oA,2155385
6
6
  dttlib.libs/libfftw3f-3af7c840.so.3,sha256=_HfvElJPM-WSatYaasYuVXHcIBXkwxLj6_rB9MgRix0,2193217
7
7
  dttlib.libs/libgds-sigp-e0383b3d.so,sha256=WvqtrgK57AvmxmSsIYhflCcPWjzucEC55VQ2rFn4goQ,4411553
@@ -10,7 +10,7 @@ dttlib.libs/libndscxx-78126e77.so.1,sha256=AhQ61_vYZj6E4WWF47pWT6RCYMVoeIQF9h63_
10
10
  dttlib.libs/libpython3-31a60c8f.11.so.1.0,sha256=RhoBJs6DbJhmmoy_TW-wmjSTe28Po2-M-dRp3p5jfH8,21787753
11
11
  dttlib.libs/libsasl2-86ae7ca3.so.2,sha256=Wd_1atKWOKbLoJe63KBw9dDOYWz5HFvzOtdCsaSXUNE,117305
12
12
  dttlib/__init__.py,sha256=L7UhbeXBFuGgQPcm9TzTfdaOkGqKm-WPMQ5JEECDghE,107
13
- dttlib/__init__.pyi,sha256=zBkdp0Q7X--9mxZ4fSZBFE4QkVEgXkIJxz-pYAbRiU4,38726
14
- dttlib/dttlib.cpython-311-x86_64-linux-gnu.so,sha256=yMDkCX_Nzw2o5jvoVXke3RaIe2Ya-9Yqx2XcvB19Zrg,23154577
13
+ dttlib/__init__.pyi,sha256=b6q3Oj5yy3FGdy16fWuA-gDhjF01M7VuhK0xZzCVW3g,46897
14
+ dttlib/dttlib.cpython-311-x86_64-linux-gnu.so,sha256=EW19irURtqOco_vkn0cTO7y922d3QubA2HT2zeGzmhI,24117193
15
15
  dttlib/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
16
- dttlib-0.8.2.dist-info/RECORD,,
16
+ dttlib-0.9.0.dist-info/RECORD,,
@@ -1,4 +1,4 @@
1
1
  Wheel-Version: 1.0
2
- Generator: maturin (1.9.4)
2
+ Generator: maturin (1.9.6)
3
3
  Root-Is-Purelib: false
4
4
  Tag: cp311-cp311-manylinux_2_31_x86_64