00001 #ifndef BT_COUT_LOGGER_H 00002 #define BT_COUT_LOGGER_H 00003 00004 #include <cstring> 00005 #include "abstract_logger.h" 00006 00007 namespace BT 00008 { 00019 class StdCoutLogger : public StatusChangeLogger 00020 { 00021 static std::atomic<bool> ref_count; 00022 00023 public: 00024 StdCoutLogger(TreeNode* root_node); 00025 ~StdCoutLogger(); 00026 00027 virtual void callback(Duration timestamp, const TreeNode& node, NodeStatus prev_status, 00028 NodeStatus status) override; 00029 00030 virtual void flush() override; 00031 }; 00032 00033 } // end namespace 00034 00035 #endif // BT_COUT_LOGGER_H