Ember
Loading...
Searching...
No Matches
Ember::Network::TCPTreeAdapter Class Reference

#include <TCPTreeAdapter.h>

Inheritance diagram for Ember::Network::TCPTreeAdapter:
EmberCore::ITreeStructure

Public Types

using NodeStatus = Protocol::NodeStatus

Public Member Functions

 TCPTreeAdapter (std::shared_ptr< EmberCore::BehaviorTree > tree, std::shared_ptr< StateManager > state_manager)
 ~TCPTreeAdapter () override=default
EmberCore::ITreeNodeGetRootNode () const override
bool HasRootNode () const override
const EmberCore::StringGetName () const override
const EmberCore::StringGetDescription () const override
size_t GetNodeCount () const override
size_t GetMaxDepth () const override
EmberCore::ITreeNodeFindNodeById (size_t id) const override
EmberCore::ITreeNodeFindNodeByName (const EmberCore::String &name) const override
std::vector< EmberCore::ITreeNode * > FindNodesByType (EmberCore::ITreeNode::NodeType type) const override
void TraverseNodes (std::function< void(EmberCore::ITreeNode *)> visitor) override
void TraverseNodes (std::function< void(const EmberCore::ITreeNode *)> visitor) const override
bool IsValid () const override
bool HasCycles () const override
std::vector< EmberCore::ITreeNode * > GetAllNodes () override
std::vector< const EmberCore::ITreeNode * > GetAllNodes () const override
EmberCore::String GetTreeStructure () const override
void PrintTree () const override
NodeStatus GetNodeStatus (size_t node_id) const
bool IsNodeInExecutionPath (size_t node_id) const
int64_t GetCurrentTick () const
std::shared_ptr< StateManagerGetStateManager ()
std::shared_ptr< const StateManagerGetStateManager () const
std::shared_ptr< EmberCore::BehaviorTreeGetBehaviorTree ()
std::shared_ptr< const EmberCore::BehaviorTreeGetBehaviorTree () const
Public Member Functions inherited from EmberCore::ITreeStructure
virtual ~ITreeStructure ()=default

Private Member Functions

EmberCore::NodeAdapterGetOrCreateAdapter (EmberCore::Node *node) const
void BuildAdapterCache () const

Private Attributes

std::shared_ptr< EmberCore::BehaviorTreem_tree
std::shared_ptr< StateManagerm_stateManager
std::unordered_map< size_t, std::unique_ptr< EmberCore::NodeAdapter > > m_adapters
EmberCore::NodeAdapterm_rootAdapter = nullptr
bool m_adapterCacheBuilt = false

Detailed Description

Definition at line 14 of file TCPTreeAdapter.h.

Member Typedef Documentation

◆ NodeStatus

Constructor & Destructor Documentation

◆ TCPTreeAdapter()

Ember::Network::TCPTreeAdapter::TCPTreeAdapter ( std::shared_ptr< EmberCore::BehaviorTree > tree,
std::shared_ptr< StateManager > state_manager )

Definition at line 6 of file TCPTreeAdapter.cpp.

◆ ~TCPTreeAdapter()

Ember::Network::TCPTreeAdapter::~TCPTreeAdapter ( )
overridedefault

Member Function Documentation

◆ BuildAdapterCache()

void Ember::Network::TCPTreeAdapter::BuildAdapterCache ( ) const
private

Definition at line 267 of file TCPTreeAdapter.cpp.

◆ FindNodeById()

EmberCore::ITreeNode * Ember::Network::TCPTreeAdapter::FindNodeById ( size_t id) const
overridevirtual

Implements EmberCore::ITreeStructure.

Definition at line 52 of file TCPTreeAdapter.cpp.

◆ FindNodeByName()

EmberCore::ITreeNode * Ember::Network::TCPTreeAdapter::FindNodeByName ( const EmberCore::String & name) const
overridevirtual

Implements EmberCore::ITreeStructure.

Definition at line 69 of file TCPTreeAdapter.cpp.

◆ FindNodesByType()

std::vector< EmberCore::ITreeNode * > Ember::Network::TCPTreeAdapter::FindNodesByType ( EmberCore::ITreeNode::NodeType type) const
overridevirtual

Implements EmberCore::ITreeStructure.

Definition at line 82 of file TCPTreeAdapter.cpp.

◆ GetAllNodes() [1/2]

std::vector< const EmberCore::ITreeNode * > Ember::Network::TCPTreeAdapter::GetAllNodes ( ) const
overridevirtual

Implements EmberCore::ITreeStructure.

Definition at line 184 of file TCPTreeAdapter.cpp.

◆ GetAllNodes() [2/2]

std::vector< EmberCore::ITreeNode * > Ember::Network::TCPTreeAdapter::GetAllNodes ( )
overridevirtual

Implements EmberCore::ITreeStructure.

Definition at line 164 of file TCPTreeAdapter.cpp.

◆ GetBehaviorTree() [1/2]

std::shared_ptr< EmberCore::BehaviorTree > Ember::Network::TCPTreeAdapter::GetBehaviorTree ( )
inline

Definition at line 53 of file TCPTreeAdapter.h.

◆ GetBehaviorTree() [2/2]

std::shared_ptr< const EmberCore::BehaviorTree > Ember::Network::TCPTreeAdapter::GetBehaviorTree ( ) const
inline

Definition at line 54 of file TCPTreeAdapter.h.

◆ GetCurrentTick()

