def __init__(self, datawindow_ms=60000, msgwindow_ms=60000, data_preprocessor=None, stimulus_preprocessor=None, send_signalquality=True, timeout_ms=100, mintime_ms=50, fs=None, U=None, sample2timestamp='lower_bound_tracker', clientid=None):
    self.timeout_ms = timeout_ms
    self.mintime_ms = mintime_ms
    self.datawindow_ms = datawindow_ms
    self.msgwindow_ms = msgwindow_ms
    self.host = None
    self.port = (- 1)
    self.U = (UtopiaClient(clientid) if (U is None) else U)
    self.t0 = self.getTimeStamp()
    self.msg_ringbuffer = deque()
    self.msg_timestamp = None
    self.data_ringbuffer = None
    self.data_timestamp = None
    self.sample2timestamp = sample2timestamp
    self.data_preprocessor = data_preprocessor
    self.stimulus_ringbuffer = None
    self.stimulus_timestamp = None
    self.stimulus_preprocessor = stimulus_preprocessor
    self.raw_fs = fs
    self.fs = None
    self.newmsgs = []
    self.send_signalquality = send_signalquality
    self.last_sigquality_ts = None
    self.last_log_ts = None
    self.send_sigquality_interval = 1000
    self.noise2sig_halflife_ms = (5000, 500)
    self.raw_power = None
    self.preproc_power = None
def __init__(self, datawindow_ms=60000, msgwindow_ms=60000, data_preprocessor=None, stimulus_preprocessor=None, send_signalquality=True, timeout_ms=100, mintime_ms=50, fs=None, U=None, sample2timestamp='lower_bound_tracker', clientid=None):
    self.timeout_ms = timeout_ms
    self.mintime_ms = mintime_ms
    self.datawindow_ms = datawindow_ms
    self.msgwindow_ms = msgwindow_ms
    self.host = None
    self.port = (- 1)
    self.U = (UtopiaClient(clientid) if (U is None) else U)
    self.t0 = self.getTimeStamp()
    self.msg_ringbuffer = deque()
    self.msg_timestamp = None
    self.data_ringbuffer = None
    self.data_timestamp = None
    self.sample2timestamp = sample2timestamp
    self.data_preprocessor = data_preprocessor
    self.stimulus_ringbuffer = None
    self.stimulus_timestamp = None
    self.stimulus_preprocessor = stimulus_preprocessor
    self.raw_fs = fs
    self.fs = None
    self.newmsgs = []
    self.send_signalquality = send_signalquality
    self.last_sigquality_ts = None
    self.last_log_ts = None
    self.send_sigquality_interval = 1000
    self.noise2sig_halflife_ms = (5000, 500)
    self.raw_power = None
    self.preproc_power = None