| RetryOnFail | Executes the skills sequentially restarts from the beginning if a skill fails. | Optionally takes the maximal amount restarts as parameter, otherwise retires until all skills have succeded. |
| RetryOnFail | Executes the skills sequentially restarts from the beginning if a skill fails. | Optionally takes the maximal amount restarts as parameter, otherwise retires until all skills have succeded. |
| NoFail | Wrapper for a skill processor to stop if from returning fail. | Takes a skillprocessor as a parameter. |
| NoFail | Wrapper for a skill processor to stop if from returning fail. | Takes a skillprocessor as a parameter. |
+
| InferInvalid | Infers parameters which exist in the blackboard which might happen to be invalid | |
These are all the skill processors one can use but they can also be found [[https://git.cs.lth.se/robotlab/rvmi/skiros2/-/blob/master/skiros2_skill/src/skiros2_skill/core/processors.py|here]]. An example of how to use these skill processors can be seen in [[https://git.cs.lth.se/robotlab/skill_examples/-/blob/master/src/skill_examples/basic_compound_skill.py|basic_compound]] and an example of how to use these processors to perform conditional checks which determine how the skill runs can be seen in [[https://git.cs.lth.se/robotlab/skill_examples/-/blob/master/src/skill_examples/compound_if_statement.py|compound_if_statement]].
These are all the skill processors one can use but they can also be found [[https://git.cs.lth.se/robotlab/rvmi/skiros2/-/blob/master/skiros2_skill/src/skiros2_skill/core/processors.py|here]]. An example of how to use these skill processors can be seen in [[https://git.cs.lth.se/robotlab/skill_examples/-/blob/master/src/skill_examples/basic_compound_skill.py|basic_compound]] and an example of how to use these processors to perform conditional checks which determine how the skill runs can be seen in [[https://git.cs.lth.se/robotlab/skill_examples/-/blob/master/src/skill_examples/compound_if_statement.py|compound_if_statement]].