def japan(self): # scalable rows = SchedulerState.get_rows() cols = SchedulerState.get_cols() self.model.set_all((1, 1, 1)) for r in range(max(1, rows // 4), max(3, int(rows / 4 * 3))): for c in range(max(1, cols // 3), max(3, int(cols / 3 * 2))): self.model.set_pixel(r, c, name_to_rgb('red'))
def morocco(self): # scalable cols = SchedulerState.get_cols() rows = SchedulerState.get_rows() self.model.set_all((0.73, 0.13, 0.16)) for c in range(int(cols / 10 * 5), int(cols / 10 * 6)): for r in range(int(rows / 6 * 3), int(rows / 6 * 4)): self.model.set_pixel(r, c, (0, 0.4, 0.2))
def poland(self): # scalable cols = SchedulerState.get_cols() rows = SchedulerState.get_rows() for i in range(0, rows // 2): self.model.set_line(0, name_to_rgb('white')) for i in range(rows // 2, rows): self.model.set_line(i, name_to_rgb('red'))
def tunisia(self): # scalable cols = SchedulerState.get_cols() rows = SchedulerState.get_rows() self.model.set_all('red') for c in range(int(cols / 8 * 3), int(cols / 8 * 6)): self.model.set_pixel(rows // 2, c, (1, 1, 1)) self.model.set_pixel(rows // 2 + 1, c, (1, 1, 1))
def china(self): # scalable cols = SchedulerState.get_cols() rows = SchedulerState.get_rows() self.model.set_all('red') for r in range(0, min(2, rows)): for c in map(lambda x: min(x, cols), [1, 2, 4]): self.model.set_pixel(r, c, name_to_rgb('yellow'))
def ukraine(self): # scalable cols = SchedulerState.get_cols() rows = SchedulerState.get_rows() for i in range(0, rows // 2): self.model.set_line(i, (1, 0.83, 0)) for i in range(rows // 2, rows): self.model.set_line(i, (0, 0.35, 0.74))
def vietnam(self): # scalable cols = SchedulerState.get_cols() rows = SchedulerState.get_rows() self.model.set_all('red') for c in range(cols // 2, cols // 2 + 2): self.model.set_pixel(rows // 2, c, name_to_rgb('yellow')) self.model.set_pixel(rows // 2 + 1, c, name_to_rgb('yellow'))
def __init__(self, conn, addr): Thread.__init__(self) print_flush("Pixels :", Mesh.pixels) #Manage adressing procedures Mesh.addressed = not (Mesh.pixels == {}) self.ama_check = 0 self.previous_state = 1 self.model = Model(SchedulerState.get_rows(), SchedulerState.get_cols()) #Communication with mesh network config self.msg = Frame() self.mesh_conn = conn self.mesh_addr = addr self.l = Listen(conn) self.l.start() self.stopped = False #Communication with RabbitMQ config self.channel = None self.connection = None credentials = pika.PlainCredentials( os.environ['RABBITMQ_DEFAULT_USER'], os.environ['RABBITMQ_DEFAULT_PASS']) self.params = pika.ConnectionParameters(host='rabbit', credentials=credentials, heartbeat=0)
def liechtenstein(self): # scalable rows = SchedulerState.get_rows() cols = SchedulerState.get_cols() for i in range(0, rows // 2): self.model.set_line(i, (0, 0.16, 0.5)) for i in range(rows // 2, rows): self.model.set_line(i, (0.8, 0.05, 0.13))
def print_scheduler_info(self): if self.count % 100 == 0: self.count = 0 logging.info(" ========== Scheduling ==========") logging.info("-------- Geometry") logging.info("\t\t {} rows * {} cols".format( SchedulerState.get_rows(), SchedulerState.get_cols())) logging.info("-------- Disabled") logging.info("\t\t {}".format(SchedulerState.get_disabled())) logging.info("-------- Enable State") logging.info(SchedulerState.get_enable_state()) logging.info("-------- Is Frontage Up?") logging.info(SchedulerState.is_frontage_on()) logging.info("-------- Usable?") logging.info(SchedulerState.usable()) logging.info("-------- Current App") logging.info(SchedulerState.get_current_app()) logging.info('Forced App ? {}'.format( SchedulerState.get_forced_app())) logging.info("---------- Waiting Queue") logging.info(SchedulerState.get_user_app_queue()) if SchedulerState.get_enable_state() == 'scheduled': logging.info("---------- Scheduled ON") logging.info(SchedulerState.get_scheduled_on_time().strftime( "%d-%m-%Y %H:%M:%S UTC+00")) logging.info("---------- Scheduled OFF") logging.info(SchedulerState.get_scheduled_off_time().strftime( "%d-%m-%Y %H:%M:%S UTC+00")) logging.info("---------- TIME NOW") logging.info(datetime.datetime.now().strftime( "%d-%m-%Y %H:%M:%S UTC+00")) self.count += 1
def libya(self): # scalable rows = SchedulerState.get_rows() cols = SchedulerState.get_cols() self.model.set_all((0, 0, 0)) for i in range(rows // 3): self.model.set_line(i, (1, 0, 0)) for i in range(int(rows / 3 * 2), rows): self.model.set_line(i, name_to_rgb('darkgreen'))
def india(self): # scalable rows = SchedulerState.get_rows() for i in range(0, rows // 3): self.model.set_line(i, (1, 0.6, 0.18)) for i in range(rows // 3, int(rows / 3 * 2)): self.model.set_line(i, (1, 1, 1)) for i in range(int(rows / 3 * 2), rows): self.model.set_line(i, (0, 0.6, 0))
def sweden(self): # scalable cols = SchedulerState.get_cols() rows = SchedulerState.get_rows() self.model.set_all((0, 0.41, 0.66)) for i in range(rows // 2, rows // 2 + 1): self.model.set_line(i, name_to_rgb('yellow')) for i in range(cols // 3, cols // 3 + 2): self.model.set_column(i, name_to_rgb('yellow'))
def colombia(self): # scalable rows = SchedulerState.get_rows() quarr = rows // 4 for i in range(0, rows // 2): self.model.set_line(i, name_to_rgb('yellow')) for i in range(rows // 2, 3 * quarr): self.model.set_line(i, name_to_rgb('navy')) for i in range(3 * quarr, rows): self.model.set_line(i, name_to_rgb('red'))
def lituania(self): # scalable rows = SchedulerState.get_rows() cols = SchedulerState.get_cols() for i in range(rows // 3): self.model.set_line(i, name_to_rgb('yellow')) for i in range(rows // 3, int(rows / 3 * 2)): self.model.set_line(i, name_to_rgb('darkgreen')) for i in range(int(rows / 3 * 2), rows): self.model.set_line(i, name_to_rgb('red'))
def yemen(self): # scalable cols = SchedulerState.get_cols() rows = SchedulerState.get_rows() for i in range(0, rows // 3): self.model.set_line(i, name_to_rgb('red')) for i in range(rows // 3, int(rows / 3 * 2)): self.model.set_line(i, name_to_rgb('white')) for i in range(int(rows / 3 * 2), rows): self.model.set_line(i, (0, 0, 0))
def venezuela(self): # scalable cols = SchedulerState.get_cols() rows = SchedulerState.get_rows() for i in range(0, rows // 3): self.model.set_line(i, name_to_rgb('yellow')) for i in range(rows // 3, int(rows / 3 * 2)): self.model.set_line(i, name_to_rgb('navy')) for i in range(int(rows / 3 * 2), rows): self.model.set_line(i, name_to_rgb('firebrick'))
def netherlands(self): # scalable cols = SchedulerState.get_cols() rows = SchedulerState.get_rows() for i in range(0, rows // 3): self.model.set_line(i, name_to_rgb('firebrick')) for i in range(rows // 3, int(rows / 3 * 2)): self.model.set_line(i, name_to_rgb('white')) for i in range(int(rows / 3 * 2), rows): self.model.set_line(i, name_to_rgb('navy'))
def luxembourg(self): # scalable rows = SchedulerState.get_rows() cols = SchedulerState.get_cols() for i in range(rows // 3): self.model.set_line(i, name_to_rgb('red')) for i in range(rows // 3, int(rows / 3 * 2)): self.model.set_line(i, name_to_rgb('white')) for i in range(int(rows / 3 * 2), rows): self.model.set_line(i, name_to_rgb('skyblue'))
def uruguay(self): # scalable rows = SchedulerState.get_rows() cols = SchedulerState.get_cols() for i in range(0, rows, 2): self.model.set_line(i, name_to_rgb('navy')) for i in range(1, rows, 2): self.model.set_line(i, (1, 1, 1)) for r in range(0, 2): for c in [0, 1]: self.model.set_pixel(r, c, name_to_rgb('yellow'))
def finland(self): # scalable rows = SchedulerState.get_rows() cols = SchedulerState.get_cols() midr = rows // 2 tierc = cols / 3 self.model.set_all((1, 1, 1)) for i in range(min(1, midr - 1), midr + 1): self.model.set_line(i, (0, 0.2, 0.5)) for i in range(min(int(tierc - 1), 1), int(tierc + 1)): self.model.set_column(i, (0, 0.2, 0.5))
def emirates(self): # scalable cols = SchedulerState.get_cols() rows = SchedulerState.get_rows() tierr = rows / 3 self.model.set_all((0, 0, 0)) for i in range(0, int(tierr)): self.model.set_line(i, (0, 0.45, 0.18)) for i in range(int(tierr), int(2 * tierr)): self.model.set_line(i, (1, 1, 1)) for i in range(max(1, cols // 3)): self.model.set_column(i, (1, 0, 0))
def lebanon(self): # scalable rows = SchedulerState.get_rows() cols = SchedulerState.get_cols() self.model.set_all((1, 1, 1)) for i in range(rows // 3): self.model.set_line(i, (1, 0, 0)) for i in range(int(rows / 3 * 2), rows): self.model.set_line(i, (1, 0, 0)) for c in range(cols // 3, int(cols / 3 * 2)): for r in range(rows // 3, int(rows / 3 * 2)): self.model.set_pixel(r, c, name_to_rgb('darkgreen'))
def __init__(self, username, userid): super(Tetris, self).__init__(username, userid) self.PARAMS_LIST = {'speed': 0.15} self.colors = [ 'black', 'deeppink', 'green', 'darkred', 'orangered', 'darkblue', 'cyan', 'yellow' ] self.next_stone = tetris_shapes[rand(len(tetris_shapes))] Tetris.cols = SchedulerState.get_rows() Tetris.rows = SchedulerState.get_cols() self.init_game()
def spain(self): r = name_to_rgb('red') y = name_to_rgb('yellow') rows = SchedulerState.get_rows() b1 = rows // 4 b2 = rows - b1 for i in range(0, b1): self.model.set_line(i, r) for i in range(b1, b2): self.model.set_line(i, y) for i in range(b2, rows): self.model.set_line(i, r)
def armenia(self): # scalable rows = SchedulerState.get_rows() tierr = rows / 3 if (rows < 3): self.model.set_all('darked') else: for i in range(0, max(int(tierr), 1)): self.model.set_line(i, name_to_rgb('red')) for i in range(int(tierr), max(int(tierr * 2), 2)): self.model.set_line(i, name_to_rgb('navy')) for i in range(max(int(tierr * 2), 2), rows): self.model.set_line(i, name_to_rgb('yellow'))
def austria(self): # scalable rows = SchedulerState.get_rows() tierr = rows / 3 if (rows < 3): self.model.set_all('darked') else: for i in range(0, int(tierr)): self.model.set_line(i, (0.75, 0.25, 0.25)) for i in range(int(tierr), int(2 * tierr)): self.model.set_line(i, name_to_rgb('white')) for i in range(int(2 * tierr), rows): self.model.set_line(i, (0.75, 0.25, 0.25))
def chile(self): # scalable rows = SchedulerState.get_rows() cols = SchedulerState.get_cols() midr = rows // 2 tierc = cols // 3 for i in range(0, midr): self.model.set_line(i, name_to_rgb('white')) for i in range(0, tierc): self.model.set_column(i, name_to_rgb('navy')) for i in range(midr, rows): self.model.set_line(i, (0.75, 0.25, 0.25)) self.model.set_pixel((rows // 4), 1, name_to_rgb('white'))
def usa(self): # scalable rows = SchedulerState.get_rows() cols = SchedulerState.get_cols() for i in range(0, rows, 2): self.model.set_line(i, (0.73, 0.04, 0.23)) for i in range(1, rows, 2): self.model.set_line(i, (1, 1, 1)) for r in range(rows // 2 + 1): for c in range(cols // 3 + 1): self.model.set_pixel(r, c, (0, 0.13, 0.4) if r % 2 == c % 2 else (1, 1, 1))
def germany(self): d = name_to_rgb('black') r = name_to_rgb('red') y = name_to_rgb('yellow') rows = SchedulerState.get_rows() b1 = rows // 3 b2 = rows - b1 for i in range(0, b1): self.model.set_line(i, d) for i in range(b1, b2): self.model.set_line(i, r) for i in range(b2, rows): self.model.set_line(i, y)