code: def trigger_streamer(self, index):
          
  
          self._logger.debug("trigger_streamer RPC called on streamer %d", index)
  
          if index >= len(self.graph.streamers):
              return _pack_sgerror(SensorGraphError.STREAMER_NOT_ALLOCATED)
  
          if index in self._stream_manager.in_progress():
              return _pack_sgerror(SensorGraphError.STREAM_ALREADY_IN_PROGRESS)
  
          streamer = self.graph.streamers[index]
          if not streamer.triggered(manual=True):
              return _pack_sgerror(SensorGraphError.STREAMER_HAS_NO_NEW_DATA)
  
          self._logger.debug("calling mark_streamer on streamer %d from trigger_streamer RPC", index)
          self.graph.mark_streamer(index)
  
          self.process_streamers()
  
          return Error.NO_ERROR
docs: Pass a streamer to the stream manager if it has data.