From eb22d761cd697190ae97a7b511cb4cab3f9a50e0 Mon Sep 17 00:00:00 2001
From: Meixner <andre.meixner@kit.edu>
Date: Mon, 12 Aug 2024 12:27:11 +0200
Subject: [PATCH] Added chance to call a subskill synchronously in
 RandomChaining skill

---
 .../SkillProviderExample/RandomChaining.cpp      | 16 ++++++++++++----
 1 file changed, 12 insertions(+), 4 deletions(-)

diff --git a/source/RobotAPI/components/skills/SkillProviderExample/RandomChaining.cpp b/source/RobotAPI/components/skills/SkillProviderExample/RandomChaining.cpp
index d34d8e607..b48462eef 100644
--- a/source/RobotAPI/components/skills/SkillProviderExample/RandomChaining.cpp
+++ b/source/RobotAPI/components/skills/SkillProviderExample/RandomChaining.cpp
@@ -48,12 +48,20 @@ namespace armarx::skills::provider
         SkillProxy prx(
             manager,
             skills::SkillID{.providerId = *getSkillId().providerId, .skillName = subskillName});
-        callSubskillAsync(prx);
 
-        auto sleep_milliseconds = util::randomgen(1000, 0);
+        if (util::randomgen(10, 0) < 2)
+        {
+          callSubskill(prx);
+        }
+        else 
+        {
+          callSubskillAsync(prx);
 
-        ARMARX_INFO << "SLEEP FOR " << sleep_milliseconds << "ms";
-        std::this_thread::sleep_for(std::chrono::milliseconds(sleep_milliseconds));
+          auto sleep_milliseconds = util::randomgen(1000, 0);
+
+          ARMARX_INFO << "SLEEP FOR " << sleep_milliseconds << "ms";
+          std::this_thread::sleep_for(std::chrono::milliseconds(sleep_milliseconds));
+        }
       }
 
       return {TerminatedSkillStatus::Succeeded, nullptr};
-- 
GitLab