From 850479ef6b3a7a9983f750e4c685194dfd5e4e52 Mon Sep 17 00:00:00 2001 From: shinedday <shinedday@gmail.com> Date: Mon, 17 May 2021 09:27:50 +0200 Subject: [PATCH] Some method are now private --- pyAmakCore/classes/agent.py | 10 ++++++++-- pyAmakCore/classes/amas.py | 18 +++++++++--------- pyAmakCore/classes/environment.py | 8 ++++---- pyAmakCore/tests/test_amas/test_agent.py | 3 --- pyAmakCore/tests/test_amas/test_nbr_cycle.py | 2 +- 5 files changed, 22 insertions(+), 19 deletions(-) diff --git a/pyAmakCore/classes/agent.py b/pyAmakCore/classes/agent.py index 16606ab..f5a979c 100644 --- a/pyAmakCore/classes/agent.py +++ b/pyAmakCore/classes/agent.py @@ -104,6 +104,12 @@ class Agent: """ self.__neighbours = [] + def get_criticality(self) -> float: + """ + return criticality + """ + return self.__criticality + def compute_criticality(self) -> float: """ compute_criticality @@ -168,7 +174,7 @@ class Agent: this is the first phase of a cycle """ self.on_perceive() - self.compute_criticality() + self.__criticality = self.compute_criticality() self._next_phase() def _phase2(self) -> None: @@ -177,7 +183,7 @@ class Agent: """ self.on_decide() self.on_act() - self.compute_criticality() + self.__criticality = self.compute_criticality() self._next_phase() def _next_phase(self): diff --git a/pyAmakCore/classes/amas.py b/pyAmakCore/classes/amas.py index b781098..39868c5 100644 --- a/pyAmakCore/classes/amas.py +++ b/pyAmakCore/classes/amas.py @@ -32,9 +32,9 @@ class Amas(Schedulable, Loggable): self.__agents: List[Agent] = [] self.__nbrcycle: int = 0 - self.scheduler: Scheduler = Scheduler() - self.scheduler.add_schedulable(self) - self.__environment.add_scheduler(self.scheduler) + self.__scheduler: Scheduler = Scheduler() + self.__scheduler.add_schedulable(self) + self.__environment.add_scheduler(self.__scheduler) self.__execution_policy: ExecutionPolicy = ExecutionPolicy.ONE_PHASE @@ -112,7 +112,7 @@ class Amas(Schedulable, Loggable): Unlock Scheduler and wait for his response """ self.give_token_syncro() - self.scheduler.take_amas_token() + self.__scheduler.take_amas_token() def cycle(self) -> None: """ @@ -153,29 +153,29 @@ class Amas(Schedulable, Loggable): """ Tell scheduler to start """ - self.scheduler.give_semaphore_start_stop() + self.__scheduler.give_semaphore_start_stop() def take_token(self) -> None: """ Tell scheduler to stop """ - self.scheduler.take_semaphore_start_stop() + self.__scheduler.take_semaphore_start_stop() def exit_program(self) -> None: """ exit the program at the end of the cycle """ self.put_token() - self.scheduler.exit_bool = True + self.__scheduler.exit_bool = True def set_sleep(self, sleep_time) -> None: """ set sleep between 2 cycles """ - self.scheduler.sleep_time = sleep_time + self.__scheduler.sleep_time = sleep_time def start(self) -> None: """ launch the system """ - self.scheduler.run() + self.__scheduler.run() diff --git a/pyAmakCore/classes/environment.py b/pyAmakCore/classes/environment.py index ce59b09..52c7727 100644 --- a/pyAmakCore/classes/environment.py +++ b/pyAmakCore/classes/environment.py @@ -16,7 +16,7 @@ class Environment(Schedulable): def __init__(self) -> None: super().__init__() - self.scheduler: Scheduler = None + self.__scheduler: Scheduler = None self.on_initialization() # tell scheduler that init is done self.give_token_syncro() @@ -26,15 +26,15 @@ class Environment(Schedulable): set scheduler pointer to scheduler add add self to schedulables of scheduler """ - self.scheduler = scheduler - self.scheduler.add_schedulable(self) + self.__scheduler = scheduler + self.__scheduler.add_schedulable(self) def synchronization(self) -> None: """ Unlock Scheduler and wait for his response """ self.give_token_syncro() - self.scheduler.take_environment_token() + self.__scheduler.take_environment_token() def cycle(self) -> None: """ diff --git a/pyAmakCore/tests/test_amas/test_agent.py b/pyAmakCore/tests/test_amas/test_agent.py index 5726bce..c5b623a 100644 --- a/pyAmakCore/tests/test_amas/test_agent.py +++ b/pyAmakCore/tests/test_amas/test_agent.py @@ -38,9 +38,6 @@ class TestAmasAgents(TestCase): agent1 = Agent(amas) agent2 = Agent(amas) agent3 = Agent(amas) - agent4 = Agent(amas) - agent5 = Agent(amas) - # add 1 agent amas.add_agent(agent1) self.assertEqual(amas.get_agents(), [agent1]) diff --git a/pyAmakCore/tests/test_amas/test_nbr_cycle.py b/pyAmakCore/tests/test_amas/test_nbr_cycle.py index 7bc3a8e..e4341b3 100644 --- a/pyAmakCore/tests/test_amas/test_nbr_cycle.py +++ b/pyAmakCore/tests/test_amas/test_nbr_cycle.py @@ -12,7 +12,7 @@ from pyAmakCore.classes.environment import Environment class SimplerAmas(Amas): def synchronization(self): - self.scheduler.give_amas_token() + self._Amas__scheduler.give_amas_token() super().synchronization() -- GitLab