def on_stdout_received(self, data):

        data, self.intermediate_stdout_buffer = self._split(self.intermediate_stdout_buffer + data)

        self.stdout_buffer += data
        self.interleaved_buffer += data
        self.log_file.write(data)

        # Get the decoded Python str
        decoded_data = self._decode(data)

        # Emit event with decoded Python str
        self.event_queue.put(ExecutionEvent(
            'STDOUT',
            job_id=self.job_id,
            stage_label=self.stage_label,
            data=decoded_data))
:type data: encoded bytes
dataset/ETHPy150Open catkin/catkin_tools/catkin_tools/execution/io.py/IOBufferProtocol.on_stdout_received