Skip to content

Commit 146b154

Browse files
committed
tidy variable and function names
1 parent 070c20b commit 146b154

File tree

3 files changed

+69
-63
lines changed

3 files changed

+69
-63
lines changed

wfdb/io/_header.py

Lines changed: 58 additions & 55 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ class FieldSpecification(object):
1212
Class for storing specifications for wfdb record fields
1313
"""
1414
def __init__(self, allowed_types, delimiter, dependency, write_req,
15-
read_def, write_def):
15+
read_default, write_def):
1616
# Data types the field (or its elements) can be
1717
self.allowed_types = allowed_types
1818
# The text delimiter that preceeds the field if it is a field that gets written to header files.
@@ -22,7 +22,7 @@ def __init__(self, allowed_types, delimiter, dependency, write_req,
2222
# Whether the field is always required for writing a header (more stringent than origin WFDB library)
2323
self.write_req = write_req
2424
# The default value for the field when read if any
25-
self.read_def = read_def
25+
self.read_default = read_default
2626
# The default value for the field to fill in before writing if any
2727
self.write_def = write_def
2828

@@ -466,7 +466,7 @@ def get_sig_segments(self, sig_name=None):
466466
Only works if information about the segments has been read in
467467
"""
468468
if self.segments is None:
469-
raise Exception("The MultiRecord's segments must be read in before this method is called. ie. Call rdheader() with rd_segments=True")
469+
raise Exception("The MultiRecord's segments must be read in before this method is called. ie. Call rdheader() with rsegment_fieldsments=True")
470470

471471
# Default value = all signal names.
472472
if sig_name is None:
@@ -489,7 +489,7 @@ def get_sig_segments(self, sig_name=None):
489489
# Get the signal names for the entire record
490490
def get_sig_name(self):
491491
if self.segments is None:
492-
raise Exception("The MultiRecord's segments must be read in before this method is called. ie. Call rdheader() with rd_segments=True")
492+
raise Exception("The MultiRecord's segments must be read in before this method is called. ie. Call rdheader() with rsegment_fieldsments=True")
493493

494494
if self.layout == 'fixed':
495495
for i in range(self.n_seg):
@@ -533,106 +533,109 @@ def get_header_lines(record_name, pb_dir):
533533
return header_lines, comment_lines
534534

535535

536-
# Extract fields from a record line string into a dictionary
537-
def read_rec_line(rec_line):
536+
def _read_record_line(record_line):
537+
"""
538+
Extract fields from a record line string into a dictionary
538539
540+
"""
539541
# Dictionary for record fields
540-
d_rec = {}
542+
record_fields = {}
541543

542544
# Read string fields from record line
543-
(d_rec['record_name'], d_rec['n_seg'], d_rec['n_sig'], d_rec['fs'],
544-
d_rec['counter_freq'], d_rec['base_counter'], d_rec['sig_len'],
545-
d_rec['base_time'], d_rec['base_date']) = re.findall(rx_record, rec_line)[0]
545+
(record_fields['record_name'], record_fields['n_seg'],
546+
record_fields['n_sig'], record_fields['fs'],
547+
record_fields['counter_freq'], record_fields['base_counter'],
548+
record_fields['sig_len'], record_fields['base_time'],
549+
record_fields['base_date']) = re.findall(rx_record, record_line)[0]
546550

547551
for field in rec_field_specs:
548-
# Replace empty strings with their read defaults (which are mostly None)
549-
if d_rec[field] == '':
550-
d_rec[field] = rec_field_specs[field].read_def
551-
# Typecast non-empty strings for numerical fields
552+
# Replace empty strings with their read defaults (which are
553+
# mostly None)
554+
if record_fields[field] == '':
555+
record_fields[field] = rec_field_specs[field].read_default
556+
# Typecast non-empty strings for numerical and date/time fields
552557
else:
553558
if rec_field_specs[field].allowed_types is int_types:
554-
d_rec[field] = int(d_rec[field])
559+
record_fields[field] = int(record_fields[field])
555560
# fs may be read as float or int
556561
elif field == 'fs':
557-
fs = float(d_rec['fs'])
562+
fs = float(record_fields['fs'])
558563
if round(fs, 8) == float(int(fs)):
559564
fs = int(fs)
560-
d_rec['fs'] = fs
565+
record_fields['fs'] = fs
566+
567+
return record_fields
561568

