ACloudViewer  3.9.4
A Modern Library for 3D Data Processing
IndexGetSet.h
Go to the documentation of this file.
1 // ----------------------------------------------------------------------------
2 // - CloudViewer: www.cloudViewer.org -
3 // ----------------------------------------------------------------------------
4 // Copyright (c) 2018-2024 www.cloudViewer.org
5 // SPDX-License-Identifier: MIT
6 // ----------------------------------------------------------------------------
7 
8 #pragma once
9 
10 #include <Logging.h>
11 
13 
14 namespace cloudViewer {
15 namespace core {
16 namespace kernel {
17 
18 void IndexGet(const Tensor& src,
19  Tensor& dst,
20  const std::vector<Tensor>& index_tensors,
21  const SizeVector& indexed_shape,
22  const SizeVector& indexed_strides);
23 
24 void IndexGetCPU(const Tensor& src,
25  Tensor& dst,
26  const std::vector<Tensor>& index_tensors,
27  const SizeVector& indexed_shape,
28  const SizeVector& indexed_strides);
29 
30 #ifdef BUILD_SYCL_MODULE
31 void IndexGetSYCL(const Tensor& src,
32  Tensor& dst,
33  const std::vector<Tensor>& index_tensors,
34  const SizeVector& indexed_shape,
35  const SizeVector& indexed_strides);
36 #endif
37 
38 #ifdef BUILD_CUDA_MODULE
39 void IndexGetCUDA(const Tensor& src,
40  Tensor& dst,
41  const std::vector<Tensor>& index_tensors,
42  const SizeVector& indexed_shape,
43  const SizeVector& indexed_strides);
44 #endif
45 
46 void IndexSet(const Tensor& src,
47  Tensor& dst,
48  const std::vector<Tensor>& index_tensors,
49  const SizeVector& indexed_shape,
50  const SizeVector& indexed_strides);
51 
52 void IndexSetCPU(const Tensor& src,
53  Tensor& dst,
54  const std::vector<Tensor>& index_tensors,
55  const SizeVector& indexed_shape,
56  const SizeVector& indexed_strides);
57 
58 #ifdef BUILD_SYCL_MODULE
59 void IndexSetSYCL(const Tensor& src,
60  Tensor& dst,
61  const std::vector<Tensor>& index_tensors,
62  const SizeVector& indexed_shape,
63  const SizeVector& indexed_strides);
64 #endif
65 
66 #ifdef BUILD_CUDA_MODULE
67 void IndexSetCUDA(const Tensor& src,
68  Tensor& dst,
69  const std::vector<Tensor>& index_tensors,
70  const SizeVector& indexed_shape,
71  const SizeVector& indexed_strides);
72 #endif
73 
74 } // namespace kernel
75 } // namespace core
76 } // namespace cloudViewer
void IndexGetCPU(const Tensor &src, Tensor &dst, const std::vector< Tensor > &index_tensors, const SizeVector &indexed_shape, const SizeVector &indexed_strides)
void IndexSet(const Tensor &src, Tensor &dst, const std::vector< Tensor > &index_tensors, const SizeVector &indexed_shape, const SizeVector &indexed_strides)
Definition: IndexGetSet.cpp:52
void IndexSetSYCL(const Tensor &src, Tensor &dst, const std::vector< Tensor > &index_tensors, const SizeVector &indexed_shape, const SizeVector &indexed_strides)
void IndexGetSYCL(const Tensor &src, Tensor &dst, const std::vector< Tensor > &index_tensors, const SizeVector &indexed_shape, const SizeVector &indexed_strides)
void IndexSetCPU(const Tensor &src, Tensor &dst, const std::vector< Tensor > &index_tensors, const SizeVector &indexed_shape, const SizeVector &indexed_strides)
void IndexGet(const Tensor &src, Tensor &dst, const std::vector< Tensor > &index_tensors, const SizeVector &indexed_shape, const SizeVector &indexed_strides)
Definition: IndexGetSet.cpp:22
Generic file read and write utility for python interface.