@@ -607,7 +607,7 @@ def multi_to_single(self):
607
607
#------------------- Reading Records -------------------#
608
608
609
609
# Read a WFDB single or multi segment record. Return a Record or MultiRecord object
610
- def rdsamp (recordname , sampfrom = 0 , sampto = None , channels = None , physical = True , stackmulti = True ):
610
+ def rdsamp (recordname , sampfrom = 0 , sampto = None , channels = None , physical = True , stackmulti = True , returnobj = True ):
611
611
612
612
# If the user specifies a sample or signal range, some fields
613
613
# of the output object will be updated from the fields directly
@@ -762,38 +762,43 @@ def wanted_siginds(wanted_signames, record_signames):
762
762
return [record_signames .index (s ) for s in contained_signals ]
763
763
764
764
765
- # A simple version of rdsamp for the average user
765
+ # A simple version of rdsamp for ease of use
766
766
# Return the physical signals and a few essential fields
767
767
def srdsamp (recordname , sampfrom = 0 , sampto = None , channels = None ):
768
768
769
769
record = rdsamp (recordname , sampfrom , sampto , channels , True , True )
770
770
771
771
signals = record .p_signals
772
772
fields = {}
773
- for field in ['fs' ,'units' ,'signame' ]:
773
+ for field in ['fs' ,'units' ,'signame' , 'comments' ]:
774
774
fields [field ] = getattr (record , field )
775
775
776
776
return signals , fields
777
777
778
778
#------------------- /Reading Records -------------------#
779
779
780
780
781
- # Gateway function for single segment wrsamp
782
- def wrsamp (recordname , p_signals = None , d_signals = None , fs , units , signames , fmt = None , comments = [] ):
781
+ # Simple function for single segment wrsamp
782
+ def wrsamp (recordname , fs , units , signames , p_signals = None , d_signals = None , fmt = None , comments = None ):
783
783
784
784
# Check input field combinations
785
785
if p_signals is not None and d_signals is not None :
786
786
sys .exit ('Must only give one of the inputs: p_signals or d_signals' )
787
787
788
-
789
-
790
788
# Create the Record object
791
789
record = Record (recordname = recordname , p_signals = p_signals , fs = fs , fmt = fmt , units = units , signame = signames , comments = comments )
792
- # 2. Compute optimal fields to store the digital signal, carry out adc, and set the fields.
793
- record .set_d_features (do_adc = 1 )
794
- # 3. Set default values of any missing field dependencies
790
+
791
+ # Depending on whether d_signals or p_signals was used, set other required features.
792
+ if p_signals is not none :
793
+ # Compute optimal fields to store the digital signal, carry out adc, and set the fields.
794
+ record .set_d_features (do_adc = 1 )
795
+ else :
796
+ # No need to do adc. Just use d_signals to set the fields
797
+ record .set_d_features ()
798
+
799
+ # Set default values of any missing field dependencies
795
800
record .setdefaults ()
796
- # 4. Write the record files - header and associated dat
801
+ # Write the record files - header and associated dat
797
802
record .wrsamp ()
798
803
799
804
0 commit comments