GaitGeneration by Graph Search
読み取り中…
検索中…
一致する文字列を見つけられません
graph_viewer_gui_controller.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_GRAPH_VIEWER_GUI_CONTROLLER_H_
9#define DESIGNLAB_GRAPH_VIEWER_GUI_CONTROLLER_H_
10
11#include <memory>
12#include <utility>
13#include <vector>
14
16#include "keyboard.h"
17#include "robot_state_node.h"
18
20
21namespace designlab
22{
23
27{
28public:
30 const std::vector<RobotStateNode>* const graph_ptr,
31 size_t* const display_node_index_ptr,
32 const std::shared_ptr<const ApplicationSettingRecord>& setting_ptr);
33
35
36 void Update();
37
38 void Draw() const;
39
41
42private:
43 void DrawGraphData() const;
44 void DrawNodeControlPanel() const;
45 void DrawNodeData(const RobotStateNode& node) const;
46
47 void InputNumber();
48 void ChangeDisplayNodeIndex();
49 void UpdateChildrenList();
50
51 const std::vector<RobotStateNode>* const graph_ptr_;
52
53 const std::shared_ptr<const ApplicationSettingRecord> setting_ptr_;
54
55 Keyboard keyboard_;
56
57 size_t* const display_node_index_ptr_;
58
60 std::pair<int, std::vector<int>> children_list_ = { -1, {} };
61
63 int display_children_list_index_ = 0;
64
65 std::vector<int> graph_node_depth_data_;
66 int input_number_ = -1;
67};
68
69} // namespace designlab
70
71
72#endif // DESIGNLAB_GRAPH_VIEWER_GUI_CONTROLLER_H_
グラフのノードのデータを表示するGUIのコントローラークラス.
Dxlibのキーボード入力を取得するクラス.
Definition keyboard.h:20
グラフ構造のためのノード(頂点).旧名 LNODE