Defines datatypes and functions to accumulate cloud of points. 
|  | 
| DW_API_PUBLIC dwStatus | dwPointCloudAccumulator_addLidarPacket (const dwLidarDecodedPacket *packet, dwPointCloudAccumulatorHandle_t obj) | 
|  | Pushes lidar packet to point cloud accumulator.  More... 
 | 
|  | 
| DW_API_PUBLIC dwStatus | dwPointCloudAccumulator_bindOutput (dwPointCloud *pointCloud, dwPointCloudAccumulatorHandle_t obj) | 
|  | Binds output point cloud buffer.  More... 
 | 
|  | 
| DW_API_PUBLIC dwStatus | dwPointCloudAccumulator_bindOutputTimestamps (dwPointCloudTimestampRange *timestampRange, dwPointCloudAccumulatorHandle_t obj) | 
|  | Binds output timestamp range.  More... 
 | 
|  | 
| DW_API_PUBLIC dwStatus | dwPointCloudAccumulator_getCUDAStream (cudaStream_t *stream, dwPointCloudAccumulatorHandle_t obj) | 
|  | Gets CUDA stream of point cloud accumulator.  More... 
 | 
|  | 
| DW_API_PUBLIC dwStatus | dwPointCloudAccumulator_getDefaultParams (dwPointCloudAccumulatorParams *params) | 
|  | Gets default point cloud accumulator parameters.  More... 
 | 
|  | 
| DW_API_PUBLIC dwStatus | dwPointCloudAccumulator_getSweepSize (dwVector2ui *size, dwPointCloudAccumulatorHandle_t obj) | 
|  | Gets sweeps/spins size.  More... 
 | 
|  | 
| DW_API_PUBLIC dwStatus | dwPointCloudAccumulator_initialize (dwPointCloudAccumulatorHandle_t *obj, const dwPointCloudAccumulatorParams *accumulationParams, const dwLidarProperties *lidarProperties, dwContextHandle_t ctx) | 
|  | Initializes point cloud accumulator.  More... 
 | 
|  | 
| DW_API_PUBLIC dwStatus | dwPointCloudAccumulator_isReady (bool *isReady, dwPointCloudAccumulatorHandle_t obj) | 
|  | Indicate that enough data has been collected to perform full combination.  More... 
 | 
|  | 
| DW_API_PUBLIC dwStatus | dwPointCloudAccumulator_process (dwPointCloudAccumulatorHandle_t obj) | 
|  | Accumulates lidar packets and stores the results to the output buffer.  More... 
 | 
|  | 
| DW_API_PUBLIC dwStatus | dwPointCloudAccumulator_release (dwPointCloudAccumulatorHandle_t obj) | 
|  | Releases point cloud accumulator.  More... 
 | 
|  | 
| DW_API_PUBLIC dwStatus | dwPointCloudAccumulator_reset (dwPointCloudAccumulatorHandle_t obj) | 
|  | Resets point cloud accumulator.  More... 
 | 
|  | 
| DW_API_PUBLIC dwStatus | dwPointCloudAccumulator_setCUDAStream (const cudaStream_t stream, dwPointCloudAccumulatorHandle_t obj) | 
|  | Sets CUDA stream of point cloud accumulator.  More... 
 | 
|  | 
| DW_API_PUBLIC dwStatus | dwPointCloudAccumulator_setLidarToRigTransformation (const dwTransformation3f *transformation, dwPointCloudAccumulatorHandle_t obj) | 
|  | Sets lidar to rig transformation.  More... 
 | 
|  | 
◆ dwPointCloudAccumulatorParams
      
        
          | struct dwPointCloudAccumulatorParams | 
      
 
| Data Fields | 
|---|
| dwEgomotionConstHandle_t | egomotion | Handle to egomotion module. | 
| bool | enableMotionCompensation | Setting it to true will correct the distortions caused by lidar sensor motion. | 
| bool | enableZeroCrossDetection | If set to true end of spin is detected based on angle of incoming points otherwise on number of incoming packets. | 
| uint32_t | filterWindowSize | The horizontal smoothing filter window size. | 
| float32_t | maxAngleDegree | Ending angle in degree. | 
| float32_t | maxDistanceMeter | Ending distance in degree. | 
| dwMemoryType | memoryType | The module will process lidar packets and output to cuda memory if
 memoryType = DW_MEMORY_CUDA.The module will process lidar packets and output to cpu memory if
 memoryType = DW_MEMORY_CPU | 
| float32_t | minAngleDegree | Starting angle in degree. | 
| float32_t | minDistanceMeter | Starting distance in meter. | 
| bool | organized | If user sets it to true, the module will process the lidar packets such that the output data is aligned on 3D grid. | 
| uint32_t | outputFormats | Combination of desired dwPointCloudFormat flags. | 
| bool | outputInRigCoordinates | If true output points are in rig coordinates. | 
| dwTransformation3f | sensorTransformation | Transformation aligns the lidar sensor with the platform that produces the egomotion. | 
 
 
◆ dwPointCloudTimestampRange
      
        
          | struct dwPointCloudTimestampRange | 
      
 
 
◆ dwPointCloudAccumulatorHandle_t
◆ dwPointCloudAccumulator_addLidarPacket()
Pushes lidar packet to point cloud accumulator. 
- Parameters
- 
  
    | [in] | packet | Pointer to decoded lidar packet |  | [in] | obj | Handle to point cloud accumulator |  
 
