Open3D (C++ API)
Namespaces | Data Structures | Enumerations | Functions | Variables
open3d::kernel Namespace Reference

Namespaces

 parallel_util
 

Data Structures

class  CPUArgReductionEngine
 
class  CPULauncher
 
class  CPUReductionEngine
 

Enumerations

enum  BinaryEWOpCode {
  BinaryEWOpCode::Add, BinaryEWOpCode::Sub, BinaryEWOpCode::Mul, BinaryEWOpCode::Div,
  BinaryEWOpCode::LogicalAnd, BinaryEWOpCode::LogicalOr, BinaryEWOpCode::LogicalXor, BinaryEWOpCode::Gt,
  BinaryEWOpCode::Lt, BinaryEWOpCode::Ge, BinaryEWOpCode::Le, BinaryEWOpCode::Eq,
  BinaryEWOpCode::Ne
}
 
enum  ReductionOpCode {
  ReductionOpCode::Sum, ReductionOpCode::Prod, ReductionOpCode::Min, ReductionOpCode::Max,
  ReductionOpCode::ArgMin, ReductionOpCode::ArgMax
}
 
enum  UnaryEWOpCode {
  UnaryEWOpCode::Sqrt, UnaryEWOpCode::Sin, UnaryEWOpCode::Cos, UnaryEWOpCode::Neg,
  UnaryEWOpCode::Exp, UnaryEWOpCode::Abs, UnaryEWOpCode::LogicalNot
}
 

Functions

void BinaryEW (const Tensor &lhs, const Tensor &rhs, Tensor &dst, BinaryEWOpCode op_code)
 
void BinaryEWCPU (const Tensor &lhs, const Tensor &rhs, Tensor &dst, BinaryEWOpCode op_code)
 
void Add (const Tensor &lhs, const Tensor &rhs, Tensor &dst)
 
void Sub (const Tensor &lhs, const Tensor &rhs, Tensor &dst)
 
void Mul (const Tensor &lhs, const Tensor &rhs, Tensor &dst)
 
void Div (const Tensor &lhs, const Tensor &rhs, Tensor &dst)
 
void IndexGet (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)
 
void IndexGetCPU (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)
 
Tensor NonZero (const Tensor &src)
 
Tensor NonZeroCPU (const Tensor &src)
 
void Reduction (const Tensor &src, Tensor &dst, const SizeVector &dims, bool keepdim, ReductionOpCode op_code)
 
void ReductionCPU (const Tensor &src, Tensor &dst, const SizeVector &dims, bool keepdim, ReductionOpCode op_code)
 
void UnaryEW (const Tensor &src, Tensor &dst, UnaryEWOpCode op_code)
 
void Copy (const Tensor &src, Tensor &dst)
 
void UnaryEWCPU (const Tensor &src, Tensor &dst, UnaryEWOpCode op_code)
 
void CopyCPU (const Tensor &src, Tensor &dst)
 

Variables

const std::unordered_set< BinaryEWOpCode, utility::hash_enum_class::hashs_boolean_binary_ew_op_codes
 

Enumeration Type Documentation

◆ BinaryEWOpCode

Enumerator
Add 
Sub 
Mul 
Div 
LogicalAnd 
LogicalOr 
LogicalXor 
Gt 
Lt 
Ge 
Le 
Eq 
Ne 

◆ ReductionOpCode

Enumerator
Sum 
Prod 
Min 
Max 
ArgMin 
ArgMax 

◆ UnaryEWOpCode

Enumerator
Sqrt 
Sin 
Cos 
Neg 
Exp 
Abs 
LogicalNot 

Function Documentation

◆ Add()

void open3d::kernel::Add ( const Tensor lhs,
const Tensor rhs,
Tensor dst 
)
inline

◆ BinaryEW()

void open3d::kernel::BinaryEW ( const Tensor lhs,
const Tensor rhs,
Tensor dst,
BinaryEWOpCode  op_code 
)

◆ BinaryEWCPU()

void open3d::kernel::BinaryEWCPU ( const Tensor lhs,
const Tensor rhs,
Tensor dst,
BinaryEWOpCode  op_code 
)

◆ Copy()

void open3d::kernel::Copy ( const Tensor src,
Tensor dst 
)

◆ CopyCPU()

void open3d::kernel::CopyCPU ( const Tensor src,
Tensor dst 
)

◆ Div()

void open3d::kernel::Div ( const Tensor lhs,
const Tensor rhs,
Tensor dst 
)
inline

◆ IndexGet()

void open3d::kernel::IndexGet ( const Tensor src,
Tensor dst,
const std::vector< Tensor > &  index_tensors,
const SizeVector indexed_shape,
const SizeVector indexed_strides 
)

◆ IndexGetCPU()

void open3d::kernel::IndexGetCPU ( const Tensor src,
Tensor dst,
const std::vector< Tensor > &  index_tensors,
const SizeVector indexed_shape,
const SizeVector indexed_strides 
)

◆ IndexSet()

void open3d::kernel::IndexSet ( const Tensor src,
Tensor dst,
const std::vector< Tensor > &  index_tensors,
const SizeVector indexed_shape,
const SizeVector indexed_strides 
)

◆ IndexSetCPU()

void open3d::kernel::IndexSetCPU ( const Tensor src,
Tensor dst,
const std::vector< Tensor > &  index_tensors,
const SizeVector indexed_shape,
const SizeVector indexed_strides 
)

◆ Mul()

void open3d::kernel::Mul ( const Tensor lhs,
const Tensor rhs,
Tensor dst 
)
inline

◆ NonZero()

Tensor open3d::kernel::NonZero ( const Tensor src)

◆ NonZeroCPU()

Tensor open3d::kernel::NonZeroCPU ( const Tensor src)

◆ Reduction()

void open3d::kernel::Reduction ( const Tensor src,
Tensor dst,
const SizeVector dims,
bool  keepdim,
ReductionOpCode  op_code 
)

◆ ReductionCPU()

void open3d::kernel::ReductionCPU ( const Tensor src,
Tensor dst,
const SizeVector dims,
bool  keepdim,
ReductionOpCode  op_code 
)

◆ Sub()

void open3d::kernel::Sub ( const Tensor lhs,
const Tensor rhs,
Tensor dst 
)
inline

◆ UnaryEW()

void open3d::kernel::UnaryEW ( const Tensor src,
Tensor dst,
UnaryEWOpCode  op_code 
)

◆ UnaryEWCPU()

void open3d::kernel::UnaryEWCPU ( const Tensor src,
Tensor dst,
UnaryEWOpCode  op_code 
)

Variable Documentation

◆ s_boolean_binary_ew_op_codes

const std::unordered_set< BinaryEWOpCode, utility::hash_enum_class::hash > open3d::kernel::s_boolean_binary_ew_op_codes
Initial value:
{
BinaryEWOpCode::LogicalAnd, BinaryEWOpCode::LogicalOr,
BinaryEWOpCode::LogicalXor, BinaryEWOpCode::Gt,
BinaryEWOpCode::Lt, BinaryEWOpCode::Ge,
BinaryEWOpCode::Le, BinaryEWOpCode::Eq,
BinaryEWOpCode::Ne,
}