GaitGeneration by Graph Search
読み取り中…
検索中…
一致する文字列を見つけられません
dead_lock_checker.h
[詳解]
1
3
4// Copyright(c) 2023-2025 Design Engineering Laboratory, Saitama University
5// Released under the MIT license
6// https://opensource.org/licenses/mit-license.php
7
8#ifndef DESIGNLAB_DEAD_LOCK_CHECKER_H_
9#define DESIGNLAB_DEAD_LOCK_CHECKER_H_
10
11#include <deque>
12
13#include "robot_state_node.h"
14
15
16namespace designlab
17{
18
29class DeadLockChecker final
30{
31public:
34 void AddNode(const RobotStateNode& node);
35
39 [[nodiscard]] bool IsDeadLock() const;
40
41private:
45 static constexpr int kMaxDataNum = 30;
46
47 std::deque<RobotStateNode> node_vec_;
48};
49
50} // namespace designlab
51
52
53#endif // DESIGNLAB_DEAD_LOCK_CHECKER_H_
動作のループを感知するクラス.
void AddNode(const RobotStateNode &node)
ロボットが行った動作を追加する.上限数を超えたら,古いものから削除する.
bool IsDeadLock() const
直近に行った動作を比較して,ロボットが正しく動作できているか判断する.
グラフ構造のためのノード(頂点).旧名 LNODE