562-
return d_rec
563569

564570
# Extract fields from signal line strings into a dictionary
565-
def read_sig_lines(sig_lines):
571+
def _read_signal_lines(signal_lines):
566572
# Dictionary for signal fields
567-
d_sig = {}
573+
signal_fields = {}
568574

569575
# Each dictionary field is a list
570576
for field in sig_field_specs:
571-
d_sig[field] = [None]*len(sig_lines)
577+
signal_fields[field] = [None]*len(signal_lines)
572578

573579
# Read string fields from signal line
574-
for i in range(0, len(sig_lines)):
575-
(d_sig['file_name'][i], d_sig['fmt'][i],
576-
d_sig['samps_per_frame'][i],
577-
d_sig['skew'][i],
578-
d_sig['byte_offset'][i],
579-
d_sig['adc_gain'][i],
580-
d_sig['baseline'][i],
581-
d_sig['units'][i],
582-
d_sig['adc_res'][i],
583-
d_sig['adc_zero'][i],
584-
d_sig['init_value'][i],
585-
d_sig['checksum'][i],
586-
d_sig['block_size'][i],
587-
d_sig['sig_name'][i]) = rx_signal.findall(sig_lines[i])[0]
580+
for i in range(len(signal_lines)):
581+
(signal_fields['file_name'][i], signal_fields['fmt'][i],
582+
signal_fields['samps_per_frame'][i], signal_fields['skew'][i],
583+
signal_fields['byte_offset'][i], signal_fields['adc_gain'][i],
584+
signal_fields['baseline'][i], signal_fields['units'][i],
585+
signal_fields['adc_res'][i], signal_fields['adc_zero'][i],
586+
signal_fields['init_value'][i], signal_fields['checksum'][i],
587+
signal_fields['block_size'][i],
588+
signal_fields['sig_name'][i]) = rx_signal.findall(signal_lines[i])[0]
588589

589590
for field in sig_field_specs:
590591
# Replace empty strings with their read defaults (which are mostly None)
591592
# Note: Never set a field to None. [None]* n_sig is accurate, indicating
592593
# that different channels can be present or missing.
593-
if d_sig[field][i] == '':
594-
d_sig[field][i] = sig_field_specs[field].read_def
594+
if signal_fields[field][i] == '':
595+
signal_fields[field][i] = sig_field_specs[field].read_default
595596

596597
# Special case: missing baseline defaults to ADCzero if present
597-
if field == 'baseline' and d_sig['adc_zero'][i] != '':
598-
d_sig['baseline'][i] = int(d_sig['adc_zero'][i])
598+
if field == 'baseline' and signal_fields['adc_zero'][i] != '':
599+
signal_fields['baseline'][i] = int(signal_fields['adc_zero'][i])
599600
# Typecast non-empty strings for numerical fields
600601
else:
601602
if sig_field_specs[field].allowed_types is int_types:
602-
d_sig[field][i] = int(d_sig[field][i])
603+
signal_fields[field][i] = int(signal_fields[field][i])
603604
elif sig_field_specs[field].allowed_types is float_types:
604-
d_sig[field][i] = float(d_sig[field][i])
605+
signal_fields[field][i] = float(signal_fields[field][i])
605606
# Special case: gain of 0 means 200
606-
if field == 'adc_gain' and d_sig['adc_gain'][i] == 0:
607-
d_sig['adc_gain'][i] = 200.
607+
if field == 'adc_gain' and signal_fields['adc_gain'][i] == 0:
608+
signal_fields['adc_gain'][i] = 200.
608609

609-
return d_sig
610+
return signal_fields
610611

611612

612-
# Extract fields from segment line strings into a dictionary
613-
def read_seg_lines(seg_lines):
613+
def _read_segment_lines(segment_lines):
614+
"""
615+
Extract fields from segment line strings into a dictionary
614616
615-
# Dictionary for signal fields
616-
d_seg = {}
617+
"""
618+
# Dictionary for segment fields
619+
segment_fields = {}
617620

618621
# Each dictionary field is a list
619622
for field in seg_field_specs:
620-
d_seg[field] = [None]*len(seg_lines)
623+
segment_fields[field] = [None]*len(segment_lines)
621624

