plugin
0.1.0
src
common
utils
include
utils
shared_tensor_allocator.hpp
1
/*
2
// Copyright (C) 2021-2024 Intel Corporation
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
#pragma once
18
19
#include <opencv2/core.hpp>
20
21
struct
SharedMatAllocator
{
22
const
cv::Mat mat;
23
void
* allocate(
size_t
bytes,
size_t
) {
return
bytes <= mat.rows * mat.step[0] ? mat.data :
nullptr
;}
24
void
deallocate(
void
*,
size_t
,
size_t
) {}
25
bool
is_equal(
const
SharedMatAllocator
& other)
const
noexcept {
return
this
== &other;}
26
};
SharedMatAllocator
Definition:
shared_tensor_allocator.hpp:21
Generated by
1.9.1