ooc::delta::SyncToken Class Reference

#include <PointCloudAPI.h>

Public Member Functions

Env GetEnv () const
 

Friends

ModifyResult DeleteNode (SyncToken const &, NodeHandle const &)
 
ModifyResult DeleteSpecificPoints (SyncToken const &, NodeHandle const &, int32_t const [], size_t)
 
OptimizeResult OptimizeDeltas (SyncToken const &sync_token, OptimizeConfig const &config)
 
SyncResult SynchronizeWith (Env, std::function< void(SyncToken const &)>)
 

Detailed Description

A token that is passed into functions that can only be called during a synchronization process. This token helps ensure that such functions cannot be used outside of an OOC synchronization block.

See also
ooc::delta::SynchronizeWith

Member Function Documentation

◆ GetEnv()

Env ooc::delta::SyncToken::GetEnv ( ) const

Friends And Related Function Documentation

◆ DeleteNode

ModifyResult DeleteNode ( SyncToken const &  ,
NodeHandle const &   
)
friend

Deletes the given node. Subsequent uses of node_handle are illegal.

Parameters
sync_tokenA token passed in to guarantee that synchronization is taking place for a given point cloud.
node_handleThe handle of the node to be deleted.
Returns
an ooc::delta::ModifyResult return code.
See also
ooc::delta::SynchronizeWith

◆ DeleteSpecificPoints

ModifyResult DeleteSpecificPoints ( SyncToken const &  ,
NodeHandle const &  ,
int32_t  const[],
size_t   
)
friend

Deletes specific points of the given node. point_indices must satisfy the following:

  • contain no duplicate values
  • contain only values in the inclusive range [0, node_point_count - 1] (see ooc::query::PointCount)
  • be sorted in increasing order

If any of the above rules for point_indices are violated, an appropriate error code will be returned through the ooc::delta::ModifyResult return value.

Parameters
sync_tokenA token passed in to guarantee that synchronization is taking place for a given point cloud.
node_handleThe node handle of the points to be deleted.
point_indicesThe list of point indices to be deleted from the node given by node_handle.
countThe number of indices in point_indices
Returns
an ooc::delta::ModifyResult return code.
See also
ooc::delta::SynchronizeWith

◆ OptimizeDeltas

OptimizeResult OptimizeDeltas ( SyncToken const &  sync_token,
OptimizeConfig const &  config 
)
friend

Optimizes the internal representation of the changes made to the point cloud. This function is automatically performed when loading in an OOCD file from disk.

Parameters
sync_tokenA token passed in to guarantee that synchronization is taking place for a given point cloud.
configConfiguration options for optimization.
Returns
an ooc::delta::OptimizeResult return code
See also
ooc::delta::DeleteNode
ooc::delta::DeleteSpecificPoints
ooc::delta::SynchronizeWith

◆ SynchronizeWith

SyncResult SynchronizeWith ( Env  env,
std::function< void(SyncToken const &)>  func 
)
friend

Allows users to call functions that require synchronization. This is done through the func callback passed into this function. func is called with an ooc::delta::SyncToken reference that corresponds to the environment env passed into this function. Thus the OOC API functions that accept an ooc::delta::SyncToken do not accept an ooc::Env because it is implied by the synchronization token.

Parameters
envThe point cloud environment to synchronize with.
funcThe callback to call when the point cloud is in a synchronized state
Returns
an ooc::delta::SyncResult return code.
See also
ooc::delta::DeleteNode
ooc::delta::DeleteSpecificPoints
ooc::delta::OptimizeDeltas

The documentation for this class was generated from the following file: