36 lines
707 B
C++
36 lines
707 B
C++
#ifndef __UT_DDS_CALLBACK_HPP__
|
|
#define __UT_DDS_CALLBACK_HPP__
|
|
|
|
#include <unitree/common/decl.hpp>
|
|
|
|
using DdsMessageHandler = std::function<void(const void*)>;
|
|
|
|
namespace unitree
|
|
{
|
|
namespace common
|
|
{
|
|
class DdsReaderCallback
|
|
{
|
|
public:
|
|
DdsReaderCallback();
|
|
DdsReaderCallback(const DdsMessageHandler& handler);
|
|
DdsReaderCallback(const DdsReaderCallback& cb);
|
|
DdsReaderCallback& operator=(const DdsReaderCallback& cb);
|
|
|
|
~DdsReaderCallback();
|
|
|
|
public:
|
|
bool HasMessageHandler() const;
|
|
void OnDataAvailable(const void* message);
|
|
|
|
private:
|
|
DdsMessageHandler mMessageHandler;
|
|
};
|
|
|
|
using DdsReaderCallbackPtr = std::shared_ptr<DdsReaderCallback>;
|
|
|
|
}
|
|
}
|
|
|
|
#endif//__UT_DDS_CALLBACK_HPP__
|