2020
2121import collections
2222import datetime
23- import fractions
2423import glob
2524import os
2625import re
@@ -972,13 +971,11 @@ def read(self, start_sample, end_sample, channel_name, sub_channel=None):
972971 # first get the names of all possible files with data
973972 subdir_cadence_secs = file_properties ["subdir_cadence_secs" ]
974973 file_cadence_millisecs = file_properties ["file_cadence_millisecs" ]
975- sample_rate_numerator = file_properties ["sample_rate_numerator" ]
976- sample_rate_denominator = file_properties ["sample_rate_denominator" ]
974+ sample_rate = file_properties ["sample_rate" ]
977975 filepaths = self ._get_file_list (
978976 start_sample ,
979977 end_sample ,
980- sample_rate_numerator ,
981- sample_rate_denominator ,
978+ sample_rate ,
982979 subdir_cadence_secs ,
983980 file_cadence_millisecs ,
984981 )
@@ -1107,14 +1104,12 @@ def get_properties(self, channel_name, sample=None):
11071104
11081105 subdir_cadence_secs = global_properties ["subdir_cadence_secs" ]
11091106 file_cadence_millisecs = global_properties ["file_cadence_millisecs" ]
1110- sample_rate_numerator = global_properties ["sample_rate_numerator" ]
1111- sample_rate_denominator = global_properties ["sample_rate_denominator" ]
1107+ sample_rate = global_properties ["sample_rate" ]
11121108
11131109 file_list = self ._get_file_list (
11141110 sample ,
11151111 sample ,
1116- sample_rate_numerator ,
1117- sample_rate_denominator ,
1112+ sample_rate ,
11181113 subdir_cadence_secs ,
11191114 file_cadence_millisecs ,
11201115 )
@@ -1310,13 +1305,11 @@ def get_continuous_blocks(self, start_sample, end_sample, channel_name):
13101305 file_properties = self .get_properties (channel_name )
13111306 subdir_cadence_secs = file_properties ["subdir_cadence_secs" ]
13121307 file_cadence_millisecs = file_properties ["file_cadence_millisecs" ]
1313- sample_rate_numerator = file_properties ["sample_rate_numerator" ]
1314- sample_rate_denominator = file_properties ["sample_rate_denominator" ]
1308+ sample_rate = file_properties ["sample_rate" ]
13151309 filepaths = self ._get_file_list (
13161310 start_sample ,
13171311 end_sample ,
1318- sample_rate_numerator ,
1319- sample_rate_denominator ,
1312+ sample_rate ,
13201313 subdir_cadence_secs ,
13211314 file_cadence_millisecs ,
13221315 )
@@ -1356,13 +1349,11 @@ def get_last_write(self, channel_name):
13561349 file_properties = self .get_properties (channel_name )
13571350 subdir_cadence_seconds = file_properties ["subdir_cadence_secs" ]
13581351 file_cadence_millisecs = file_properties ["file_cadence_millisecs" ]
1359- sample_rate_numerator = file_properties ["sample_rate_numerator" ]
1360- sample_rate_denominator = file_properties ["sample_rate_denominator" ]
1352+ sample_rate = file_properties ["sample_rate" ]
13611353 file_list = self ._get_file_list (
13621354 last_sample - 1 ,
13631355 last_sample ,
1364- sample_rate_numerator ,
1365- sample_rate_denominator ,
1356+ sample_rate ,
13661357 subdir_cadence_seconds ,
13671358 file_cadence_millisecs ,
13681359 )
@@ -1615,8 +1606,7 @@ def read_vector_c81d(
16151606 def _get_file_list (
16161607 sample0 ,
16171608 sample1 ,
1618- sample_rate_numerator ,
1619- sample_rate_denominator ,
1609+ sample_rate ,
16201610 subdir_cadence_seconds ,
16211611 file_cadence_millisecs ,
16221612 ):
@@ -1636,11 +1626,8 @@ def _get_file_list(
16361626 Sample index for end of read (inclusive), given in the number of
16371627 samples since the epoch (time_since_epoch*sample_rate).
16381628
1639- sample_rate_numerator : int
1640- Numerator of sample rate in Hz.
1641-
1642- sample_rate_denominator : int
1643- Denominator of sample rate in Hz.
1629+ sample_rate : fractions.Fraction | first argument to ``util.get_samplerate_frac``
1630+ Sample rate in Hz.
16441631
16451632 subdir_cadence_secs : int
16461633 Number of seconds of data found in one subdir. For example, 3600
@@ -1661,13 +1648,9 @@ def _get_file_list(
16611648 if (sample1 - sample0 ) > 1e12 :
16621649 warnstr = "Requested read size, %i samples, is very large"
16631650 warnings .warn (warnstr % (sample1 - sample0 ), RuntimeWarning )
1664- start_ts , picoseconds = _py_rf_write_hdf5 .get_timestamp_floor (
1665- sample0 , sample_rate_numerator , sample_rate_denominator
1666- )
1651+ start_ts , picoseconds = util .sample_to_time_floor (sample0 , sample_rate )
16671652 start_msts = start_ts * 1000 + picoseconds // 1000000000
1668- end_ts , picoseconds = _py_rf_write_hdf5 .get_timestamp_floor (
1669- sample1 , sample_rate_numerator , sample_rate_denominator
1670- )
1653+ end_ts , picoseconds = util .sample_to_time_floor (sample1 , sample_rate )
16711654 end_msts = end_ts * 1000 + picoseconds // 1000000000
16721655
16731656 # get subdirectory start and end ts
0 commit comments