Skip to content
Snippets Groups Projects

Feature/call via memory

Merged Johann Mantel requested to merge feature/call_via_memory into master
5 unresolved threads

Merge request reports

Approval is optional

Merged by Fabian ReisterFabian Reister 2 years ago (Sep 9, 2022 12:24pm UTC)

Merge details

  • Changes merged into master with 5f0dda04.
  • Deleted the source branch.

Activity

Filter activity
  • Approvals
  • Assignees & reviewers
  • Comments (from bots)
  • Comments (from users)
  • Commits & branches
  • Edits
  • Labels
  • Lock status
  • Mentions
  • Merge request status
  • Tracking
  • 51 50 "The type of NJointController to use, e.g. GazeController");
    52 51 def->optional(properties.controllerName, "controllerName",
    53 52 "The name under which the controller is registered");
    54 def->optional(properties.kp, "kp", "Control gain kp");
    55 53 def->optional(properties.robotName, "properties.RobotName",
    56 54 "Name of the robot for framedPosition.");
    57 55 def->optional(properties.robotFrame, "properties.robotFrameName",
    58 56 "Name of the local robotFrame for framedPosition.");
    57 // listen to Controller updates
    58 def->topic<GazeControllerListener>("GazeTargets");
  • 136 std::lock_guard<std::mutex> targetLock(targetMutex);
    137 132
    138 ARMARX_WARNING
    139 << "Resetting PriorityQueue for targets, old requests are discarded";
    140 requestedTargets = std::priority_queue<TargetRequest>();
    133 ARMARX_INFO << "Resetting PriorityQueue, old requests are discarded";
    134 std::lock_guard<std::mutex> targetLock(targetMutex);
    135 requestedTargets.clear();
    141 136 }
    142 137
    143 138 void Scheduler::scheduleNextTarget() {
    144 139 // prevent communicaton loss by waiting for controller feedback
    145 140 if (!openControlRequest) {
    141
    142 // reference to targetRequest with highest priority
    143 auto nextTarget = requestedTargets.cbegin();
  • 135 131 void Scheduler::resetPriorityQueue(const Ice::Current &) {
    136 std::lock_guard<std::mutex> targetLock(targetMutex);
    137 132
    138 ARMARX_WARNING
    139 << "Resetting PriorityQueue for targets, old requests are discarded";
    140 requestedTargets = std::priority_queue<TargetRequest>();
    133 ARMARX_INFO << "Resetting PriorityQueue, old requests are discarded";
    134 std::lock_guard<std::mutex> targetLock(targetMutex);
    135 requestedTargets.clear();
    141 136 }
    142 137
    143 138 void Scheduler::scheduleNextTarget() {
    144 139 // prevent communicaton loss by waiting for controller feedback
    145 140 if (!openControlRequest) {
    141
    142 // reference to targetRequest with highest priority
  • 162 controller->submitTarget(newTarget.target, requestTimestamp);
    163 } else if (requestedTargets.top().priority >=
    164 submittedTargets.back().priority) {
    165 ARMARX_INFO << "requested Target priority >= current Target priority ("
    166 << requestedTargets.top().priority
    167 << " >= " << submittedTargets.back().priority << ")";
    166
    167 } else if (nextTarget->priority > submittedTargets.back().priority) {
    168 ARMARX_INFO << "requested Target priority > current Target priority ("
    169 << nextTarget->priority << " > "
    170 << submittedTargets.back().priority << ")";
    168 171 // replaced target needs to be stopped properly, then next target will be
    169 172 // scheduled automatically
    170 if (requestedTargets.top().preemptable) {
    171 ARMARX_INFO << "current Target is being preempted";
    172 173 armarx::core::time::dto::Duration zero;
    • After addressing Fabians points, and after we approved it, also please use our clang-format/clang-tidy setup and re-format your code. Add h2t/code_style to your project and configure your IDE properly, or just use tools/qtcreator/5.0 which is pre-configured.

      Edited by Christian Dreher
    • execute the following from the root of your package

      for file in source/**/*.{h,cpp}; do                            
      $ARMARX_WORKSPACE/.axii/bin/clang-format-14 -i $file ; done
    • But as I said, after addressing the open points. Otherwise the diff will be a mess.

    • Please register or sign in to reply
  • Johann Mantel added 1 commit

    added 1 commit

    • 616ce920 - Correct implementation for merge request

    Compare with previous version

  • Johann Mantel added 1 commit

    added 1 commit

    • a8a460f8 - use asynchronous call and remove default GazeTarget constructor

    Compare with previous version

  • Johann Mantel added 1 commit

    added 1 commit

    • 4039b8ec - use clang-14 for automatic formatting instead of clang-10

    Compare with previous version

  • Johann Mantel added 2 commits

    added 2 commits

    • 27204e21 - 1 commit from branch master
    • ded7d714 - Merge branch 'master' into 'feature/call_via_memory'

    Compare with previous version

  • Johann Mantel added 12 commits

    added 12 commits

    • 523f8567 - create client Library for easy c
    • 04e38b2b - update scheduler example to use client library
    • 8438bcb9 - define GazeScheduler configration as property
    • ef301d2d - Fix gaze_targets outstream display bug
    • ad18125c - Fix gaze_targets outstream display bug
    • 62ed4f41 - enable replacing active targets directly
    • 0f7eeb0a - Merge branch 'feature/client_implementation' of...
    • 76c68a53 - define robot specific nodeNames in a function
    • 9f083450 - use more comprehensive variable names and global constants in gaze_controller
    • d44d3fae - add a test case for target replacement
    • b5d4104f - update the object_tracking_example to use the new client
    • c332f913 - Merge branch 'feature/client_implementation' into feature/call_via_memory

    Compare with previous version

  • Johann Mantel added 1 commit

    added 1 commit

    • 26226997 - check for proper name in ViewSelection::commitGazeTarget

    Compare with previous version

  • Fabian Reister mentioned in commit 5f0dda04

    mentioned in commit 5f0dda04

  • Please register or sign in to reply
    Loading