Autodesk Developer Network 2011
Autodesk
Point Cloud Engine API 
§Custom engine implementation
§IPointCloudEngine – register by PointCloudEngineRegistry
§IPointCloudAccess – response to inquiries about the properties of a single point cloud. Methods: GetName(), ReadPoints(), etc.
§IPointSetIterator – returns sets of points to Revit. methods: ReadPoints(), Free() 
§
§File-base and non file-based
§File-bases – select a point cloud file from external file (like .pcg, e.g., .xml)
§Non file-based – can be from anywhere (e.g., database, server)
§
§
The API to allow you to create your own Point Cloud engine and let Revit interact with it to display, select, snap and perform other operations on the Point Cloud.

You must implement IPointCloudEngine, IPointCloudAccess, and IPointSetIterator interface to create our own engine.
• IPointCloudEngine interface provides an entry point for the Point Cloud access to Revit. An implementation of this interface is registered with Revit.
• Revit then uses the methods of  IPointCloudAccess  to respond to inquiries from Revit regarding properties of single point cloud. ReadPoints method of  IPointCloudAccess interface provides Revit a filtered set of points from Point Cloud.
• And IPointSetIterator interface gets points form the Point Cloud. ReadPoints method of  IPointSetIterator interface allows Revit to iterate points in Point Cloud.

Cloud Engine implementation can be either file based or non-file based.
• File based implementations require each point cloud to be mapped to single file on disk.
• Non-file based engine implementations obtain point clouds from any source – database, server, one part of larger aggregate file, etc.