class HPS::OOC::PointCloud

The PointCloud class provides interactions with a OOC point cloud.

Public Functions

IOResult CommitDeltasToFile()

Saves to disk any changes made to the point cloud. Beware that moving or renaming dependent files will impact the saved delta file (OOCD) because the OOCD file references them. The most likely result would be that the file cannot be loaded.

A file is generated in the directory xxx/yyy_deltas/ as zzz.oocd where

  • xxx is the root directory for the OOC files

  • yyy is given by xxx/yyy.ooc

  • zzz is the generated file_name for the changes saved to disk.

Example: C:/some_dir/ooc_house_root/house.ooc C:/some_dir/ooc_house_root/house_deltas/00535fe253-0000251e.oocd Here

  • xxx is C:/some_dir/ooc_house_root

  • yyy is house

  • zzz is 00535fe253-0000251e


an IOResult return code.

bool DeleteFromPointCloud(HPS::OOC::AreaHighlightTracker &tracker)

Deletes points that intersect the areas from the provided tracker.


Returns true if no error occurs Returns false otherwise.

void Destroy()

Releases and removes point cloud. This is automatic when model is deleted.

bool Empty()

Check the state of the PointCloud.


Returns true if this PointCloud doesn’t exist.

NodeHandle GetNodeHandle(HPS::SegmentKey const &node_key)

Get a NodeHandle associated with a specific segment.


node_key – The SegmentKey for the requested Node.


Returns the NodeHandle for the provided segment.

HPS::SegmentKey GetSegment()

Gets a the top segment for this PointCloud.


Returns the top segment for this PointCloud.

bool HasUncommittedDeltas()

Queries whether or not there are any uncommitted deltas in memory for a particular PointCloud.


Returns true if there have been any changes made to the point cloud that have not been committed to disk. Returns false otherwise.


Constructs an uninitialized point cloud.


The uninitialized point cloud.

PointCloud(HPS::Model const &in_model)

Constructs a point cloud under an existing Model.


The point cloud.

PointCloud(PointCloud &&that)

Move constructs a point cloud from an existing one.


The point cloud.

bool PollUpdateNeeded()

Used with manual updates load option. If this returns true an Update must be called on the model.


Returns true if the model must be updated otherwise it returns false.

OOC::QueryIterator QueryPoints(QueryFilter &filter)

Begin a query.


filter – The filter to apply to the query.


Returns the QueryIterator.

void Release()

Removes ooc hooks. This is automatic when model is deleted.

HPS::OOC::SynchronizedActions::Result Synchronize(Synchronized &synchronized)

Begin a synchronized action.


synchronized – The object to synchronize.


Returns the result of the synchronized actions.

Public Static Functions

static bool ShowPointClouds(HPS::Model const &in_model, HPS::OOC::PointCloudArray &out_point_clouds)

Returns an array of PointClouds that exist under this model.


in_model – The the model to use.