<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def process_input(self, encoded_stream, value):
 """Process or drop a graph input. This method asynchronously queued an item to be processed by the sensorgraph worker task in _reset_vector. It must be called from inside the emulation loop and returns immediately before the input is processed. """


        if not self.enabled:
            return

        if isinstance(encoded_stream, str):
            stream = DataStream.FromString(encoded_stream)
            encoded_stream = stream.encode()
        elif isinstance(encoded_stream, DataStream):
            stream = encoded_stream
            encoded_stream = stream.encode()
        else:
            stream = DataStream.FromEncoded(encoded_stream)

        reading = IOTileReading(self.get_timestamp(), encoded_stream, value)

        self._inputs.put_nowait((stream, reading))