pyxcp 0.23.7__cp313-cp313-macosx_11_0_arm64.whl → 0.23.9__cp313-cp313-macosx_11_0_arm64.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 pyxcp might be problematic. Click here for more details.

pyxcp/__init__.py CHANGED
@@ -17,4 +17,4 @@ tb_install(show_locals=True, max_frames=3) # Install custom exception handler.
17
17
 
18
18
  # if you update this manually, do not forget to update
19
19
  # .bumpversion.cfg and pyproject.toml.
20
- __version__ = "0.23.7"
20
+ __version__ = "0.23.9"
pyxcp/asamkeydll ADDED
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
pyxcp/examples/run_daq.py CHANGED
@@ -129,8 +129,9 @@ else:
129
129
  ),
130
130
  ]
131
131
 
132
- daq_parser = DaqToCsv(DAQ_LISTS) # Record to CSV file(s).
133
- # daq_parser = DaqRecorder(DAQ_LISTS, "run_daq", 2) # Record to ".xmraw" file.
132
+
133
+ # daq_parser = DaqToCsv(DAQ_LISTS) # Record to CSV file(s).
134
+ daq_parser = DaqRecorder(DAQ_LISTS, "run_daq_01092025_01", 8) # Record to ".xmraw" file.
134
135
 
135
136
  with ap.run(policy=daq_parser) as x:
136
137
  try:
@@ -149,7 +150,8 @@ with ap.run(policy=daq_parser) as x:
149
150
  print("start DAQ lists.")
150
151
  daq_parser.start() # Start DAQ lists.
151
152
 
152
- time.sleep(2.0 * 60.0 * 60.0) # Run for 15 minutes.
153
+ # time.sleep(2.0 * 60.0)
154
+ time.sleep(15 * 60.0) # Run for 15 minutes.
153
155
 
154
156
  print("Stop DAQ....")
155
157
  daq_parser.stop() # Stop DAQ lists.
pyxcp/master/master.py CHANGED
@@ -223,6 +223,10 @@ class Master:
223
223
  self.AG_unpack = self.DWORD_unpack
224
224
  self.slaveProperties.bytesPerElement = 4
225
225
  # self.connected = True
226
+ status = self.getStatus()
227
+ if status.sessionStatus.daqRunning:
228
+ # TODO: resume
229
+ self.startStopSynch(0x00)
226
230
  return result
227
231
 
228
232
  @wrapped
@@ -1109,8 +1109,9 @@ class DaqRecorderPolicy : public DAQPolicyBase {
1109
1109
  }
1110
1110
 
