Ember
Loading...
Searching...
No Matches
TreeBuilder.h
Go to the documentation of this file.
1
#pragma once
2
3
#include <memory>
4
#include <string>
5
6
#include "
Core/BehaviorTree.h
"
7
#include "
Core/Node.h
"
8
#include "
Network/Schema/generated/ember_protocol_generated.h
"
9
10
namespace
Ember
{
11
namespace
Network
{
12
13
class
TreeBuilder
{
14
public
:
15
struct
BuildResult
{
16
bool
success
=
false
;
17
std::shared_ptr<EmberCore::BehaviorTree>
tree
;
18
int
node_count
= 0;
19
std::string
error
;
20
};
21
22
BuildResult
Build
(
const
Protocol::TreeInit *tree_init);
23
24
private
:
25
std::unique_ptr<EmberCore::Node>
BuildNode
(
const
Protocol::NodeDefinition *def);
26
27
void
BuildBlackboards
(
EmberCore::BehaviorTree
*tree,
28
const
flatbuffers::Vector<flatbuffers::Offset<Protocol::BlackboardDefinition>> *blackboards);
29
30
EmberCore::Node::Type
ConvertNodeType
(
Protocol::NodeType
fb_type);
31
32
int
m_nodeCount
= 0;
33
};
34
35
}
// namespace Network
36
}
// namespace Ember
BehaviorTree.h
Node.h
EmberCore::BehaviorTree
Represents a complete behavior tree data structure.
Definition
BehaviorTree.h:54
EmberCore::Node::Type
Type
Node types for behavior tree classification.
Definition
Node.h:25
Ember::Network::TreeBuilder
Definition
TreeBuilder.h:13
Ember::Network::TreeBuilder::BuildBlackboards
void BuildBlackboards(EmberCore::BehaviorTree *tree, const flatbuffers::Vector< flatbuffers::Offset< Protocol::BlackboardDefinition > > *blackboards)
Definition
TreeBuilder.cpp:103
Ember::Network::TreeBuilder::ConvertNodeType
EmberCore::Node::Type ConvertNodeType(Protocol::NodeType fb_type)
Definition
TreeBuilder.cpp:137
Ember::Network::TreeBuilder::Build
BuildResult Build(const Protocol::TreeInit *tree_init)
Definition
TreeBuilder.cpp:8
Ember::Network::TreeBuilder::BuildNode
std::unique_ptr< EmberCore::Node > BuildNode(const Protocol::NodeDefinition *def)
Definition
TreeBuilder.cpp:61
Ember::Network::TreeBuilder::m_nodeCount
int m_nodeCount
Definition
TreeBuilder.h:32
ember_protocol_generated.h
Ember::Network
Definition
TCPTreeAdapter.h:12
Ember::Protocol::NodeType
NodeType
Definition
ember_protocol_generated.h:122
Ember
Definition
TCPTreeAdapter.h:11
Ember::Network::TreeBuilder::BuildResult
Definition
TreeBuilder.h:15
Ember::Network::TreeBuilder::BuildResult::error
std::string error
Definition
TreeBuilder.h:19
Ember::Network::TreeBuilder::BuildResult::node_count
int node_count
Definition
TreeBuilder.h:18
Ember::Network::TreeBuilder::BuildResult::success
bool success
Definition
TreeBuilder.h:16
Ember::Network::TreeBuilder::BuildResult::tree
std::shared_ptr< EmberCore::BehaviorTree > tree
Definition
TreeBuilder.h:17
EmberCore
include
Network
Builder
TreeBuilder.h
Generated by
Release_1_14_0