class AiboCamera(Camera): """ """ def __init__(self, robot, visionSystem = None, tcp = 1): """ """ self.robot = robot self.robot.setRemoteControl("Raw Cam Server", "on") self.thread = None time.sleep(1) self._dev = AiboCam( self.robot.host, self.robot.PORT["Raw Cam Server"], tcp) # connect vision system: -------------------------- self.vision = visionSystem self.vision.registerCameraDevice(self._dev) self.width = self.vision.getWidth() self.height = self.vision.getHeight() self.depth = self.vision.getDepth() self._cbuf = self.vision.getMMap() self.data = CBuffer(self._cbuf) self.rgb = (0, 1, 2) # offsets to RGB self.format = "RGB" Camera.__init__(self, self.width, self.height, self.depth, "Aibo Camera View") self.subtype = "aibo" self.data = CBuffer(self._cbuf) self.thread = CameraThread(self) self.thread.start() def update(self): if self.thread: self._dev.updateMMap(1) # read and map self.processAll() # need to process filters def destroy(self): self.thread.join()
class AiboCamera(Camera): """ """ def __init__(self, robot, visionSystem=None, tcp=1): """ """ self.robot = robot self.robot.setRemoteControl("Raw Cam Server", "on") time.sleep(1) self._dev = AiboCam(self.robot.host, self.robot.PORT["Raw Cam Server"], tcp) # connect vision system: -------------------------- self.vision = visionSystem self.vision.registerCameraDevice(self._dev) self.width = self.vision.getWidth() self.height = self.vision.getHeight() self.depth = self.vision.getDepth() self._cbuf = self.vision.getMMap() self.data = CBuffer(self._cbuf) self.rgb = (0, 1, 2) # offsets to RGB self.format = "RGB" Camera.__init__(self, self.width, self.height, self.depth, "Aibo Camera View") self.subtype = "aibo" self.data = CBuffer(self._cbuf) def update(self): """ This is called very often, or as fast as possible. """ if not self.active: return self._dev.updateMMap(1) # read and map very often self.processAll() # need to process filters
def __init__(self, robot, visionSystem=None, tcp=1): """ """ self.robot = robot self.robot.setRemoteControl("Raw Cam Server", "on") time.sleep(1) self._dev = AiboCam(self.robot.host, self.robot.PORT["Raw Cam Server"], tcp) # connect vision system: -------------------------- self.vision = visionSystem self.vision.registerCameraDevice(self._dev) self.width = self.vision.getWidth() self.height = self.vision.getHeight() self.depth = self.vision.getDepth() self._cbuf = self.vision.getMMap() self.data = CBuffer(self._cbuf) self.rgb = (0, 1, 2) # offsets to RGB self.format = "RGB" Camera.__init__(self, self.width, self.height, self.depth, "Aibo Camera View", async=1) self.subtype = "aibo" self.data = CBuffer(self._cbuf)
class AiboCamera(Camera): """ """ def __init__(self, robot, visionSystem=None, tcp=1): """ """ self.robot = robot self.robot.setRemoteControl("Raw Cam Server", "on") time.sleep(1) self._dev = AiboCam(self.robot.host, self.robot.PORT["Raw Cam Server"], tcp) # connect vision system: -------------------------- self.vision = visionSystem self.vision.registerCameraDevice(self._dev) self.width = self.vision.getWidth() self.height = self.vision.getHeight() self.depth = self.vision.getDepth() self._cbuf = self.vision.getMMap() self.data = CBuffer(self._cbuf) self.rgb = (0, 1, 2) # offsets to RGB self.format = "RGB" Camera.__init__(self, self.width, self.height, self.depth, "Aibo Camera View", async=1) self.subtype = "aibo" self.data = CBuffer(self._cbuf) def update(self): """ This is called very often, or as fast as possible. """ if not self.active: return self._dev.updateMMap(1) # read and map very often self.processAll() # need to process filters