1111
1111
  void feed(std::uint8_t frame_cat, std::uint16_t counter, std::uint64_t timestamp, const std::string& payload) override {
1112
- if (frame_cat != static_cast<std::uint8_t>(FrameCategory::DAQ)) {
1112
+ if (frame_cat != static_cast<std::uint8_t>(FrameCategory::DAQ) || (!m_initialized)) {
1113
1113
  // Only record DAQ frames for now.
1114
+ // also make sure policy is initialized.
1114
1115
  return;
1115
1116
  }
1116
1117
  m_writer->add_frame(frame_cat, counter, timestamp, static_cast<std::uint16_t>(payload.size()), payload.c_str());
@@ -1142,38 +1143,30 @@ class DaqRecorderPolicy : public DAQPolicyBase {
1142
1143
  class DaqTimeTracker {
1143
1144
  public:
1144
1145
 
1145
- DaqTimeTracker(std::uint64_t overflow_value) : m_overflow_value(overflow_value), m_overflow_counter(0ULL), m_previous_timestamp(0ULL) { m_ts_base_set=false; m_ts0_base=0ULL; m_ts1_base=0ULL; }
1146
-
1147
- auto get_previous_timestamp() const noexcept {
1148
- return m_previous_timestamp;
1149
- }
1150
-
1151
- void set_previous_timestamp(std::uint64_t timestamp) noexcept {
1152
- m_previous_timestamp = timestamp;
1153
- }
1146
+ DaqTimeTracker(std::uint64_t overflow_value) : m_overflow_value(overflow_value), m_overflow_counter(0ULL), m_previous_timestamp(0ULL) {
1147
+ m_ts_base_set=false;
1148
+ m_ts0_base=0ULL; m_ts1_base=0ULL;
1149
+ //std::cout << "\tOverflow value: " << overflow_value << "\n";
1150
+ }
1154
1151
 
1155
- void inc_overflow_counter() noexcept {
1156
- m_overflow_counter++;
1157
- }
1152
+ std::pair<std::uint64_t,std::uint64_t> normalize(std::uint64_t ts0, std::uint64_t ts1) noexcept {
1158
1153
 
1159
- auto get_overflow_counter() const noexcept {
1160
- return m_overflow_counter;
1161
- }
1154
+ if (m_previous_timestamp > ts1) {
1155
+ m_overflow_counter++;
1156
+ }
1157
+ m_previous_timestamp = ts1;
1162
1158
 
1163
- auto get_value() const noexcept {
1164
- return m_overflow_value * m_overflow_counter;
1165
- }
1166
-
1167
- public:
1168
- std::pair<std::uint64_t,std::uint64_t> normalize(std::uint64_t ts0, std::uint64_t ts1) noexcept {
1169
1159
  if (!m_ts_base_set) {
1170
1160
  m_ts0_base = ts0;
1171
1161
  m_ts1_base = ts1;
1172
1162
  m_ts_base_set = true;
1163
+ // std::cout << "\tSet ts0: " << ts0 << " ts1:" << ts1 << "\n";
1173
1164
  }
1174
- return {ts0 - m_ts0_base, ts1 - m_ts1_base};
1165
+ // std::cout << "\t\tts0: " << ts0 << " Base: " << m_ts0_base << " ts1: " << ts1 << " Base: " << m_ts1_base << "\n";
1166
+ return {ts0 - m_ts0_base, (ts1 - m_ts1_base) + (m_overflow_value * m_overflow_counter) };
1175
1167
  }
1176
1168
  private:
1169
+
1177
1170
  std::uint64_t m_overflow_value{};
1178
1171
  std::uint64_t m_overflow_counter{};
1179
1172
  std::uint64_t m_previous_timestamp{};
@@ -1211,19 +1204,11 @@ class DaqOnlinePolicy : public DAQPolicyBase {
1211
1204
  auto result = m_decoder->feed(timestamp, payload);
1212
1205
  if (result) {
1213
1206
  const auto& [daq_list, ts0, ts1, meas] = *result;
1214
-
1215
1207
  auto& overflow = m_overflows[daq_list];
1216
1208
 
1217
1209
  auto [norm_ts0, norm_ts1] = overflow.normalize(ts0, ts1);
1218
1210
 
1219
- if (overflow.get_previous_timestamp() > norm_ts1) {
1220
- overflow.inc_overflow_counter();
1221
- }
1222
-
1223
- on_daq_list(daq_list, norm_ts0, norm_ts1 + overflow.get_value(), meas);
1224
-
1225
- overflow.set_previous_timestamp(norm_ts1);
1226
-
1211
+ on_daq_list(daq_list, norm_ts0, norm_ts1, meas);
1227
1212
  }
1228
1213
  }
1229
1214
 
@@ -1296,20 +1281,11 @@ class XcpLogFileDecoder {
1296
1281
  auto result = m_decoder->feed(timestamp, str_data);
1297
1282
  if (result) {
1298
1283
  const auto& [daq_list, ts0, ts1, meas] = *result;
1299
-
1300
1284
  auto& overflow = m_overflows[daq_list];
1301
1285
 
1302
1286
  auto [norm_ts0, norm_ts1] = overflow.normalize(ts0, ts1);
1303
1287
 
1304
- if (overflow.get_previous_timestamp() > norm_ts1) {
1305
- overflow.inc_overflow_counter();
1306
- // Maybe on debug-level?
1307
- // std::cout << "Overflow detected, counter: " << overflow.get_overflow_counter() << " " << overflow.get_previous_timestamp() << " " << ts1 << std::endl;
1308
- }
1309
-
1310
- on_daq_list(daq_list, norm_ts0, norm_ts1 + overflow.get_value(), meas);
1311
-
1312
- overflow.set_previous_timestamp(norm_ts1);
1288
+ on_daq_list(daq_list, norm_ts0, norm_ts1, meas);
1313
1289
  }
1314
1290
  }
1315
1291
  }
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: pyxcp
3
- Version: 0.23.7
3
+ Version: 0.23.9
4
4
  Summary: Universal Calibration Protocol for Python
5
5
  License: LGPLv3
6
6
  Keywords: automotive,ecu,xcp,asam,autosar
@@ -39,7 +39,7 @@ Description-Content-Type: text/x-rst
39
39
  Readme
40
40
  ======
41
41
 
42
- .. image:: pyxcp_social.jpg
42
+ .. image:: pyxcp_social.svg
43
43
  :align: center
44
44
 
45
45
  Reliable Python tooling for the ASAM MCD-1 XCP protocol (measurement,
@@ -1,32 +1,28 @@
1
- pyxcp-0.23.7.dist-info/RECORD,,
2
- pyxcp-0.23.7.dist-info/LICENSE,sha256=46mU2C5kSwOnkqkw9XQAJlhBL2JAf1_uCD8lVcXyMRg,7652
3
- pyxcp-0.23.7.dist-info/WHEEL,sha256=F-Ac6CTANed3x6yT1zUARTuatIT2Q9bQ5nEN9psYMVw,134
4
- pyxcp-0.23.7.dist-info/entry_points.txt,sha256=LkHsEwubm30s4oiyCy0cKj6k97ALvQ6KjAVdyEcqu7g,358
5
- pyxcp-0.23.7.dist-info/METADATA,sha256=t_ndqpGCZ0vWyXI2tRS73YMxpWAS1Co6OXGEAXy1IxY,12718
6
1
  pyxcp/dllif.py,sha256=m4e-_dgDLCD6COU5W2LdeYUlib_Xxyxbh977bbS-VAU,3344
7
2
  pyxcp/checksum.py,sha256=aveS0z4vthLXABEFhTqELqFNi7LM6ZzDzq7dD5Xe9oo,11167
8
3
  pyxcp/asamkeydll.sh,sha256=iema12sub6qNE0xAuzwGtx0FmkdaaOKoXalhrtWVaa8,57
9
4
  pyxcp/asamkeydll.c,sha256=l5RHYcEPY_Q07G-W5IjCq0xci8YfUR-3uYt84OOkOJI,2836
10
5
  pyxcp/constants.py,sha256=Yemk_Gi_m78EEU0v-sdGCAodb9dv_vqP969IU3izA2M,1113
11
6
  pyxcp/cmdline.py,sha256=OVSO-X6JV1Si2tKZ1ar2gYbiqCTlTaj5jY-z6N2Vk3Q,2453
12
- pyxcp/__init__.py,sha256=0Lens5crznGTlhKtnOVYewjfcuUNvEEjr3r5kDcYeno,527
7
+ pyxcp/__init__.py,sha256=3f5FNt7GeyC6oJ5XZRxitwjhfpMUwA_bKjk6ZF_qvQQ,527
13
8
  pyxcp/types.py,sha256=XJxJUh9bK5Urfia8IHVLJ-NFgQACYBd_n73L-AaeZts,25158
14
9
  pyxcp/timing.py,sha256=hzeQZ3P7ij_bfskoVMi10Iv5S4i_6TQYfnB8PXTX6c4,1645
15
10
  pyxcp/utils.py,sha256=cHb5RUNim90U1U_a4axRmfa2n_xhFdjqHoRBEODoscs,3404
16
11
  pyxcp/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
17
12
  pyxcp/errormatrix.py,sha256=cYcsJ11Qm39DPuaR4BJ9fMpS3Hkphd_ezIQOKjI-pQE,44586
13
+ pyxcp/asamkeydll,sha256=gN2rba8QriwZO9AZ_cUdmf8TS48P1vjonaaAN3bc9gk,50584
18
14
  pyxcp/asam/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
19
15
  pyxcp/asam/types.py,sha256=V4wSCGI1pXn0EsBemDyaHTBgY2wkV_BeLShnDIGGgDE,2310
20
- pyxcp/daq_stim/stim.cpython-312-darwin.so,sha256=iCayaiyPuwlGaM_z9euCx5n0pjbSxI0ASw_OvS4V2PU,237880
16
+ pyxcp/daq_stim/stim.cpython-312-darwin.so,sha256=jduyfSIFTpWrAV47wGzJL3tzoZfkfVmDMeFl64P_oTo,237880
21
17
  pyxcp/daq_stim/stim.cpp,sha256=sABgEfbQlt5kXbzAsndyhaDFWRWTJw3jJlNfanIVrRs,164
22
18
  pyxcp/daq_stim/__init__.py,sha256=7Lly_Sn2SQljadGyY9pcDqTYNIkw8O_t7GVlCZDL2wQ,12171
23
19
  pyxcp/daq_stim/scheduler.cpp,sha256=2XW9PmxrJR8DfYMVszGwBX-KANVviwPcUNBvnjw5MlM,1443
24
- pyxcp/daq_stim/stim.cpython-313-darwin.so,sha256=8LQQ_pMJ5zCwvg25Nel5fZ5TpoY1EpgeRJfTAU6UdpA,238120
20
+ pyxcp/daq_stim/stim.cpython-313-darwin.so,sha256=IX8coHUbNwfIvIDCQAeGmUJIZNSeAs9cvZe6Sm1VvMI,238120
25
21
  pyxcp/daq_stim/stim.hpp,sha256=1DwAhkY7XJN14aD2BxLJ4O1j4_a6RvpePIbAG1U8iOA,17904
26
- pyxcp/daq_stim/stim.cpython-310-darwin.so,sha256=pE7imb11QMYyQv8HTO54EmnJrS5GsocxWJJT5vCPHyw,237784
22
+ pyxcp/daq_stim/stim.cpython-310-darwin.so,sha256=ciy3m3t6O2ijjYa190hWupKTv4NYSe6xs7EipP3FBFk,237816
27
23
  pyxcp/daq_stim/scheduler.hpp,sha256=H-kwyZBV3S8q6YlCq6OLUbaNXskyCOS4z3SRP32ikPY,1809
28
24
  pyxcp/daq_stim/stim_wrapper.cpp,sha256=7iL1-4BPavo5bfrph20Fvicn6HxGEZQqYLvdxniJBYU,1945
29
- pyxcp/daq_stim/stim.cpython-311-darwin.so,sha256=BH5vuWJS2JJsD1SBdfDSV-ze1_6YQ0ZHMzlukI4y3iE,237864
25
+ pyxcp/daq_stim/stim.cpython-311-darwin.so,sha256=aahyParbpwhlB-BuKK1ZPOP8oiNfNFaserUsVLZ9XHE,237896
30
26
  pyxcp/daq_stim/optimize/__init__.py,sha256=joAKvAvlYQEi7VF2oVftn_ohgRO231wnc3e8fY231L4,2453
31
27
  pyxcp/daq_stim/optimize/binpacking.py,sha256=AZHABtAnzBVJ-MVUGLrxuAp_bAtv3C-gMxrXXXrgi-Y,1216
32
28
  pyxcp/transport/transport_wrapper.cpp,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -63,7 +59,7 @@ pyxcp/aml/XCPonUSB.aml,sha256=rPGduH-PE8-tBeELSm3vfkbf62uhlVP6gvJL0OvMclc,4847
63
59
  pyxcp/aml/ifdata_SxI.a2l,sha256=8rAB6HTTAuNlFSrkFpR7fUA702yN4rTTNkw-xspZNV0,303
64
60
  pyxcp/aml/XCPonFlx.aml,sha256=z58FMu6ZF4hVun8WBCuxvDrq6FZ_gj3tZM15G7E8Uvw,4647
65
61
  pyxcp/master/__init__.py,sha256=o3XB9GDwLiqh-KRFC9YTOd0EvxJXDpyrcVxebiwT934,309
66
- pyxcp/master/master.py,sha256=oft1aNYqmilFZ00ZI7aO5lPaxXg5-Act6ji23x3bc6U,76980
62
+ pyxcp/master/master.py,sha256=4GTtu_SrALZev52sdEw5AYyDaJ3SWbM_XBG_FpS4NeA,77123
67
63
  pyxcp/master/errorhandler.py,sha256=7EftfxWYqRyXurJEZS8PAyXVHs_e4qV8uWsUOMuE2Ug,19402
68
64
  pyxcp/examples/xcp_read_benchmark.py,sha256=Hl0hrjV3FE-ivswvYOh0MsKiHnk03z7w8lQDYnvfeM8,918
69
65
  pyxcp/examples/conf_eth.toml,sha256=b6bKN-K07gMQHNj7yiyB-HKrkVtZREgPXS4ByQueBs4,190
@@ -76,7 +72,7 @@ pyxcp/examples/xcp_user_supplied_driver.py,sha256=Wyep2KhtcFC2GzZuJPj5ikSqWIWYsf
76
72
  pyxcp/examples/xcp_skel.py,sha256=F2g2C79jiYZl0cpRHfzWusfn1ZvodOS_r1Az6aknZL4,1110
77
73
  pyxcp/examples/xcp_unlock.py,sha256=vl2Zv7Z6EuBxI2ZxbGQK6-0tZBVqd72FZllsvIfuJ5w,652
78
74
  pyxcp/examples/xcphello.py,sha256=JK9U_QkFP0AwKlZK9lFB66GAqUDFRoXL3XMYO5EdRQQ,2550
79
- pyxcp/examples/run_daq.py,sha256=PMseqJBDnpRofvNQNl619qpJeAaKuzi3HzYuT5zvRN0,5468
75
+ pyxcp/examples/run_daq.py,sha256=fLZSVtM__QkvTzXiGP4Tff79xwVNPCmVoLv89ff9c9I,5502
80
76
  pyxcp/examples/conf_socket_can.toml,sha256=JB9zHHaya2mDXf0zPY7zEKiBDX2chzBBRxt7h3LxxDk,257
81
77
  pyxcp/examples/conf_sxi.toml,sha256=r81OD0mCLk_h7vrN5MBJk0HFbiWi3bQZtFgFVrW6qcM,118
82
78
  pyxcp/examples/conf_can.toml,sha256=oGkZYgmcpPsJ6YKGELm6DqF-hNvokJHCq99LAqxCyso,351
@@ -95,7 +91,7 @@ pyxcp/recorder/recorder.rst,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
95
91
  pyxcp/recorder/mio.hpp,sha256=emP4qMXTxOe1wRSkB_U0hgOVz4aMUgG5dqcCvNNkAjs,61632
96
92
  pyxcp/recorder/build_gcc.cmd,sha256=A1xt8AS7VZxjJq21VzX8cOT7wl9ap_AIXBWbcIEddCw,237
97
93
  pyxcp/recorder/writer.hpp,sha256=rNjtRTtJes5z-BzKR2K56P_Kvc9MEVQgycu8J0wKf1g,11284
98
- pyxcp/recorder/rekorder.cpython-310-darwin.so,sha256=r5_memGnoh681bRzU2tZqk1VRJSxXm1dQLwiktzwXCg,529936
94
+ pyxcp/recorder/rekorder.cpython-310-darwin.so,sha256=987QuXdoVM-fEfqm8PNQZr25nDhhwwSIwfk36fKyVCk,529792
99
95
  pyxcp/recorder/lz4hc.c,sha256=GhoLtpQF6ViHkhQ_TaLw9UCzSB_MO-fdflgjR_xFFfM,86829
100
96
  pyxcp/recorder/lz4.h,sha256=BkRLAtxukE15Z2yO0Pjrq-n6hw5W6jkGFR5f14MzpEU,45604
101
97
  pyxcp/recorder/rekorder.cpp,sha256=LtN3Ud_pigNZ70gJ5-tyFJZN-3PMDVwqbbH694--TxQ,1841
@@ -105,30 +101,35 @@ pyxcp/recorder/reader.hpp,sha256=rr9XZ_ciL6eF2_xEqyt9XYNqTIze9ytAsnf8uYukO9U,520
105
101
  pyxcp/recorder/__init__.py,sha256=HA8U6V85vbgZNWyNvJlY8l77YeTO0tHWl3t1v9DvjkQ,2846
106
102
  pyxcp/recorder/test_reko.py,sha256=sIM_BBY9sq1ZUTawoxmDzdtd5qHPT9w6eVYZoY4iFik,980
107
103
  pyxcp/recorder/build_clang.cmd,sha256=vIWwC1zF_WChakjfj8VaUCN6X8HwyqvGgFRdUub1TtE,174
108
- pyxcp/recorder/rekorder.cpython-311-darwin.so,sha256=VEOHT-iR21oNMxq2GrwpHDGxsVpBu9lfJtBKi87EjRs,530080
104
+ pyxcp/recorder/rekorder.cpython-311-darwin.so,sha256=-2w3n_6dM8kO8UiUUAkfy_bCHizGFuznoAhv2tazHrA,529936
109
105
  pyxcp/recorder/reco.py,sha256=SAO_XMKSBWHhdzxfkmV9ZoPvJjale4BGi8O9p5Sd_iE,8448
110
106
  pyxcp/recorder/setup.py,sha256=piwBqaIX6SY1CyjKlantmd3I_VS6rk56sELvmPguKNM,957
111
107
  pyxcp/recorder/rekorder.hpp,sha256=sWvRch9bVt6mmgrFHp5mwWhap7HoFG4geeb7UqEIzio,7638
112
108
  pyxcp/recorder/lz4hc.h,sha256=U_uN3Q2wIi3_dbEceJ16xHJZGotUiBTcnL6O5ARPi8M,20179
113
- pyxcp/recorder/rekorder.cpython-312-darwin.so,sha256=J5KHacFpbX5gb-cwG1mmN5vdnEj19UJesR8z1Mq20-s,530080
109
+ pyxcp/recorder/rekorder.cpython-312-darwin.so,sha256=nre1ZLzY0b0NnHd2d1vXd4HeuikE4K6--me5Ol8zJVg,529936
114
110
  pyxcp/recorder/lz4.c,sha256=k5b33lJ7yENd6cdWn7eZjlZUWoS088LYCMAjXAF3RTk,118145
115
111
  pyxcp/recorder/build_gcc.sh,sha256=uvMhL4faEJmhG_8rzSOxEBRRqrACC0kmZgaERN8GkUs,209
116
- pyxcp/recorder/rekorder.cpython-313-darwin.so,sha256=VyEQ92EF-nIVT1FQCdsmCYEJmurUaqdJVNf7YFF_th8,530336
117
- pyxcp/recorder/unfolder.hpp,sha256=jKvjQs8VSVfsYRkLguV97Csde_Xbt8G-tGkuKnbaSqY,48763
112
+ pyxcp/recorder/rekorder.cpython-313-darwin.so,sha256=j0i0LkYgObugID5pqObLlYwj8bVpCsnW-TWnqScglGQ,530192
113
+ pyxcp/recorder/unfolder.hpp,sha256=DfjAkAlXZhhuE3FY4jQbK0GBlaPzBZqCEm3Auc0-YW0,48067
118
114
  pyxcp/recorder/converter/__init__.py,sha256=mqzH3jxGpFrtS2dHyfDLCYKeJycav3_-6z8svlI07eU,14452
119
115
  pyxcp/stim/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
120
116
  pyxcp/vector/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
121
117
  pyxcp/vector/map.py,sha256=dSxM15eXvZh6izITdJmFxr1rplDUlfaJUbtrm2Xv-dE,2224
122
118
  pyxcp/cpp_ext/event.hpp,sha256=X2_ThYx8fzz-XR9McmsKM2Hb9I2x7XZeQGy1OyUs6iE,1133
123
- pyxcp/cpp_ext/cpp_ext.cpython-313-darwin.so,sha256=1BYTOrfgtRA3puKr4vLOiRruk8HiMsat0qe8ywXYRUs,321856
119
+ pyxcp/cpp_ext/cpp_ext.cpython-313-darwin.so,sha256=WfHchUvQUl2Yhq3ujZ6fv28Eo523cazOepNIjkghIQs,321680
124
120
  pyxcp/cpp_ext/blockmem.hpp,sha256=wSUDTgwO9zNn0c29hZ_MRH7cHDIFKma2MYVxip9ARNE,1184
125
121
  pyxcp/cpp_ext/mcobject.hpp,sha256=A5GKcfjYMcfm3hfTQfFuS4JYNFTvfmzAcMXCe01GOs4,6429
126
122
  pyxcp/cpp_ext/tsqueue.hpp,sha256=PuDd0kmj61afjW0yva6T8pZL3m4fPCeWsuvEyx2M-80,980
127
123
  pyxcp/cpp_ext/extension_wrapper.cpp,sha256=XHpMp0e1gNwAiNquAXuyd2fXnlqbEu5V7zCP_SNvWKs,4755
128
- pyxcp/cpp_ext/cpp_ext.cpython-312-darwin.so,sha256=eIk77ElRY2MpQOD0_dtT8BuvSffqHUZN1VHyjkXazcM,321600
124
+ pyxcp/cpp_ext/cpp_ext.cpython-312-darwin.so,sha256=UKficUShWGdbsoxPhUFPOaYUS4dkqnJ-HvWn3DTcXjw,321440
129
125
  pyxcp/cpp_ext/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
130
126
  pyxcp/cpp_ext/helper.hpp,sha256=ONAsVupIqqmNDp8bgGWS0TfSYeCFkk3kwwZbbqsh0HQ,7813
131
127
  pyxcp/cpp_ext/bin.hpp,sha256=0CatarJ7jFewlg9EIxsDPxC4wnORHutx-1PLHpf9iqw,2457
132
- pyxcp/cpp_ext/cpp_ext.cpython-311-darwin.so,sha256=fzNGtnJwuLv2Ner1sg8quHySZ5yh4SqjHM0-I8oHqP8,321600
128
+ pyxcp/cpp_ext/cpp_ext.cpython-311-darwin.so,sha256=82Sn7HnIHykqhK8Any97PvcZiUbrA4XMVbG0ExGHRJ0,321424
133
129
  pyxcp/cpp_ext/daqlist.hpp,sha256=Q1Gejo8i1rP2PzyUh4UHJ2z-kG0WNnkbBj7N8DAdzaM,7071
134
- pyxcp/cpp_ext/cpp_ext.cpython-310-darwin.so,sha256=5sPtzwLXzXBbJ2zI2kGk0gF83xnDHvKbt0XasjPfe1c,321520
130
+ pyxcp/cpp_ext/cpp_ext.cpython-310-darwin.so,sha256=qPV9eNVkRL8z10bnT72IPS_ycDt92S_E2P2fUrctwOQ,321344
131
+ pyxcp-0.23.9.dist-info/RECORD,,
132
+ pyxcp-0.23.9.dist-info/LICENSE,sha256=46mU2C5kSwOnkqkw9XQAJlhBL2JAf1_uCD8lVcXyMRg,7652
133
+ pyxcp-0.23.9.dist-info/WHEEL,sha256=F-Ac6CTANed3x6yT1zUARTuatIT2Q9bQ5nEN9psYMVw,134
134
+ pyxcp-0.23.9.dist-info/entry_points.txt,sha256=LkHsEwubm30s4oiyCy0cKj6k97ALvQ6KjAVdyEcqu7g,358
135
+ pyxcp-0.23.9.dist-info/METADATA,sha256=KKZRladjwl9oGnbUyLaMsnLGa65Px9aQe_2uHaentWo,12718
File without changes