622625
# Read string fields from signal line
623-
for i in range(0, len(seg_lines)):
624-
(d_seg['seg_name'][i], d_seg['seg_len'][i]) = rx_segment.findall(seg_lines[i])[0]
626+
for i in range(0, len(segment_lines)):
627+
(segment_fields['seg_name'][i], segment_fields['seg_len'][i]) = rx_segment.findall(segment_lines[i])[0]
625628

626629
for field in seg_field_specs:
627630
# Replace empty strings with their read defaults (which are mostly None)
628-
if d_seg[field][i] == '':
629-
d_seg[field][i] = seg_field_specs[field].read_def
631+
if segment_fields[field][i] == '':
632+
segment_fields[field][i] = seg_field_specs[field].read_default
630633
# Typecast non-empty strings for numerical field
631634
else:
632635
if field == 'seg_len':
633-
d_seg[field][i] = int(d_seg[field][i])
636+
segment_fields[field][i] = int(segment_fields[field][i])
634637

635-
return d_seg
638+
return segment_fields
636639

637640

638641
def lines_to_file(file_name, write_dir, lines):

wfdb/io/download.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,12 @@
99
db_index_url = 'http://physionet.org/physiobank/database/'
1010

1111

12-
# Read a header file from physiobank
12+
1313
def stream_header(record_name, pb_dir):
14+
"""
15+
Read a header file from physiobank
1416
17+
"""
1518
# Full url of header location
1619
url = posixpath.join(db_index_url, pb_dir, record_name+'.hea')
1720
r = requests.get(url)

wfdb/io/record.py

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -107,7 +107,7 @@ def check_field(self, field, channels=None):
107107
raise ValueError('sig_len must be a non-negative integer')
108108
elif field == 'base_time':
109109
try:
110-
_ = datetime.datetime.strptime(self.base_time, '%H:%M/%S.%f')
110+
_ = datetime.datetime.strptime(self.base_time, '%H:%M:%S.%f')
111111
except ValueError:
112112
_ = datetime.datetime.strptime(self.base_time, '%H:%M/%S')
113113
elif field == 'base_date':
@@ -852,19 +852,19 @@ def rdheader(record_name, pb_dir=None, rd_segments=False):
852852
header_lines, comment_lines = _header.get_header_lines(record_name, pb_dir)
853853

854854
# Get fields from record line
855-
d_rec = _header.read_rec_line(header_lines[0])
855+
record_fields = _header._read_record_line(header_lines[0])
856856

857857
# Processing according to whether the header is single or multi segment
858858

859859
# Single segment header - Process signal specification lines
860-
if d_rec['n_seg'] is None:
860+
if record_fields['n_seg'] is None:
861861
# Create a single-segment WFDB record object
862862
record = Record()
863863

864864
# There is at least one channel
865865
if len(header_lines)>1:
866866
# Read the fields from the signal lines
867-
d_sig = _header.read_sig_lines(header_lines[1:])
867+
d_sig = _header._read_signal_lines(header_lines[1:])
868868
# Set the object's signal line fields
869869
for field in _header.sig_field_specs:
870870
setattr(record, field, d_sig[field])
@@ -873,19 +873,19 @@ def rdheader(record_name, pb_dir=None, rd_segments=False):
873873
for field in _header.rec_field_specs:
874874
if field == 'n_seg':
875875
continue
876-
setattr(record, field, d_rec[field])
876+
setattr(record, field, record_fields[field])
877877
# Multi segment header - Process segment specification lines
878878
else:
879879
# Create a multi-segment WFDB record object
880880
record = MultiRecord()
881881
# Read the fields from the segment lines
882-
d_seg = _header.read_seg_lines(header_lines[1:])
882+
d_seg = _header._read_segment_lines(header_lines[1:])
883883
# Set the object's segment line fields
884884
for field in _header.seg_field_specs:
885885
setattr(record, field, d_seg[field])
886886
# Set the objects' record line fields
887887
for field in _header.rec_field_specs:
888-
setattr(record, field, d_rec[field])
888+
setattr(record, field, record_fields[field])
889889
# Determine whether the record is fixed or variable
890890
if record.seg_len[0] == 0:
891891
record.layout = 'variable'

0 commit comments

Comments
 (0)