Loading...
Searching...
No Matches
pcl::device::Block Struct Reference

`#include </build/pcl-Jv4Ahb/pcl-1.14.0+dfsg/gpu/kinfu/src/cuda/utils.hpp>`

## Static Public Member Functions

static __device__ __forceinline__ unsigned int | stride ()
static __device__ __forceinline__ int | flattenedThreadId ()
template<int CTA_SIZE, typename T , class BinOp >
static __device__ __forceinline__ void | reduce (volatile T *buffer, BinOp op)
template<int CTA_SIZE, typename T , class BinOp >
static __device__ __forceinline__ T | reduce (volatile T *buffer, T init, BinOp op)
static __device__ __forceinline__ unsigned int | id ()
static __device__ __forceinline__ unsigned int | stride ()
static __device__ __forceinline__ void | sync ()
static __device__ __forceinline__ int | flattenedThreadId ()
template<typename It , typename T >
static __device__ __forceinline__ void | fill (It beg, It end, const T &value)
template<typename OutIt , typename T >
static __device__ __forceinline__ void | yota (OutIt beg, OutIt end, T value)
template<typename InIt , typename OutIt >
static __device__ __forceinline__ void | copy (InIt beg, InIt end, OutIt out)
template<typename InIt , typename OutIt , class UnOp >
static __device__ __forceinline__ void | transform (InIt beg, InIt end, OutIt out, UnOp op)
template<typename InIt1 , typename InIt2 , typename OutIt , class BinOp >
static __device__ __forceinline__ void | transform (InIt1 beg1, InIt1 end1, InIt2 beg2, OutIt out, BinOp op)
template<int CTA_SIZE, typename T , class BinOp >
static __device__ __forceinline__ void | reduce (volatile T *buffer, BinOp op)
template<int CTA_SIZE, typename T , class BinOp >
static __device__ __forceinline__ T | reduce (volatile T *buffer, T init, BinOp op)
template<typename T , class BinOp >
static __device__ __forceinline__ void | reduce_n (T *data, unsigned int n, BinOp op)

## Detailed Description

Definition at line 462 of file utils.hpp.

## Member Function Documentation

## copy()

template<typename InIt , typename OutIt >

static __device__ __forceinline__ void pcl::device::Block::copy | ( | InIt | beg,
|  | InIt | end,
|  | OutIt | out
| ) |  |

inline static

Definition at line 88 of file block.hpp.

References flattenedThreadId(), and stride().

## fill()

template<typename It , typename T >

static __device__ __forceinline__ void pcl::device::Block::fill | ( | It | beg,
|  | It | end,
|  | const T & | value
| ) |  |

inline static

Definition at line 67 of file block.hpp.

References flattenedThreadId(), and stride().

## flattenedThreadId() [1/2]

static __device__ __forceinline__ int pcl::device::Block::flattenedThreadId | ( |  | ) |

inline static

Definition at line 470 of file utils.hpp.

Referenced by copy(), fill(), reduce(), reduce(), reduce_n(), transform(), transform(), and yota().

## flattenedThreadId() [2/2]

static __device__ __forceinline__ int pcl::device::Block::flattenedThreadId | ( |  | ) |

inline static

Definition at line 61 of file block.hpp.

## id()

static __device__ __forceinline__ unsigned int pcl::device::Block::id | ( |  | ) |

inline static

Definition at line 46 of file block.hpp.

## reduce() [1/4]

template<int CTA_SIZE, typename T , class BinOp >

static __device__ __forceinline__ void pcl::device::Block::reduce | ( | volatile T * | buffer,
|  | BinOp | op
| ) |  |

inline static

Definition at line 476 of file utils.hpp.

References flattenedThreadId().

## reduce() [2/4]

template<int CTA_SIZE, typename T , class BinOp >

static __device__ __forceinline__ void pcl::device::Block::reduce | ( | volatile T * | buffer,
|  | BinOp | op
| ) |  |

inline static

Definition at line 122 of file block.hpp.

References flattenedThreadId().

## reduce() [3/4]

template<int CTA_SIZE, typename T , class BinOp >

static __device__ __forceinline__ T pcl::device::Block::reduce | ( | volatile T * | buffer,
|  | T | init,
|  | BinOp | op
| ) |  |

inline static

Definition at line 498 of file utils.hpp.

References flattenedThreadId().

## reduce() [4/4]

template<int CTA_SIZE, typename T , class BinOp >

static __device__ __forceinline__ T pcl::device::Block::reduce | ( | volatile T * | buffer,
|  | T | init,
|  | BinOp | op
| ) |  |

inline static

Definition at line 144 of file block.hpp.

References flattenedThreadId().

## reduce_n()

template<typename T , class BinOp >

static __device__ __forceinline__ void pcl::device::Block::reduce_n | ( | T * | data,
|  | unsigned int | n,
|  | BinOp | op
| ) |  |

inline static

Definition at line 169 of file block.hpp.

References flattenedThreadId(), and stride().

## stride() [1/2]

static __device__ __forceinline__ unsigned int pcl::device::Block::stride | ( |  | ) |

inline static

Definition at line 464 of file utils.hpp.

Referenced by copy(), fill(), reduce_n(), transform(), transform(), and yota().

## stride() [2/2]

static __device__ __forceinline__ unsigned int pcl::device::Block::stride | ( |  | ) |

inline static

Definition at line 51 of file block.hpp.

## sync()

static __device__ __forceinline__ void pcl::device::Block::sync | ( |  | ) |

inline static

Definition at line 56 of file block.hpp.

## transform() [1/2]

template<typename InIt , typename OutIt , class UnOp >

static __device__ __forceinline__ void pcl::device::Block::transform | ( | InIt | beg,
|  | InIt | end,
|  | OutIt | out,
|  | UnOp | op
| ) |  |

inline static

Definition at line 99 of file block.hpp.

References flattenedThreadId(), and stride().

## transform() [2/2]

template<typename InIt1 , typename InIt2 , typename OutIt , class BinOp >

static __device__ __forceinline__ void pcl::device::Block::transform | ( | InIt1 | beg1,
|  | InIt1 | end1,
|  | InIt2 | beg2,
|  | OutIt | out,
|  | BinOp | op
| ) |  |

inline static

Definition at line 110 of file block.hpp.

References flattenedThreadId(), and stride().

## yota()

template<typename OutIt , typename T >

static __device__ __forceinline__ void pcl::device::Block::yota | ( | OutIt | beg,
|  | OutIt | end,
|  | T | value
| ) |  |

inline static

Definition at line 77 of file block.hpp.

References flattenedThreadId(), and stride().

The documentation for this struct was generated from the following files:

- /build/pcl-Jv4Ahb/pcl-1.14.0+dfsg/gpu/kinfu/src/cuda/utils.hpp
- /build/pcl-Jv4Ahb/pcl-1.14.0+dfsg/gpu/utils/include/pcl/gpu/utils/device/block.hpp