@@ -608,7 +608,7 @@ def __init__(self, allowedtypes, delimiter, dependency, write_req, read_def, wri
608
608
('siglen' , WFDBheaderspecs (inttypes , ' ' , 'fs' , True , None , None )),
609
609
('basetime' , WFDBheaderspecs ([str ], ' ' , 'siglen' , False , None , '00:00:00' )),
610
610
('basedate' , WFDBheaderspecs ([str ], ' ' , 'basetime' , False , None , None ))])
611
-
611
+
612
612
# Signal specification fields.
613
613
sigfieldspecs = OrderedDict ([('filename' , WFDBheaderspecs ([str ], '' , None , True , None , None )),
614
614
('fmt' , WFDBheaderspecs ([str ], ' ' , 'filename' , True , None , None )),
@@ -631,15 +631,18 @@ def __init__(self, allowedtypes, delimiter, dependency, write_req, read_def, wri
631
631
632
632
633
633
634
- # For storing WFDB Signal definitions.
634
+ # ---------- For storing WFDB Signal definitions ---------- #
635
635
636
- # SignalType class with all its parameters
637
- class SignalType (object ):
638
- def __init__ (self , description , signalnames ):
636
+ # Signal class with all its parameters
637
+ class SignalClass (object ):
638
+ def __init__ (self , abbreviation , description , signalnames ):
639
+ self .abbreviation = abbreviation
639
640
self .description = description
640
641
# names that are assigned to this signal type
641
642
self .signalnames = signalnames
642
-
643
+
644
+ def __str__ (self ):
645
+ return self .abbreviation
643
646
644
647
# Unit scales used for default display scales.
645
648
unitscale = {
@@ -649,28 +652,24 @@ def __init__(self, description, signalnames):
649
652
}
650
653
651
654
# All signal types. Make sure signal names are in lower case.
652
- # Used for:
653
- # - signal search
654
- # - default waveform display
655
- signaltypes = {
656
- #'ANGLE': SignalType('Angle',None, ['angle, pitch, roll, yaw']),
657
- 'BP' : SignalType ('Blood Pressure' , ['bp' ,'abp' ,'pap' ,'cvp' ,]),
658
- 'CO2' : SignalType ('Carbon Dioxide' , ['co2' ]),
659
- 'CO' : SignalType ('Carbon Monoxide' , ['co' ]),
660
- 'ECG' : SignalType ('Electrocardiogram' , ['i' ,'ii' ,'iii' ,'iv' ,'v' ,'avr' ]),
661
- 'EEG' : SignalType ('Electroencephalogram' ,['eeg' ]),
662
- 'EMG' : SignalType ('Electromyograph' , ['emg' ]),
663
- 'EOG' : SignalType ('Electrooculograph' , ['eog' ]),
664
- 'HR' : SignalType ('Heart Rate' , ['hr' ]),
665
- 'MMG' : SignalType ('Magnetomyograph' , ['mmg' ]),
666
- 'O2' : SignalType ('Oxygen' , ['o2' ,'sp02' ]),
667
- 'PLETH' : SignalType ('Plethysmograph' , ['pleth' ]),
668
- 'RESP' : SignalType ('Respiration' , ['resp' ]),
669
- 'SCG' : SignalType ('Seismocardiogram' , ['scg' ]),
670
- 'STAT' : SignalType ('Status' , ['stat' ,'status' ]), # small integers indicating status
671
- 'ST' : SignalType ('ECG ST Segment' , ['st' ]),
672
- 'TEMP' : SignalType ('Temperature' , ['temp' ]),
673
- 'UNKNOWN' : SignalType ('Unknown' , []),
674
- }
655
+ signalclasses = [
656
+ SignalClass ('BP' , 'Blood Pressure' , ['bp' ,'abp' ,'pap' ,'cvp' ,]),
657
+ SignalClass ('CO2' , 'Carbon Dioxide' , ['co2' ]),
658
+ SignalClass ('CO' , 'Carbon Monoxide' , ['co' ]),
659
+ SignalClass ('ECG' , 'Electrocardiogram' , ['i' ,'ii' ,'iii' ,'iv' ,'v' ,'avr' ]),
660
+ SignalClass ('EEG' , 'Electroencephalogram' ,['eeg' ]),
661
+ SignalClass ('EMG' , 'Electromyograph' , ['emg' ]),
662
+ SignalClass ('EOG' , 'Electrooculograph' , ['eog' ]),
663
+ SignalClass ('HR' , 'Heart Rate' , ['hr' ]),
664
+ SignalClass ('MMG' , 'Magnetomyograph' , ['mmg' ]),
665
+ SignalClass ('O2' , 'Oxygen' , ['o2' ,'sp02' ]),
666
+ SignalClass ('PLETH' , 'Plethysmograph' , ['pleth' ]),
667
+ SignalClass ('RESP' , 'Respiration' , ['resp' ]),
668
+ SignalClass ('SCG' , 'Seismocardiogram' , ['scg' ]),
669
+ SignalClass ('STAT' , 'Status' , ['stat' ,'status' ]), # small integers indicating status
670
+ SignalClass ('ST' , 'ECG ST Segment' , ['st' ]),
671
+ SignalClass ('TEMP' , 'Temperature' , ['temp' ]),
672
+ SignalClass ('UNKNOWN' , 'Unknown Class' , []),
673
+ ]
675
674
676
675
0 commit comments