- Returns
- DW_SUCCESS - if successfully added packet
 DW_INTERNAL_ERROR - the values included in decoded lidar packet do not match the ones in the lidar properties
 DW_INVALID_ARGUMENT
 
 
◆ dwPointCloudAccumulator_bindOutput()
Binds output point cloud buffer. 
- Parameters
- 
  
    | [out] | pointCloud | Pointer to output buffer |  | [in] | obj | Handle to point cloud accumulator |  
 
- Returns
- DW_SUCCESS
 DW_INVALID_ARGUMENT - the memory type in the output buffer does not match the one specified indwPointCloudAccumulatorParams.
 Or user did not allocate memory. Please calldwPointCloud_createBufferin advance to allocate proper memory storage.
 
 
 
◆ dwPointCloudAccumulator_bindOutputTimestamps()
Binds output timestamp range. 
- Parameters
- 
  
    | [out] | timestampRange | Timestamp range of a output point cloud |  | [in] | obj | Handle to point cloud accumulator |  
 
- Returns
- DW_SUCCESS
 DW_INVALID_ARGUMENT
 
 
◆ dwPointCloudAccumulator_getCUDAStream()
Gets CUDA stream of point cloud accumulator. 
- Parameters
- 
  
    | [out] | stream | Pointer to CUDA stream handle |  | [in] | obj | Handle to point cloud accumulator |  
 
- Returns
- DW_SUCCESS
 DW_INVALID_ARGUMENT
 DW_CALL_NOT_ALLOWED - point cloud accumulator is initialized to process host memory
 
 
◆ dwPointCloudAccumulator_getDefaultParams()
Gets default point cloud accumulator parameters. 
- Parameters
- 
  
    | [out] | params | Pointer to point cloud parameters |  
 
- Returns
- DW_SUCCESS
 DW_INVALID_ARGUMENT
 
 
◆ dwPointCloudAccumulator_getSweepSize()
Gets sweeps/spins size. 
- Parameters
- 
  
    | [out] | size | Sweep size, x is width and y is height |  | [in] | obj | Handle to the Point Cloud Accumulator module |  
 
- Returns
- DW_INVALID_HANDLE if given handle is invalid, i.e. null or of wrong type 
 DW_INVALID_ARGUMENT if given arguments are invalid
 DW_SUCCESS
 
- Note
- User can call this function once Point Cloud Accumulator is initialized 
 
 
◆ dwPointCloudAccumulator_initialize()
Initializes point cloud accumulator. 
- Parameters
- 
  
    | [out] | obj | Pointer to point cloud accumulator handle |  | [in] | accumulationParams | Pointer to point cloud accumulator parameters |  | [in] | lidarProperties | Pointer to lidar properties |  | [in] | ctx | Handle to the context |  
 
- Returns
- DW_SUCCESS
 DW_INVALID_ARGUMENT
 
 
◆ dwPointCloudAccumulator_isReady()
Indicate that enough data has been collected to perform full combination. 
When this method returns true, a call to dwPointCloudAccumulator_process() can be used to retrieve a solution.
- Parameters
- 
  
    | [out] | isReady | If truewe have enough packets to full fill the selcted strategy |  | [in] | obj | Handle to point cloud accumulator |  
 
- Returns
- DW_INVALID_HANDLE - if given handle is invalid
 DW_INVALID_ARGUMENT - ifisReadyis nullptr
 DW_SUCCESS
 
 
◆ dwPointCloudAccumulator_process()
Accumulates lidar packets and stores the results to the output buffer. 
- Parameters
- 
  
    | [in] | obj | Handle to point cloud accumulator |  
 
- Returns
- DW_SUCCESS
 DW_INVALID_ARGUMENT
- Note
- Upon successful execution, the function will modify the following variables in output buffer
- organizedwill be set to the same value specified in- dwPointCloudAccumulatorParams
- sizewill be non-zero value denotes the current accumulated points in the memory.
 
 
 
◆ dwPointCloudAccumulator_release()
Releases point cloud accumulator. 
- Parameters
- 
  
    | [in] | obj | Handle to point cloud accumulator |  
 
- Returns
- DW_SUCCESS
 DW_INVALID_ARGUMENT
 
 
◆ dwPointCloudAccumulator_reset()
Resets point cloud accumulator. 
- Parameters
- 
  
    | [in] | obj | Handle to point cloud accumulator |  
 
- Returns
- DW_SUCCESS
 DW_INVALID_ARGUMENT
 
 
◆ dwPointCloudAccumulator_setCUDAStream()
Sets CUDA stream of point cloud accumulator. 
- Parameters
- 
  
    | [in] | stream | Handle to CUDA stream |  | [in] | obj | Handle to point cloud accumulator |  
 
- Returns
- DW_SUCCESS
 DW_INVALID_ARGUMENT
 DW_CALL_NOT_ALLOWED - point cloud accumulator is initialized to process host memory
 
 
◆ dwPointCloudAccumulator_setLidarToRigTransformation()
Sets lidar to rig transformation. 
- Parameters
- 
  
    | [in] | transform | A pointer to the transform |  | [in] | obj | Handle to point cloud accumulator |  
 
- Returns
- DW_SUCCESS