From edb4b76b7c11112832b98f84b46874b11e1aff03 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Vitaliy=20Cherepanov/AI=20Tools=20Lab/Engineer/=EC=82=BC?= =?utf8?q?=EC=84=B1=EC=A0=84=EC=9E=90?= Date: Thu, 24 May 2018 17:09:30 +0300 Subject: [PATCH] nnc: create AbstractSession class (#246) nnc: create AbstractSession class This class will be used for plugin and nnc communication Signed-off-by: Vitaliy Cherepanov --- contrib/nnc/libs/plugin/include/AbstractSession.h | 34 +++++++++++++++++++++++ contrib/nnc/libs/plugin/src/AbstractSession.cpp | 17 ++++++++++++ 2 files changed, 51 insertions(+) create mode 100644 contrib/nnc/libs/plugin/include/AbstractSession.h create mode 100644 contrib/nnc/libs/plugin/src/AbstractSession.cpp diff --git a/contrib/nnc/libs/plugin/include/AbstractSession.h b/contrib/nnc/libs/plugin/include/AbstractSession.h new file mode 100644 index 0000000..a4bffb1 --- /dev/null +++ b/contrib/nnc/libs/plugin/include/AbstractSession.h @@ -0,0 +1,34 @@ +#ifndef __ABSTRACT_SESSION_H__ +#define __ABSTRACT_SESSION_H__ + +#include +#include "PluginParam.h" +#include "PluginType.h" + +namespace nncc +{ +namespace contrib +{ +namespace config +{ + +class AbstractSession +{ +public: + AbstractSession() = default; + + virtual void addInfo(const std::string &name, const std::string &value) = 0; + virtual void registerParam(const PluginParam ¶m) = 0; + + plugin::PluginType getPluginType(); + void setPluginType(plugin::PluginType pluginType); + +private: + plugin::PluginType _pluginType; +}; + +} // namespace config +} // namespace contrib +} // namespace nncc + +#endif // __ABSTRACT_SESSION_H__ diff --git a/contrib/nnc/libs/plugin/src/AbstractSession.cpp b/contrib/nnc/libs/plugin/src/AbstractSession.cpp new file mode 100644 index 0000000..571956e --- /dev/null +++ b/contrib/nnc/libs/plugin/src/AbstractSession.cpp @@ -0,0 +1,17 @@ +#include "AbstractSession.h" +#include "PluginType.h" + +namespace nncc +{ +namespace contrib +{ +namespace config +{ + +plugin::PluginType AbstractSession::getPluginType() { return _pluginType; } + +void AbstractSession::setPluginType(plugin::PluginType pluginType) { _pluginType = pluginType; } + +} // namespace config +} // namespace contrib +} // namespace nncc -- 2.7.4