1#ifndef ABSTRACT_LOGGER_H
2#define ABSTRACT_LOGGER_H
4#include "behaviortree_cpp/behavior_tree.h"
5#include "behaviortree_cpp/bt_factory.h"
11enum class TimestampType
23 virtual ~StatusChangeLogger();
31 virtual void callback(
BT::Duration timestamp,
const TreeNode& node,
34 virtual void flush() = 0;
36 void setEnabled(
bool enabled);
38 void setTimestampType(TimestampType type);
43 bool showsTransitionToIdle()
const;
45 void enableTransitionToIdle(
bool enable);
66 std::unique_ptr<PImpl> _p;
Definition: abstract_logger.h:18
void subscribeToTreeChanges(TreeNode *root_node)
Subscribe to status changes. Call at end of constructor for deferred subscription.
void unsubscribeFromTreeChanges()
StatusChangeLogger(TreeNode *root_node)
Construct and immediately subscribe to status changes.
StatusChangeLogger()
Default constructor for deferred subscription. Call subscribeToTreeChanges() when ready.
Abstract base class for Behavior Tree Nodes.
Definition: tree_node.h:154
Definition: action_node.h:24
NodeStatus
Definition: basic_types.h:34