obci.mx_legacy package

Submodules

obci.mx_legacy.clients module

obci.mx_legacy.clients.connect_client(*args, **kwargs)[source]
class obci.mx_legacy.clients.BaseMultiplexerServer(addresses=[('0.0.0.0', 31889)], type=None)[source]

Bases: obci.mx_legacy.clients.MultiplexerPeer

Abstract multiplexer server functionality.

Constructor. See docstring for MultiplexerPeer.__init__ for meaning of parameters.

close()[source]

In case we ever what to finish.

handle_message(mxmsg)[source]

This method should be overriden in child classes.

loop()[source]

Serve forever.

no_response()[source]
parse_message(type, mxmsg=None)[source]

parse mxmsg.message with new Protobuf message of type `type’

send_message(**kwargs)[source]
serve_forever()

Serve forever.

start_time

Time when the instance was instantiated

obci.mx_legacy.multiplexer_constants module

class obci.mx_legacy.multiplexer_constants.peers[source]

Bases: obci.mx_legacy.multiplexer_constants._constants_base

ACQUISITION_CONTROL = 125
ALL_TYPES = 2
AMPLIFIER = 112
AMPLIFIER_SERVER = 144
ANALYSIS = 117
AUTOSCALE_GENERATOR = 132
CALIBRATOR = 130
CLIENT = 165
CONFIGURER = 136
CONFIG_SERVER = 143
DIODE = 120
DIODE_CATCHER = 121
DRIVER_DISCOVERY = 150
ETR_AMPLIFIER = 138
ETR_ANALYSIS = 137
ETR_CALIBRATION = 164
ETR_P300_ANALYSIS = 162
ETR_SAVER = 140
EVENTS_COLLECTOR = 110
EXTERNAL_SWITCH_AMPLIFIER = 161
FILTER = 116
HAPTICS_STIMULATOR = 175
HASHTABLE = 115
INFO_SAVER = 134
LOGIC_DECISION = 118
LOGIC_FEEDBACK = 151
LOGIC_P300_CALIBRATION = 146
LOGIC_P300_CSP = 153
LOGIC_SSVEP_CALIBRATION = 147
LOGIC_SSVEP_CSP = 149
LOGIC_WII_BOARD = 160
LOG_COLLECTOR = 109
LOG_RECEIVER_EXAMPLE = 111
LOG_STREAMER = 108
MAX_MULTIPLEXER_SPECIAL_PEER_TYPE = 99
MONITOR = 114
MULTIPLEXER = 1
OBCI_LAUNCHER = 141
OBCI_LOG_COLLECTOR = 166
P300_ANALYSIS = 152
PEER_CONFIG_CONTROL = 142
PINGER = 127
PYTHON_TEST_CLIENT = 107
PYTHON_TEST_SERVER = 106
RESULTS_ANALYSIS = 163
ROBOT_FEEDBACK = 156
ROBOT_FEEDBACK_CONTROL = 157
SIGNAL_CATCHER = 113
SIGNAL_SAVER = 124
SIGNAL_STREAMER = 123
SSVEP_ANALYSIS = 148
STREAM_RECEIVER = 119
SUPER_DIODE = 122
SWITCH_AMPLIFIER = 154
SWITCH_ANALYSIS = 155
TAGS_RECEIVER = 129
TAGS_SENDER = 128
TAG_CATCHER = 131
TAG_SAVER = 133
TOBII_INFO_SAVER = 171
TOBII_SIGNAL_CATCHER = 174
TOBII_SIGNAL_SAVER = 170
TOBII_TAG_SAVER = 172
UGM = 126
UGM_ENGINE = 139
UGM_ENGINE_PEER = 145
WII_BOARD_AMPLIFIER = 158
WII_BOARD_ANALYSIS = 159
WII_BOARD_INFO_SAVER = 168
WII_BOARD_SIGNAL_CATCHER = 173
WII_BOARD_SIGNAL_SAVER = 167
WII_BOARD_TAG_SAVER = 169
idtoname = {128: 'TAGS_SENDER', 1: 'MULTIPLEXER', 2: 'ALL_TYPES', 131: 'TAG_CATCHER', 132: 'AUTOSCALE_GENERATOR', 133: 'TAG_SAVER', 134: 'INFO_SAVER', 129: 'TAGS_RECEIVER', 136: 'CONFIGURER', 137: 'ETR_ANALYSIS', 138: 'ETR_AMPLIFIER', 139: 'UGM_ENGINE', 140: 'ETR_SAVER', 130: 'CALIBRATOR', 142: 'PEER_CONFIG_CONTROL', 143: 'CONFIG_SERVER', 144: 'AMPLIFIER_SERVER', 145: 'UGM_ENGINE_PEER', 146: 'LOGIC_P300_CALIBRATION', 147: 'LOGIC_SSVEP_CALIBRATION', 148: 'SSVEP_ANALYSIS', 149: 'LOGIC_SSVEP_CSP', 150: 'DRIVER_DISCOVERY', 151: 'LOGIC_FEEDBACK', 152: 'P300_ANALYSIS', 153: 'LOGIC_P300_CSP', 154: 'SWITCH_AMPLIFIER', 155: 'SWITCH_ANALYSIS', 156: 'ROBOT_FEEDBACK', 157: 'ROBOT_FEEDBACK_CONTROL', 158: 'WII_BOARD_AMPLIFIER', 159: 'WII_BOARD_ANALYSIS', 160: 'LOGIC_WII_BOARD', 161: 'EXTERNAL_SWITCH_AMPLIFIER', 162: 'ETR_P300_ANALYSIS', 163: 'RESULTS_ANALYSIS', 164: 'ETR_CALIBRATION', 165: 'CLIENT', 166: 'OBCI_LOG_COLLECTOR', 167: 'WII_BOARD_SIGNAL_SAVER', 168: 'WII_BOARD_INFO_SAVER', 169: 'WII_BOARD_TAG_SAVER', 170: 'TOBII_SIGNAL_SAVER', 135: 'BLINK_CATCHER', 172: 'TOBII_TAG_SAVER', 173: 'WII_BOARD_SIGNAL_CATCHER', 174: 'TOBII_SIGNAL_CATCHER', 175: 'HAPTICS_STIMULATOR', 141: 'OBCI_LAUNCHER', 171: 'TOBII_INFO_SAVER', 99: 'MAX_MULTIPLEXER_SPECIAL_PEER_TYPE', 106: 'PYTHON_TEST_SERVER', 107: 'PYTHON_TEST_CLIENT', 108: 'LOG_STREAMER', 109: 'LOG_COLLECTOR', 110: 'EVENTS_COLLECTOR', 111: 'LOG_RECEIVER_EXAMPLE', 112: 'AMPLIFIER', 113: 'SIGNAL_CATCHER', 114: 'MONITOR', 115: 'HASHTABLE', 116: 'FILTER', 117: 'ANALYSIS', 118: 'LOGIC_DECISION', 119: 'STREAM_RECEIVER', 120: 'DIODE', 121: 'DIODE_CATCHER', 122: 'SUPER_DIODE', 123: 'SIGNAL_STREAMER', 124: 'SIGNAL_SAVER', 125: 'ACQUISITION_CONTROL', 126: 'UGM', 127: 'PINGER'}
class obci.mx_legacy.multiplexer_constants.types[source]

Bases: obci.mx_legacy.multiplexer_constants._constants_base

ACQUISITION_CONTROL_MESSAGE = 155
AMPLIFIER_SIGNAL_MESSAGE = 129
BACKEND_ERROR = 114
BENCHMARK_INPUT_MESSAGE_0 = 180
BENCHMARK_INPUT_MESSAGE_1 = 181
BENCHMARK_INPUT_MESSAGE_2 = 182
BENCHMARK_INPUT_MESSAGE_3 = 183
BENCHMARK_INPUT_MESSAGE_4 = 184
BENCHMARK_INPUT_MESSAGE_5 = 185
BENCHMARK_INPUT_MESSAGE_6 = 186
BENCHMARK_INPUT_MESSAGE_7 = 187
BENCHMARK_INPUT_MESSAGE_8 = 188
BENCHMARK_INPUT_MESSAGE_9 = 189
BENCHMARK_OUTPUT_MESSAGE_0 = 190
BENCHMARK_OUTPUT_MESSAGE_1 = 191
BENCHMARK_OUTPUT_MESSAGE_2 = 192
BENCHMARK_OUTPUT_MESSAGE_3 = 193
BENCHMARK_OUTPUT_MESSAGE_4 = 194
BENCHMARK_OUTPUT_MESSAGE_5 = 195
BENCHMARK_OUTPUT_MESSAGE_6 = 196
BENCHMARK_OUTPUT_MESSAGE_7 = 197
BENCHMARK_OUTPUT_MESSAGE_8 = 198
BENCHMARK_OUTPUT_MESSAGE_9 = 199
CALIBRATION = 147
CONFIG_ERROR = 224
CONFIG_MESSAGE = 213
CONFIG_PARAMS = 215
CONNECTION_WELCOME = 2
DECISION_MESSAGE = 136
DELIVERY_ERROR = 5
DICT_GET_REQUEST_MESSAGE = 133
DICT_GET_RESPONSE_MESSAGE = 134
DICT_SET_MESSAGE = 135
DIODE_CONTROL_MESSAGE = 151
DIODE_MESSAGE = 137
DIODE_REQUEST = 138
DIODE_RESPONSE = 139
ETR_ANALYSIS_RESULTS = 232
ETR_CALIBRATION_RESULTS = 233
ETR_SIGNAL_MESSAGE = 209
FILTERED_SIGNAL_MESSAGE = 130
GET_CONFIG_PARAMS = 214
HAPTIC_CONTROL_MESSAGE = 160
HEARTBIT = 4
INFO_SAVER_FINISHED = 157
LAUNCHER_COMMAND = 227
LOGS_STREAM = 115
LOGS_STREAM_RESPONSE = 116
MAX_MULTIPLEXER_META_PACKET = 99
OBCI_LOG_DUMP_REQUEST = 235
OBCI_LOG_DUMP_RESPONSE = 236
OBCI_LOG_MESSAGE = 234
P300_ANALYSIS_RESULTS = 231
P300_DECISION_MESSAGE = 140
PARAMS_CHANGED = 219
PEERS_READY_QUERY = 221
PEER_READY = 220
PEER_READY_SIGNAL = 225
PEER_REGISTERED = 217
PICKLE_RESPONSE = 112
PING = 1
PYTHON_TEST_REQUEST = 110
PYTHON_TEST_RESPONSE = 111
READY_STATUS = 222
REGISTER_PEER_CONFIG = 216
REPLAY_EVENTS_REQUEST = 126
REQUEST_RECEIVED = 113
ROBOT_FEEDBACK_CONTROL = 229
SAMPLING_FREQUENCY = 146
SEARCH_COLLECTED_LOGS_REQUEST = 117
SEARCH_COLLECTED_LOGS_RESPONSE = 118
SHUTDOWN_REQUEST = 226
SIGNAL_CATCHER_REQUEST_MESSAGE = 131
SIGNAL_CATCHER_RESPONSE_MESSAGE = 132
SIGNAL_SAVER_FINISHED = 156
SIGNAL_STREAMER_START = 144
SIGNAL_STREAMER_STOP = 145
SSVEP_DECISION_MESSAGE = 141
STREAMED_SIGNAL_MESSAGE = 143
SWITCH_MESSAGE = 228
SWITCH_MODE = 142
SYSTEM_CONFIGURATION = 210
TAG = 150
TAG_CATCHER_REQUEST_MESSAGE = 152
TAG_CATCHER_RESPONSE_MESSAGE = 153
TAG_SAVER_FINISHED = 158
TOBII_INFO_SAVER_FINISHED = 241
TOBII_SIGNAL_MESSAGE = 243
TOBII_SIGNAL_SAVER_FINISHED = 240
TOBII_TAG_SAVER_FINISHED = 242
UGM_CONTROL_MESSAGE = 212
UGM_ENGINE_MESSAGE = 211
UGM_UPDATE_MESSAGE = 149
UNREGISTER_PEER_CONFIG = 223
UPDATE_PARAMS = 218
WII_BOARD_ANALYSIS_RESULTS = 254
WII_BOARD_INFO_SAVER_FINISHED = 251
WII_BOARD_SIGNAL_MESSAGE = 253
WII_BOARD_SIGNAL_SAVER_FINISHED = 250
WII_BOARD_TAG_SAVER_FINISHED = 252
idtoname = {1: 'PING', 2: 'CONNECTION_WELCOME', 3: 'BACKEND_FOR_PACKET_SEARCH', 4: 'HEARTBIT', 5: 'DELIVERY_ERROR', 99: 'MAX_MULTIPLEXER_META_PACKET', 110: 'PYTHON_TEST_REQUEST', 111: 'PYTHON_TEST_RESPONSE', 112: 'PICKLE_RESPONSE', 113: 'REQUEST_RECEIVED', 114: 'BACKEND_ERROR', 115: 'LOGS_STREAM', 116: 'LOGS_STREAM_RESPONSE', 117: 'SEARCH_COLLECTED_LOGS_REQUEST', 118: 'SEARCH_COLLECTED_LOGS_RESPONSE', 126: 'REPLAY_EVENTS_REQUEST', 129: 'AMPLIFIER_SIGNAL_MESSAGE', 130: 'FILTERED_SIGNAL_MESSAGE', 131: 'SIGNAL_CATCHER_REQUEST_MESSAGE', 132: 'SIGNAL_CATCHER_RESPONSE_MESSAGE', 133: 'DICT_GET_REQUEST_MESSAGE', 134: 'DICT_GET_RESPONSE_MESSAGE', 135: 'DICT_SET_MESSAGE', 136: 'DECISION_MESSAGE', 137: 'DIODE_MESSAGE', 138: 'DIODE_REQUEST', 139: 'DIODE_RESPONSE', 140: 'P300_DECISION_MESSAGE', 141: 'SSVEP_DECISION_MESSAGE', 142: 'SWITCH_MODE', 143: 'STREAMED_SIGNAL_MESSAGE', 144: 'SIGNAL_STREAMER_START', 145: 'SIGNAL_STREAMER_STOP', 146: 'SAMPLING_FREQUENCY', 147: 'CALIBRATION', 149: 'UGM_UPDATE_MESSAGE', 150: 'TAG', 151: 'DIODE_CONTROL_MESSAGE', 152: 'TAG_CATCHER_REQUEST_MESSAGE', 153: 'TAG_CATCHER_RESPONSE_MESSAGE', 154: 'BLINK_MESSAGE', 155: 'ACQUISITION_CONTROL_MESSAGE', 156: 'SIGNAL_SAVER_FINISHED', 157: 'INFO_SAVER_FINISHED', 158: 'TAG_SAVER_FINISHED', 159: 'BLINK_VECTOR_MESSAGE', 160: 'HAPTIC_CONTROL_MESSAGE', 180: 'BENCHMARK_INPUT_MESSAGE_0', 181: 'BENCHMARK_INPUT_MESSAGE_1', 182: 'BENCHMARK_INPUT_MESSAGE_2', 183: 'BENCHMARK_INPUT_MESSAGE_3', 184: 'BENCHMARK_INPUT_MESSAGE_4', 185: 'BENCHMARK_INPUT_MESSAGE_5', 186: 'BENCHMARK_INPUT_MESSAGE_6', 187: 'BENCHMARK_INPUT_MESSAGE_7', 188: 'BENCHMARK_INPUT_MESSAGE_8', 189: 'BENCHMARK_INPUT_MESSAGE_9', 190: 'BENCHMARK_OUTPUT_MESSAGE_0', 191: 'BENCHMARK_OUTPUT_MESSAGE_1', 192: 'BENCHMARK_OUTPUT_MESSAGE_2', 193: 'BENCHMARK_OUTPUT_MESSAGE_3', 194: 'BENCHMARK_OUTPUT_MESSAGE_4', 195: 'BENCHMARK_OUTPUT_MESSAGE_5', 196: 'BENCHMARK_OUTPUT_MESSAGE_6', 197: 'BENCHMARK_OUTPUT_MESSAGE_7', 198: 'BENCHMARK_OUTPUT_MESSAGE_8', 199: 'BENCHMARK_OUTPUT_MESSAGE_9', 209: 'ETR_SIGNAL_MESSAGE', 210: 'SYSTEM_CONFIGURATION', 211: 'UGM_ENGINE_MESSAGE', 212: 'UGM_CONTROL_MESSAGE', 213: 'CONFIG_MESSAGE', 214: 'GET_CONFIG_PARAMS', 215: 'CONFIG_PARAMS', 216: 'REGISTER_PEER_CONFIG', 217: 'PEER_REGISTERED', 218: 'UPDATE_PARAMS', 219: 'PARAMS_CHANGED', 220: 'PEER_READY', 221: 'PEERS_READY_QUERY', 222: 'READY_STATUS', 223: 'UNREGISTER_PEER_CONFIG', 224: 'CONFIG_ERROR', 225: 'PEER_READY_SIGNAL', 226: 'SHUTDOWN_REQUEST', 227: 'LAUNCHER_COMMAND', 228: 'SWITCH_MESSAGE', 229: 'ROBOT_FEEDBACK_CONTROL', 231: 'P300_ANALYSIS_RESULTS', 232: 'ETR_ANALYSIS_RESULTS', 233: 'ETR_CALIBRATION_RESULTS', 234: 'OBCI_LOG_MESSAGE', 235: 'OBCI_LOG_DUMP_REQUEST', 236: 'OBCI_LOG_DUMP_RESPONSE', 240: 'TOBII_SIGNAL_SAVER_FINISHED', 241: 'TOBII_INFO_SAVER_FINISHED', 242: 'TOBII_TAG_SAVER_FINISHED', 243: 'TOBII_SIGNAL_MESSAGE', 250: 'WII_BOARD_SIGNAL_SAVER_FINISHED', 251: 'WII_BOARD_INFO_SAVER_FINISHED', 252: 'WII_BOARD_TAG_SAVER_FINISHED', 253: 'WII_BOARD_SIGNAL_MESSAGE', 254: 'WII_BOARD_ANALYSIS_RESULTS'}

Module contents