#NEWLINE# def __new__( cls , signal , units = None , dtype = None , copy = True , t_start = ( 0 * pq . s ) , sampling_rate = None , sampling_period = None , name = None , file_origin = None , description = None , channel_index = None , **annotations ) : #NEWLINE# #INDENT# '\n        Constructs new :class:`AnalogSignalArray` from data.\n\n        This is called whenever a new class:`AnalogSignalArray` is created from\n        the constructor, but not when slicing.\n        ' #NEWLINE# if ( isinstance ( signal , pq . Quantity ) and ( units is not None ) and ( units != signal . units ) ) : #NEWLINE# #INDENT# signal = signal . rescale ( units ) #NEWLINE# #UNINDENT# if ( ( not units ) and hasattr ( signal , 'units' ) ) : #NEWLINE# #INDENT# units = signal . units #NEWLINE# #UNINDENT# obj = pq . Quantity . __new__ ( cls , signal , units = units , dtype = dtype , copy = copy ) #NEWLINE# obj . t_start = t_start #NEWLINE# obj . sampling_rate = _get_sampling_rate ( sampling_rate , sampling_period ) #NEWLINE# obj . channel_index = channel_index #NEWLINE# obj . segment = None #NEWLINE# obj . recordingchannelgroup = None #NEWLINE# return cls