summaryrefslogtreecommitdiff
path: root/runtimes/neurun/src/backend/BackendManager.h
diff options
context:
space:
mode:
Diffstat (limited to 'runtimes/neurun/src/backend/BackendManager.h')
-rw-r--r--runtimes/neurun/src/backend/BackendManager.h94
1 files changed, 0 insertions, 94 deletions
diff --git a/runtimes/neurun/src/backend/BackendManager.h b/runtimes/neurun/src/backend/BackendManager.h
deleted file mode 100644
index 428542b1e..000000000
--- a/runtimes/neurun/src/backend/BackendManager.h
+++ /dev/null
@@ -1,94 +0,0 @@
-/*
- * Copyright (c) 2018 Samsung Electronics Co., Ltd. All Rights Reserved
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef __NEURUN_BACKEND_BACKEND_MANAGER_H__
-#define __NEURUN_BACKEND_BACKEND_MANAGER_H__
-
-#include <memory>
-#include <map>
-
-#include "model/operand/Set.h"
-
-namespace neurun
-{
-namespace backend
-{
-
-struct IConfig;
-struct IStageGenerator;
-struct ITensorBuilder;
-
-class Backend
-{
-public:
- Backend(const std::shared_ptr<neurun::backend::IConfig> &backend_config,
- const std::shared_ptr<neurun::backend::IStageGenerator> &stage_gen);
-
- Backend(void) : _config(nullptr), _stage_gen(nullptr)
- {
- // DO NOTHING
- }
-
-public:
- const std::shared_ptr<neurun::backend::IConfig> config() const;
- const std::shared_ptr<neurun::backend::IStageGenerator> stage_gen() const;
- const std::shared_ptr<neurun::backend::ITensorBuilder> tensor_builder() const;
-
-private:
- std::shared_ptr<neurun::backend::IConfig> _config;
- std::shared_ptr<neurun::backend::IStageGenerator> _stage_gen;
-};
-
-class BackendManager
-{
-public:
- BackendManager(const neurun::model::operand::Set &operands);
-
- Backend *get(const std::string &key);
-
-private:
- std::map<std::string, Backend> _gen_map;
- /**
- * @brief Allocate an object of a class of a plugin by loading a plugin function, that does
- * allocation, and calling it
- *
- * @param object_of_plugin_class target object
- * @param obj_creator_func_name name of the plugin function, that allocates an object
- * @param handle handle of the plugin
- * @param args arguments to pass to constructor of the plugin class
- *
- * @return
- */
- template <typename T, class... Types>
- void loadObjectFromPlugin(std::shared_ptr<T> &object_of_plugin_class,
- const std::string obj_creator_func_name, void *handle,
- Types &&... args);
-
- /**
- * @brief load backend plugin
- *
- * @param backend backend to be loaded
- * @param operands operands to construct StageGenerator
- *
- * @return
- */
- void loadBackend(const std::string &backend, const neurun::model::operand::Set &operands);
-};
-
-} // namespace backend
-} // namespace neurun
-
-#endif // __NEURUN_BACKEND_BACKEND_MANAGER_H__