Esempio n. 1
0
 def __init__(self, opts):
     super(TaskManager, self).__init__()
     self.node = cauv.node.Node("task_manager")
     self.node.subMessage(messaging.AddTaskMessage())
     self.node.subMessage(messaging.RemoveTaskMessage())
     self.node.subMessage(messaging.SetTaskStateMessage())
     self.node.subMessage(messaging.AddConditionMessage())
     self.node.subMessage(messaging.RemoveConditionMessage())
     self.node.subMessage(messaging.SetConditionStateMessage())
     self.node.subMessage(messaging.RequestAIStateMessage())
     self.node.subMessage(messaging.ScriptControlMessage())
     self.node.subMessage(messaging.AIControlMessage())
     self.node.subMessage(messaging.ProcessEndedMessage())
     self.node.subMessage(messaging.DetectorFiredMessage())
     self.node.subMessage(messaging.ScriptExitMessage())
     self.all_paused = not opts.unpaused
     self.ai_state = AIState(self)
     #Tasks - list of tasks that (in right conditions) should be called
     self.tasks = NameDict()
     self.conditions = NameDict()
     self.detector_fire_timeouts = collections.defaultdict(int)
     #currently running task
     self.last_available_tasks = []
     self.last_active_tasks = []
     self.mission_name = opts.mission_name
     if opts.mission_save:
         self.load_mission(open(opts.mission_save))
     self.gui_send_all()
     self.node.addObserver(self)
Esempio n. 2
0
 def test_set_condition_options(self):
     tm = self.get_tm()
     cond_name, task_name = self.add_test_condition(tm)
     condition_state = tm.node.last_msg(msg.ConditionStateMessage)
     options = condition_state.conditionOptions
     self.assertIn('state', options)
     options['state'] = True
     tm.onSetConditionStateMessage.func(
         msg.SetConditionStateMessage(cond_name, options))
     self.assertTrue(tm.conditions[cond_name].options.state)
     condition_state = tm.node.last_msg(msg.ConditionStateMessage)
     options = condition_state.conditionOptions
     self.assertTrue(options['state'])
    + p_stringVec \
    + r).streamline()
p_ScriptStateMessage.setParseAction(lambda x: messaging.ScriptStateMessage(*x[0]))
p_AddConditionMessage = pp.Group(l \
    + p_str \
    + r).streamline()
p_AddConditionMessage.setParseAction(lambda x: messaging.AddConditionMessage(*x[0]))
p_RemoveConditionMessage = pp.Group(l \
    + p_str \
    + r).streamline()
p_RemoveConditionMessage.setParseAction(lambda x: messaging.RemoveConditionMessage(*x[0]))
p_SetConditionStateMessage = pp.Group(l \
    + p_str + c \
    + p_stringParamValueMap \
    + r).streamline()
p_SetConditionStateMessage.setParseAction(lambda x: messaging.SetConditionStateMessage(*x[0]))
p_ConditionRemovedMessage = pp.Group(l \
    + p_str \
    + r).streamline()
p_ConditionRemovedMessage.setParseAction(lambda x: messaging.ConditionRemovedMessage(*x[0]))
p_ConditionStateMessage = pp.Group(l \
    + p_str + c \
    + p_stringParamValueMap + c \
    + p_stringParamValueMap \
    + r).streamline()
p_ConditionStateMessage.setParseAction(lambda x: messaging.ConditionStateMessage(*x[0]))
p_TaskTypesMessage = pp.Group(l \
    + p_stringVec \
    + r).streamline()
p_TaskTypesMessage.setParseAction(lambda x: messaging.TaskTypesMessage(*x[0]))
p_ConditionTypesMessage = pp.Group(l \
Esempio n. 4
0
def set_condition_options(ainode):
    condition_id = str(raw_input('Enter condition id: '))
    condition_options = input('Enter condition options (as dict): ')
    ainode.node.send(
        messaging.SetConditionStateMessage(condition_id, condition_options))
Esempio n. 5
0
 def __init__(self):
     proc.Proc.__init__(self, self.__class__.__name__ + "Detector")
     self.options = self.get_options()
     self.task_name = self.options._task_name
     self.debug = self.Debug()
     self.node.subMessage(msg.SetConditionStateMessage())