diff options
Diffstat (limited to 'runtimes/neurun/src/frontend/wrapper/execution.h')
-rw-r--r-- | runtimes/neurun/src/frontend/wrapper/execution.h | 69 |
1 files changed, 0 insertions, 69 deletions
diff --git a/runtimes/neurun/src/frontend/wrapper/execution.h b/runtimes/neurun/src/frontend/wrapper/execution.h deleted file mode 100644 index b68a7b967..000000000 --- a/runtimes/neurun/src/frontend/wrapper/execution.h +++ /dev/null @@ -1,69 +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 __EXECUTION_H__ -#define __EXECUTION_H__ - -#include "compiler/Plan.h" -#include "exec/Source.h" -#include "exec/Sink.h" - -struct ANeuralNetworksExecution -{ -public: - ANeuralNetworksExecution(const std::shared_ptr<const neurun::compiler::Plan> &plan) : _plan{plan} - { - _sources.resize(_plan->model().getInputs().size()); - _sinks.resize(_plan->model().getOutputs().size()); - } - -public: - const neurun::compiler::Plan &plan(void) const { return *_plan; } - -private: - std::shared_ptr<const neurun::compiler::Plan> _plan; - -public: - // TODO Use InputIndex instead of int - void source(int n, std::unique_ptr<neurun::exec::ISource> &&source) - { - _sources.at(n) = std::move(source); - } - template <typename T, typename... Args> void source(int n, Args &&... args) - { - source(n, std::unique_ptr<T>{new T{std::forward<Args>(args)...}}); - } - -public: - const neurun::exec::ISource &source(int n) const { return *(_sources.at(n)); } - -public: - // TODO Use OutputIndex instead of int - void sink(int n, std::unique_ptr<neurun::exec::ISink> &&sink) { _sinks.at(n) = std::move(sink); } - template <typename T, typename... Args> void sink(int n, Args &&... args) - { - sink(n, std::unique_ptr<T>{new T{std::forward<Args>(args)...}}); - } - -public: - const neurun::exec::ISink &sink(int n) const { return *(_sinks.at(n)); } - -private: - std::vector<std::unique_ptr<neurun::exec::ISource>> _sources; - std::vector<std::unique_ptr<neurun::exec::ISink>> _sinks; -}; - -#endif |