[locomotiv] Set graph input data by NodeData (#3363)
author박천교/On-Device Lab(SR)/Engineer/삼성전자 <ch.bahk@samsung.com>
Thu, 25 Apr 2019 04:17:33 +0000 (13:17 +0900)
committer박종현/On-Device Lab(SR)/Staff Engineer/삼성전자 <jh1302.park@samsung.com>
Thu, 25 Apr 2019 04:17:33 +0000 (13:17 +0900)
This commit changes how Session gets its graph input. Using NodeData
instead of Buffer is for matching input and output type, and to avoid
use of template on header.

Signed-off-by: Cheongyo Bahk <ch.bahk@samsung.com>
contrib/locomotiv/include/locomotiv/Session.h

index 4a29324..02cfe11 100644 (file)
@@ -1,10 +1,27 @@
+/*
+ * Copyright (c) 2019 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 _LOCOMOTIV_SESSION_H_
 #define _LOCOMOTIV_SESSION_H_
 
 #include "locomotiv/NodeData.h"
 
 #include <loco.h>
-#include <nncc/core/ADT/tensor/Buffer.h>
+
+#include <memory>
 
 namespace locomotiv
 {
@@ -15,15 +32,13 @@ namespace locomotiv
 class Session
 {
 public:
-  template <typename DT> using Buffer = nncc::core::ADT::tensor::Buffer<DT>;
-
   Session() = delete;
   Session(loco::Graph *g) : _graph(g)
   {
     // DO NOTHING
   }
 
-  template <typename DT> void set_input(uint32_t index, Buffer<DT> &buf);
+  void set_input(uint32_t index, std::unique_ptr<NodeData> &&data);
 
   bool infer();