def __init__(self, network=None, nid=None, token=None): self.__info = list() self.__session = None self.__storage_session = None self.__next_command = 0 self.__state = ClientState(self) self.__defs = ClientDefs(self) self.__map = Map.Map(self) self.__friends = [] self.__inbox = Inbox.Inbox(self) self.__boosters = Boosters.Boosters(self) self.__storage = Storage.Storage(self) if network is not None or nid is not None: self.init(network, nid, token)
def __init__(self, thymioController, debug, experiment_name): threading.Thread.__init__(self) config = ConfigParser(cl.CONFIG_PATH) self.__address = config.address self.__port = config.port self.__thymioController = thymioController self.__tcPerformedAction = threading.Condition() self.__tcPA = False self.__msgSenders = dict() self.__msgReceivers = dict() self.__stopSockets = list() self.__stopped = False self.__previous_motor_speed = [0, 0] # simulation logging file self.__simLogger = logging.getLogger('simulationLogger') logLevel = logging.INFO if debug: logLevel = logging.DEBUG self.__simLogger.setLevel(logLevel) self.__experiment_name = experiment_name outputDir = os.path.join(cl.OUTPUT_PATH, self.__experiment_name) mkdir_p(outputDir) # self.__nextSimFilename = getNextIDPath(SIM_LOG_PATH) + '_' + time.strftime("%Y-%m-%d_%H-%M-%S") # simHandler = logging.FileHandler(os.path.join(SIM_LOG_PATH, self.__nextSimFilename + '_sim_debug.log')) self.__simulationLogFile = os.path.join(outputDir, self.__experiment_name + '_sim_debug.log') self.__simulationOutputFile = os.path.join(outputDir, self.__experiment_name + '_out.txt') self.__simulationWeightOutputFile = os.path.join(outputDir, self.__experiment_name + '_weight_out.txt') self.__simulationTempFile = os.path.join(outputDir, self.__experiment_name + '_temp.txt') simHandler = logging.FileHandler(self.__simulationLogFile) simHandler.setFormatter(cl.FORMATTER) self.__simLogger.addHandler(simHandler) self.__threadCamera = cameraVision(False, self.__simLogger) self.__inbox = Inbox(self.__simLogger) for bot in config.bots: address = bot["address"] self.__msgSenders[address] = MessageSender(address, bot["port"], self.__simLogger) self.__msgReceivers[address] = MessageReceiver(address, self.__inbox, self.__simLogger) self.__connListener = ConnectionsListener(self.__address, self.__port, self.__msgReceivers, self.__simLogger)