def push_frame(self, ibit): self.iframe.append(ibit) if len(self.iframe) == 1 * 8: frame = ''.join(chr(utils.to_byte(bits)) for bits in utils.group(self.iframe, 8)) try: self.iframes.put(frame, block=False) except Queue.Full: pass self.iframe.clear()
def push_frame(self, ibit): self.iframe.append(ibit) if len(self.iframe) == 1 * 8: frame = ''.join( chr(utils.to_byte(bits)) for bits in utils.group(self.iframe, 8)) try: self.iframes.put(frame, block=False) except Queue.Full: pass self.iframe.clear()
def process_input(self, ibit): if not self._in_frame: if self._flag_detector.feed(ibit): self._in_frame = True else: flag = self._flag_detector.feed(ibit) stuffing = self._stuffing_bit_detector.feed(ibit) if flag or not stuffing: self._iframe.append(ibit) if flag: frame = ''.join(chr(utils.to_byte(bits)) for bits in utils.group(self._iframe, 8))[:-1] if self.fit(frame, self._ibuffer_used): self._iframes.append(frame) self._ibuffer_used += len(frame) self._iframe.clear() self._in_frame = False
def process_input(self, ibit): self.frame_ended = False if not self._in_frame: if self._flag_detector.feed(ibit): self._in_frame = True else: flag = self._flag_detector.feed(ibit) stuffing = self._stuffing_bit_detector.feed(ibit) if flag or not stuffing: self._iframe.append(ibit) if flag: self.n_detected_frames += 1 self.frame_ended = True frame = ''.join(chr(utils.to_byte(bits)) for bits in utils.group(self._iframe, 8))[:-1] if self.ok_to_handout(frame): self.handout(frame) else: self.discard(frame) self._iframe.clear() self._in_frame = False
def process_input(self, ibit): self.frame_ended = False if not self._in_frame: if self._flag_detector.feed(ibit): self._in_frame = True else: flag = self._flag_detector.feed(ibit) stuffing = self._stuffing_bit_detector.feed(ibit) if flag or not stuffing: self._iframe.append(ibit) if flag: self.n_detected_frames += 1 self.frame_ended = True frame = ''.join( chr(utils.to_byte(bits)) for bits in utils.group(self._iframe, 8))[:-1] if self.ok_to_handout(frame): self.handout(frame) else: self.discard(frame) self._iframe.clear() self._in_frame = False