Files
@ 72dd61ca5365
Branch filter:
Location: HydroBot/hydrobot-software/network.py - annotation
72dd61ca5365
1.4 KiB
text/x-python
Started refactoring with the networking and modules
72dd61ca5365 72dd61ca5365 72dd61ca5365 72dd61ca5365 72dd61ca5365 72dd61ca5365 72dd61ca5365 72dd61ca5365 72dd61ca5365 72dd61ca5365 72dd61ca5365 72dd61ca5365 72dd61ca5365 72dd61ca5365 72dd61ca5365 72dd61ca5365 72dd61ca5365 72dd61ca5365 72dd61ca5365 72dd61ca5365 72dd61ca5365 72dd61ca5365 72dd61ca5365 72dd61ca5365 72dd61ca5365 72dd61ca5365 72dd61ca5365 72dd61ca5365 72dd61ca5365 72dd61ca5365 72dd61ca5365 72dd61ca5365 72dd61ca5365 72dd61ca5365 72dd61ca5365 72dd61ca5365 72dd61ca5365 72dd61ca5365 72dd61ca5365 72dd61ca5365 72dd61ca5365 72dd61ca5365 72dd61ca5365 72dd61ca5365 72dd61ca5365 72dd61ca5365 72dd61ca5365 | #!/usr/bin/env python
import network_interface
import module
class Network():
def __init__(self, logger):
self.interfaces = []
self.module_list = module.ModuleList()
self.logger = logger
def add_interface(self, interface):
self.interfaces.append(interface)
def load_interfaces(self):
#TODO: Load interfaces from config file
pass
def get_interface(self, interface_name):
for interface in self.interfaces:
if interface.interface_name == interface_name:
return interface
def start_interface(self, interface_name):
print("Network: start interface " + interface_name)
#TODO: Start interface
for interface in self.interfaces:
if interface.interface_name == interface_name:
interface.start()
def start_all_interfaces(self):
print("Network: start all interfaces")
for interface in self.interfaces:
interface.start()
def send_message(self, message):
module = self.module_list.lookup_module(message.module_uuid)
if not module == None:
module.interface.send_message(message)
else:
print("Could not find module " + str(message.module_uuid))
def process_message(self, message):
print("Network: process message")
self.module_list.lookup_module(message.module_uuid).receive_message()
|