23 #ifndef IDOBBYRDKLOGGINGPLUGIN_H
24 #define IDOBBYRDKLOGGINGPLUGIN_H
26 #include "IDobbyRdkPlugin.h"
27 #include "DobbyRdkPluginUtils.h"
29 #include "IPollLoop.h"
31 #include "rt_dobby_schema.h"
34 #include <sys/types.h>
53 virtual void RegisterPollSources(
int fd, std::shared_ptr<AICommon::IPollLoop> pollLoop) = 0;
55 virtual void DumpToLog(
const int bufferFd) = 0;
71 #define REGISTER_RDK_LOGGER(_class) \
72 extern "C" PUBLIC_FN IDobbyRdkLoggingPlugin *createIDobbyRdkLogger(std::shared_ptr<rt_dobby_schema> &containerConfig, const std::shared_ptr<DobbyRdkPluginUtils> &utils, const std::string &rootfsPath); \
73 extern "C" PUBLIC_FN IDobbyRdkLoggingPlugin *createIDobbyRdkLogger(std::shared_ptr<rt_dobby_schema> &containerConfig, const std::shared_ptr<DobbyRdkPluginUtils> &utils, const std::string &rootfsPath) \
75 return new _class(containerConfig, utils, rootfsPath); \
77 extern "C" PUBLIC_FN void destroyIDobbyRdkLogger(_class const *_plugin); \
78 extern "C" PUBLIC_FN void destroyIDobbyRdkLogger(_class const *_plugin) \
80 return delete _plugin; \
Interface that plugin libraries have to implement.
Definition: IDobbyRdkLoggingPlugin.h:48
Interface that plugin libraries have to implement.
Definition: IDobbyRdkPlugin.h:49