9#ifndef RAD_APPLICATION_HPP
10#define RAD_APPLICATION_HPP
26#include <boost/asio.hpp>
74 virtual bool Config(
int argc,
char* argv[]);
129 void RegisterMalDds(
const elt::mal::Mal::Properties& mal_properties);
143 [[deprecated(
"use RegisterMalDds(const elt::mal::Mal::Properties&)")]]
164 inline const std::string&
GetName()
const {
return m_name; }
179 inline std::shared_ptr<elt::mal::Mal>
GetMalInstance() {
return m_mal_zpb_instance; }
208 template<
typename IF,
typename IF_IMPL>
209 void RegisterService(
const std::string& name, std::shared_ptr<IF_IMPL> if_impl);
217 log4cplus::Logger m_logger;
219 std::shared_ptr<elt::mal::Mal> m_mal_zpb_instance;
220 std::shared_ptr<elt::mal::Mal> m_mal_dds_instance;
221 boost::asio::io_context m_ioc;
224 std::unique_ptr<rad::cii::Replier> m_mal_replier;
227template<
typename IF,
typename IF_IMPL>
230 if (m_mal_replier ==
nullptr) {
234 m_mal_replier->RegisterService<IF>(name, if_impl);
DataContext class header file.
Definition application.hpp:48
void CreateReplier(const std::string &uri)
Definition application.cpp:254
void StopEventLoop()
Definition application.cpp:244
std::shared_ptr< elt::mal::Mal > GetMalDdsInstance()
Definition application.hpp:184
virtual void Run()
Definition application.cpp:236
virtual void Init(rad::ConfigurableActionMgr &action_mgr)
Definition application.cpp:71
void RegisterService(const std::string &name, std::shared_ptr< IF_IMPL > if_impl)
Definition application.hpp:228
Application(const std::string &name, rad::DataContext &data)
Definition application.cpp:18
virtual void RegisterMalDds()
Definition application.cpp:186
rad::DataContext & GetDataContext()
Definition application.hpp:169
std::shared_ptr< elt::mal::Mal > GetMalInstance()
Definition application.hpp:179
Application & operator=(const Application &)=delete
Disable copy constructor.
boost::asio::io_context & GetEventLoop()
Definition application.hpp:174
const std::string & GetName() const
Definition application.hpp:164
virtual bool Config(int argc, char *argv[])
Definition application.cpp:39
~Application() override
Definition application.cpp:34
Application(const Application &)=delete
Definition configurableActionMgr.hpp:30
Definition dataContext.hpp:22
Definition smAdapter.hpp:60
Definition EventQueue.h:55
ConfigurableActionMgr class header file.
Definition actionsApp.cpp:23
Replier class header file.
SMAdapter class header file.