![]() |
ACloudViewer
3.9.4
A Modern Library for 3D Data Processing
|
#include <AdvancedIndexing.h>

Public Types | |
| enum class | AdvancedIndexerMode { SET , GET } |
Public Member Functions | |
| AdvancedIndexer (const Tensor &src, const Tensor &dst, const std::vector< Tensor > &index_tensors, const SizeVector &indexed_shape, const SizeVector &indexed_strides, AdvancedIndexerMode mode) | |
| CLOUDVIEWER_HOST_DEVICE char * | GetInputPtr (int64_t workload_idx) const |
| CLOUDVIEWER_HOST_DEVICE char * | GetOutputPtr (int64_t workload_idx) const |
| CLOUDVIEWER_HOST_DEVICE int64_t | GetIndexedOffset (int64_t workload_idx) const |
| int64_t | NumWorkloads () const |
Protected Attributes | |
| Indexer | indexer_ |
| AdvancedIndexerMode | mode_ |
| int64_t | num_indices_ |
| int64_t | element_byte_size_ |
| int64_t | indexed_shape_ [MAX_DIMS] |
| int64_t | indexed_strides_ [MAX_DIMS] |
AdvancedIndexer exposes an interface similar to Indexer, with support for advanced indexing.
In particular, AdvancedIndexer contains an Indexer instance to iterate src, dst and index tensors. AdvancedIndexer also contains various properties for advanced indexing.
To construct AdvancedIndexer, one must use the tensors and index tensors preprocessed by AdvancedIndexPreprocessor.
Definition at line 117 of file AdvancedIndexing.h.
| Enumerator | |
|---|---|
| SET | |
| GET | |
Definition at line 119 of file AdvancedIndexing.h.
|
inline |
Definition at line 121 of file AdvancedIndexing.h.
References cloudViewer::core::Dtype::ByteSize(), element_byte_size_, cloudViewer::core::Tensor::GetDtype(), indexed_shape_, indexed_strides_, indexer_, LogError, cloudViewer::core::NONE, num_indices_, cloudViewer::core::SmallVectorBase< Size_T >::size(), and cloudViewer::core::Dtype::ToString().
|
inline |
Definition at line 184 of file AdvancedIndexing.h.
References CLOUDVIEWER_ASSERT, cloudViewer::core::Indexer::GetInputPtr(), indexed_shape_, indexed_strides_, indexer_, num_indices_, and offset.
Referenced by GetInputPtr(), and GetOutputPtr().
|
inline |
Definition at line 167 of file AdvancedIndexing.h.
References element_byte_size_, GET, GetIndexedOffset(), cloudViewer::core::Indexer::GetInputPtr(), indexer_, and mode_.
Referenced by cloudViewer::core::kernel::IndexGetSYCL(), and cloudViewer::core::kernel::IndexSetSYCL().
|
inline |
Definition at line 175 of file AdvancedIndexing.h.
References element_byte_size_, GetIndexedOffset(), cloudViewer::core::Indexer::GetOutputPtr(), indexer_, mode_, and SET.
Referenced by cloudViewer::core::kernel::IndexGetSYCL(), and cloudViewer::core::kernel::IndexSetSYCL().
|
inline |
Definition at line 198 of file AdvancedIndexing.h.
References indexer_, and cloudViewer::core::Indexer::NumWorkloads().
Referenced by cloudViewer::core::kernel::IndexGetSYCL(), and cloudViewer::core::kernel::IndexSetSYCL().
|
protected |
Definition at line 204 of file AdvancedIndexing.h.
Referenced by AdvancedIndexer(), GetInputPtr(), and GetOutputPtr().
|
protected |
Definition at line 205 of file AdvancedIndexing.h.
Referenced by AdvancedIndexer(), and GetIndexedOffset().
|
protected |
Definition at line 206 of file AdvancedIndexing.h.
Referenced by AdvancedIndexer(), and GetIndexedOffset().
|
protected |
Definition at line 201 of file AdvancedIndexing.h.
Referenced by AdvancedIndexer(), GetIndexedOffset(), GetInputPtr(), GetOutputPtr(), and NumWorkloads().
|
protected |
Definition at line 202 of file AdvancedIndexing.h.
Referenced by GetInputPtr(), and GetOutputPtr().
|
protected |
Definition at line 203 of file AdvancedIndexing.h.
Referenced by AdvancedIndexer(), and GetIndexedOffset().