int64_t Ember::Network::TCPTreeAdapter::GetCurrentTick ( ) const

Definition at line 241 of file TCPTreeAdapter.cpp.

◆ GetDescription()

const EmberCore::String & Ember::Network::TCPTreeAdapter::GetDescription ( ) const
overridevirtual

Implements EmberCore::ITreeStructure.

Definition at line 30 of file TCPTreeAdapter.cpp.

◆ GetMaxDepth()

size_t Ember::Network::TCPTreeAdapter::GetMaxDepth ( ) const
overridevirtual

Implements EmberCore::ITreeStructure.

Definition at line 45 of file TCPTreeAdapter.cpp.

◆ GetName()

const EmberCore::String & Ember::Network::TCPTreeAdapter::GetName ( ) const
overridevirtual

Implements EmberCore::ITreeStructure.

Definition at line 22 of file TCPTreeAdapter.cpp.

◆ GetNodeCount()

size_t Ember::Network::TCPTreeAdapter::GetNodeCount ( ) const
overridevirtual

Implements EmberCore::ITreeStructure.

Definition at line 38 of file TCPTreeAdapter.cpp.

◆ GetNodeStatus()

TCPTreeAdapter::NodeStatus Ember::Network::TCPTreeAdapter::GetNodeStatus ( size_t node_id) const

Definition at line 217 of file TCPTreeAdapter.cpp.

◆ GetOrCreateAdapter()

EmberCore::NodeAdapter * Ember::Network::TCPTreeAdapter::GetOrCreateAdapter ( EmberCore::Node * node) const
private

Definition at line 248 of file TCPTreeAdapter.cpp.

◆ GetRootNode()

EmberCore::ITreeNode * Ember::Network::TCPTreeAdapter::GetRootNode ( ) const
overridevirtual

Implements EmberCore::ITreeStructure.

Definition at line 10 of file TCPTreeAdapter.cpp.

◆ GetStateManager() [1/2]

std::shared_ptr< StateManager > Ember::Network::TCPTreeAdapter::GetStateManager ( )
inline

Definition at line 50 of file TCPTreeAdapter.h.

◆ GetStateManager() [2/2]

std::shared_ptr< const StateManager > Ember::Network::TCPTreeAdapter::GetStateManager ( ) const
inline

Definition at line 51 of file TCPTreeAdapter.h.

◆ GetTreeStructure()

EmberCore::String Ember::Network::TCPTreeAdapter::GetTreeStructure ( ) const
overridevirtual

Implements EmberCore::ITreeStructure.

Definition at line 204 of file TCPTreeAdapter.cpp.

◆ HasCycles()

bool Ember::Network::TCPTreeAdapter::HasCycles ( ) const
overridevirtual

Implements EmberCore::ITreeStructure.

Definition at line 157 of file TCPTreeAdapter.cpp.

◆ HasRootNode()

bool Ember::Network::TCPTreeAdapter::HasRootNode ( ) const
inlineoverridevirtual

Reimplemented from EmberCore::ITreeStructure.

Definition at line 22 of file TCPTreeAdapter.h.

◆ IsNodeInExecutionPath()

bool Ember::Network::TCPTreeAdapter::IsNodeInExecutionPath ( size_t node_id) const

Definition at line 224 of file TCPTreeAdapter.cpp.

◆ IsValid()

bool Ember::Network::TCPTreeAdapter::IsValid ( ) const
overridevirtual

Implements EmberCore::ITreeStructure.

Definition at line 150 of file TCPTreeAdapter.cpp.

◆ PrintTree()

void Ember::Network::TCPTreeAdapter::PrintTree ( ) const
overridevirtual

Implements EmberCore::ITreeStructure.

Definition at line 211 of file TCPTreeAdapter.cpp.

◆ TraverseNodes() [1/2]

void Ember::Network::TCPTreeAdapter::TraverseNodes ( std::function< void(const EmberCore::ITreeNode *)> visitor) const
overridevirtual

Implements EmberCore::ITreeStructure.

Definition at line 137 of file TCPTreeAdapter.cpp.

◆ TraverseNodes() [2/2]

void Ember::Network::TCPTreeAdapter::TraverseNodes ( std::function< void(EmberCore::ITreeNode *)> visitor)
overridevirtual

Implements EmberCore::ITreeStructure.

Definition at line 124 of file TCPTreeAdapter.cpp.

Member Data Documentation

◆ m_adapterCacheBuilt

bool Ember::Network::TCPTreeAdapter::m_adapterCacheBuilt = false
mutableprivate

Definition at line 65 of file TCPTreeAdapter.h.

◆ m_adapters

std::unordered_map<size_t, std::unique_ptr<EmberCore::NodeAdapter> > Ember::Network::TCPTreeAdapter::m_adapters
mutableprivate

Definition at line 63 of file TCPTreeAdapter.h.

◆ m_rootAdapter

EmberCore::NodeAdapter* Ember::Network::TCPTreeAdapter::m_rootAdapter = nullptr
mutableprivate

Definition at line 64 of file TCPTreeAdapter.h.

◆ m_stateManager

std::shared_ptr<StateManager> Ember::Network::TCPTreeAdapter::m_stateManager
private

Definition at line 61 of file TCPTreeAdapter.h.

◆ m_tree

std::shared_ptr<EmberCore::BehaviorTree> Ember::Network::TCPTreeAdapter::m_tree
private

Definition at line 60 of file TCPTreeAdapter.h.


The documentation for this class was generated from the following files: