def compute(self, inputs, outputs):
    """
    Get the next record from the queue and encode it.
    @param inputs This parameter is ignored. The data comes from the queue
    @param outputs See definition in the spec above.
    """
    if len(self.queue) > 0:
      data = self.queue.pop()

    else:
      raise Exception("CoordinateSensor: No data to encode: queue is empty")

    outputs["resetOut"][0] = data["reset"]
    outputs["sequenceIdOut"][0] = data["sequenceId"]
    sdr = self.encoder.encode((numpy.array(data["coordinate"]), self.radius))
    outputs["dataOut"][:] = sdr

    if self.verbosity > 1:
      print "CoordinateSensor outputs:"
      print "Coordinate = ", data["coordinate"]
      print "sequenceIdOut: ", outputs["sequenceIdOut"]
      print "resetOut: ", outputs["resetOut"]
      print "dataOut: ", outputs["dataOut"].nonzero()[0]
Get the next record from the queue and encode it.
    @param inputs This parameter is ignored. The data comes from the queue
    @param outputs See definition in the spec above.