ONE - On-device Neural Engine
Loading...
Searching...
No Matches
CircleExporter.cpp
Go to the documentation of this file.
1
/*
2
* Copyright (c) 2020 Samsung Electronics Co., Ltd. All Rights Reserved
3
*
4
* Licensed under the Apache License, Version 2.0 (the "License");
5
* you may not use this file except in compliance with the License.
6
* You may obtain a copy of the License at
7
*
8
* http://www.apache.org/licenses/LICENSE-2.0
9
*
10
* Unless required by applicable law or agreed to in writing, software
11
* distributed under the License is distributed on an "AS IS" BASIS,
12
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
* See the License for the specific language governing permissions and
14
* limitations under the License.
15
*/
16
17
#include "
luci/CircleExporter.h
"
18
#include "
luci/IR/Module.h
"
19
#include "
CircleExporterImpl.h
"
20
21
#include <
oops/InternalExn.h
>
22
23
#include <fstream>
24
#include <memory>
25
26
namespace
luci
27
{
28
29
CircleExporter::CircleExporter
()
30
{
31
// NOTHING TO DO
32
}
33
34
bool
CircleExporter::invoke
(
Contract
*contract)
const
35
{
36
auto
module
= contract->module();
37
if
(module !=
nullptr
)
38
{
39
CircleExporterImpl
impl(module);
40
41
const
char
*ptr = impl.
getBufferPointer
();
42
const
size_t
size
= impl.
getBufferSize
();
43
44
// we just send one time
45
return
contract->
store
(ptr,
size
);
46
}
47
48
// NOTE some unit tests calls with nullptr module, cannot add assert here
49
// TODO fix those unit tests and add assert(false)
50
51
return
false
;
52
}
53
54
}
// namespace luci
InternalExn.h
luci::CircleExporter::CircleExporter
CircleExporter()
Definition
CircleExporter.cpp:29
luci::CircleExporter::invoke
bool invoke(Contract *) const
Definition
CircleExporter.cpp:34
luci::CircleExporterImpl
Definition
CircleExporterImpl.h:36
luci::CircleExporterImpl::getBufferPointer
const char * getBufferPointer() const
Definition
CircleExporterImpl.cpp:311
luci::CircleExporterImpl::getBufferSize
size_t getBufferSize() const
Definition
CircleExporterImpl.cpp:318
CircleExporter.h
CircleExporterImpl.h
Module.h
luci
Definition
DepthwiseConv2D.h:24
size
int32_t size[5]
Definition
Slice.cpp:35
luci::CircleExporter::Contract
Definition
CircleExporter.h:34
luci::CircleExporter::Contract::store
virtual bool store(const char *ptr, const size_t size) const =0
compiler
luci
export
src
CircleExporter.cpp
Generated by
1.9.8