def __init__(self, evt_callback=None): InstrumentDriver.__init__(self, evt_callback) self.bars_client = None self.config = None self._state = DriverState.UNCONFIGURED
def __init__(self): """ method docstring """ InstrumentDriver.__init__(self) self.listen_thread = None self.stop_listen_thread = True
def __init__(self, evt_callback=None): InstrumentDriver.__init__(self, evt_callback) self.connection = None self.protocol = None self.config = None self._state = DriverState.UNCONFIGURED
def __init__(self, evt_callback): """ method docstring """ InstrumentDriver.__init__(self, evt_callback) # Build the protocol for CTD channel. protocol = SBE37Protocol(SBE37Prompt, SBE37_NEWLINE, evt_callback) self._channels = {SBE37Channel.CTD:protocol}
def __init__(self, evt_callback=None): log.debug("Creating TrhphInstrumentDriver") InstrumentDriver.__init__(self, evt_callback) self.instrument_commands = TrhphCommand self.instrument_parameters = TrhphParameter self.instrument_channels = TrhphChannel self.instrument_errors = TrhphError # a single protocol (associated with TrhphChannel.INSTRUMENT) self.protoc = TrhphInstrumentProtocol(self.protocol_callback) self.chan_map[TrhphChannel.INSTRUMENT] = self.protoc
def __init__(self, evt_callback): """ Constructor. @param evt_callback Driver process event callback. """ InstrumentDriver.__init__(self, evt_callback) # _trhph_client created in configure() self._trhph_client = None self._state = TrhphDriverState.UNCONFIGURED # TODO probably promote this convenience to super-class? self._timeout = 30 """Default timeout value for operations accepting an optional timeout
def __init__(self, evt_callback=None): InstrumentDriver.__init__(self, evt_callback) self.instrument_commands = Command self.instrument_parameters = Parameter self.instrument_channels = Channel self.instrument_errors = Error for channel in self.instrument_channels.list(): # # TODO associate some specific params per channel. Note that # there is no framework mechanism to specify this. For the # moment, just associate *all* parameters to each channel: # params_per_channel = self.instrument_parameters.list() protocol = MyProtocol(channel, params_per_channel, self.protocol_callback) protocol._fsm = Mock() protocol._fsm.get_current_state = Mock(return_value=DriverState.UNCONFIGURED) self.chan_map[channel] = protocol
def __init__(self, event_callback): """ Constructor for singly connected instrument drivers. @param event_callback Callback to the driver process to send asynchronous driver events back to the agent. """ InstrumentDriver.__init__(self, event_callback) # The only and only instrument connection. # Exists in the connected state. self._connection = None # The one and only instrument protocol. self._protocol = None # Build connection state machine. self._connection_fsm = InstrumentFSM(DriverConnectionState, DriverEvent, DriverEvent.ENTER, DriverEvent.EXIT) # Add handlers for all events. self._connection_fsm.add_handler( DriverConnectionState.UNCONFIGURED, DriverEvent.ENTER, self._handler_unconfigured_enter ) self._connection_fsm.add_handler( DriverConnectionState.UNCONFIGURED, DriverEvent.EXIT, self._handler_unconfigured_exit ) self._connection_fsm.add_handler( DriverConnectionState.UNCONFIGURED, DriverEvent.INITIALIZE, self._handler_unconfigured_initialize ) self._connection_fsm.add_handler( DriverConnectionState.UNCONFIGURED, DriverEvent.CONFIGURE, self._handler_unconfigured_configure ) self._connection_fsm.add_handler( DriverConnectionState.DISCONNECTED, DriverEvent.ENTER, self._handler_disconnected_enter ) self._connection_fsm.add_handler( DriverConnectionState.DISCONNECTED, DriverEvent.EXIT, self._handler_disconnected_exit ) self._connection_fsm.add_handler( DriverConnectionState.DISCONNECTED, DriverEvent.INITIALIZE, self._handler_disconnected_initialize ) self._connection_fsm.add_handler( DriverConnectionState.DISCONNECTED, DriverEvent.CONFIGURE, self._handler_disconnected_configure ) self._connection_fsm.add_handler( DriverConnectionState.DISCONNECTED, DriverEvent.CONNECT, self._handler_disconnected_connect ) self._connection_fsm.add_handler( DriverConnectionState.CONNECTED, DriverEvent.ENTER, self._handler_connected_enter ) self._connection_fsm.add_handler( DriverConnectionState.CONNECTED, DriverEvent.EXIT, self._handler_connected_exit ) self._connection_fsm.add_handler( DriverConnectionState.CONNECTED, DriverEvent.DISCONNECT, self._handler_connected_disconnect ) self._connection_fsm.add_handler( DriverConnectionState.CONNECTED, DriverEvent.CONNECTION_LOST, self._handler_connected_connection_lost ) self._connection_fsm.add_handler( DriverConnectionState.CONNECTED, DriverEvent.DISCOVER, self._handler_connected_protocol_event ) self._connection_fsm.add_handler( DriverConnectionState.CONNECTED, DriverEvent.GET, self._handler_connected_protocol_event ) self._connection_fsm.add_handler( DriverConnectionState.CONNECTED, DriverEvent.SET, self._handler_connected_protocol_event ) self._connection_fsm.add_handler( DriverConnectionState.CONNECTED, DriverEvent.ACQUIRE_SAMPLE, self._handler_connected_protocol_event ) self._connection_fsm.add_handler( DriverConnectionState.CONNECTED, DriverEvent.START_AUTOSAMPLE, self._handler_connected_protocol_event ) self._connection_fsm.add_handler( DriverConnectionState.CONNECTED, DriverEvent.STOP_AUTOSAMPLE, self._handler_connected_protocol_event ) self._connection_fsm.add_handler( DriverConnectionState.CONNECTED, DriverEvent.TEST, self._handler_connected_protocol_event ) self._connection_fsm.add_handler( DriverConnectionState.CONNECTED, DriverEvent.CALIBRATE, self._handler_connected_protocol_event ) self._connection_fsm.add_handler( DriverConnectionState.CONNECTED, DriverEvent.EXECUTE_DIRECT, self._handler_connected_protocol_event ) self._connection_fsm.add_handler( DriverConnectionState.CONNECTED, DriverEvent.START_DIRECT, self._handler_connected_protocol_event ) self._connection_fsm.add_handler( DriverConnectionState.CONNECTED, DriverEvent.STOP_DIRECT, self._handler_connected_protocol_event ) # Start state machine. self._connection_fsm.start(DriverConnectionState.UNCONFIGURED)