C++ API Reference
MGPUDeformerData Class Reference

Store GPU Representation of geometry data. More...

#include <MPxGPUDeformer.h>

Public Member Functions

virtual void setBuffer (const MGPUDeformerBuffer &)
 Store an MGPUDeformerBuffer. More...
 
virtual MGPUDeformerBuffer getBuffer (const MUniqueString &name) const
 Retrieve the MGPUDeformerBuffer with the given name. More...
 
virtual MGPUDeformerBuffer getBuffer (const MUniqueString &name, const MPlug &plug) const
 Retrieve the MGPUDeformerBuffer with the given name and plug. More...
 
 MGPUDeformerData (void *impl)
 Constructs an MGPUDeformerData from an existing implementation object. More...
 
 MGPUDeformerData (const MGPUDeformerData &other)
 Copy constructs an MGPUDeformerData.
 
virtual ~MGPUDeformerData ()
 Destructor.
 

Detailed Description

Store GPU Representation of geometry data.

MGPUDeformerData is the GPU representation of geometry data used in MPxGPUDeformer. MGPUDeformerData::setBuffer() stores an MGPUDeformerBuffer object. getBuffer() can be used to retrieve this buffer by name & plug.

Data stored in MGPUDeformerData is not owned by MGPUDeformerData, ownership remains with the allocator of the data and deleting an MGPUDeformerData does not automatically delete any associated MGPUDeformerBuffer objects.

Examples:
basicMorphNode/basicMorphNode.cpp, identityNode/identityNode.cpp, and offsetNode/offsetNode.cpp.

Constructor & Destructor Documentation

MGPUDeformerData ( void *  impl)

Constructs an MGPUDeformerData from an existing implementation object.

The constructed object does not take ownership of the implementation.

Member Function Documentation

void setBuffer ( const MGPUDeformerBuffer buffer)
virtual

Store an MGPUDeformerBuffer.

If an MGPUDeformerBuffer with the same name has already been stored then the new buffer replaces the old buffer.

Parameters
[in]bufferThe buffer to be stored.
Examples:
identityNode/identityNode.cpp.
MGPUDeformerBuffer getBuffer ( const MUniqueString name) const
virtual

Retrieve the MGPUDeformerBuffer with the given name.

The buffer data remains on the GPU, allowing MPxGPUDeformer nodes to access it as part of an evaluation chain.

If the MGPUDeformerData stores buffers for multiple plugs then the returned MGPUDeformerBuffer is not valid.

Parameters
[in]nameThe name of the buffer to be retrieved.
Examples:
identityNode/identityNode.cpp.
MGPUDeformerBuffer getBuffer ( const MUniqueString name,
const MPlug plug 
) const
virtual

Retrieve the MGPUDeformerBuffer with the given name and plug.

If no buffer matches the given name then the returned MGPUDeformerBuffer is not valid. The buffer data remains on the GPU, allowing MPxGPUDeformer nodes to access it as part of an evaluation chain.

Parameters
[in]nameThe name of the buffer to be retrieved.
[in]plugThe plug of the buffer to be retrieved.

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