def local2RemoteTime(self,local_time=None): """ Converts a local time (sec.msec format) to the corresponding remote computer time, using the current offset and drift measures. """ if local_time is None: local_time=Computer.currentSec() return self.getDrift()*local_time+self.getOffset()
def local2RemoteTime(self, local_time=None): """ Converts a local time (sec.msec format) to the corresponding remote computer time, using the current offset and drift measures. """ if local_time is None: local_time = Computer.currentSec() return self.getDrift() * local_time + self.getOffset()
def test_getTime(self): ta = Computer.currentSec() tb = Computer.currentTime() tc = Computer.getTime() tp = getTime() assert ta < tb < tc < tp assert tp - ta < 0.002
def sync(self): sync_count = self.sync_batch_size sync_data = [ 'SYNC_REQ', ] feed = self.feed unpack = self.unpack pack = self.pack recvfrom = self.sock.recvfrom rcvBufferLength = self._rcvBufferLength remote_address = self.remote_iohub_address sendto = self.sock.sendto min_delay = 1000.0 min_local_time = 0.0 min_remote_time = 0.0 for s in xrange(sync_count): # send sync request sync_start = Computer.currentSec() sendto(pack(sync_data), remote_address) sync_start2 = Computer.currentSec() # get reply feed(recvfrom(rcvBufferLength)[0]) sync_rep, remote_time = unpack() sync_end = Computer.currentSec() rtt = sync_end - (sync_start + sync_start2) / 2.0 old_delay = min_delay min_delay = min(min_delay, rtt) if old_delay != min_delay: min_local_time = (sync_end + sync_start) / 2.0 min_remote_time = remote_time return min_delay, min_local_time, min_remote_time
def sync(self): sync_count=self.sync_batch_size sync_data=['SYNC_REQ',] feed=self.feed unpack=self.unpack pack=self.pack recvfrom=self.sock.recvfrom rcvBufferLength=self._rcvBufferLength remote_address=self.remote_iohub_address sendto=self.sock.sendto min_delay=1000.0 min_local_time=0.0 min_remote_time=0.0 for s in range(sync_count): # send sync request sync_start=Computer.currentSec() sendto(pack(sync_data),remote_address) sync_start2=Computer.currentSec() # get reply feed(recvfrom(rcvBufferLength)[0]) sync_rep,remote_time=unpack() sync_end=Computer.currentSec() rtt=sync_end-(sync_start+sync_start2)/2.0 old_delay=min_delay min_delay=min(min_delay,rtt) if old_delay!=min_delay: min_local_time=(sync_end+sync_start)/2.0 min_remote_time=remote_time return min_delay, min_local_time, min_remote_time
def test_getTime(self): ta = Computer.currentSec() tb = Computer.currentTime() tc = Computer.getTime() tp = getTime() assert ta <= tb <= tc <= tp assert tp - ta < 0.002 ta = getTime() tb = self.io.getTime() tc = self.io.getTime() tp = getTime() assert ta <= tb <= tc <= tp assert tp - ta < 0.01
def test_getTime(self): ta = Computer.currentSec() tb = Computer.currentTime() tc = Computer.getTime() tp = getTime() assert ta <= tb <= tc <= tp assert tp - ta < 0.002 ta = getTime() tb = self.io.getTime() tc = self.io.getTime() tp = getTime() assert ta <= tb <= tc <= tp assert tp - ta < 0.01