IDirect3DRMProgressiveMesh::GetLoadStatus
Allows the application to inquire about the current status of the load.
HRESULT GetLoadStatus(
LPD3DRMPMESHLOADSTATUS lpStatus
)
Parameters
lpStatus
Address of a D3DRMPMESHLOADSTATUS structure defined as follows:
typedef struct _D3DRMPMESHLOADSTATUS
{
DWORD dwSize; // Size of this structure
DWORD dwPMeshSize; // Total size (bytes)
DWORD dwBaseMeshSize; // Size of base mesh (bytes)
DWORD dwBytesLoaded; // Total number of bytes loaded
DWORD dwVerticesLoaded; // Number of vertices loaded
DWORD dwFacesLoaded; // Number of faces loaded
DWORD dwFlags;
}
D3DRMPMESHLOADSTATUS;
typedef D3DRMPMESHLOADSTATUS *LPD3DRMPMESHLOADSTATUS;
The dwFlags member can take the following values:
D3DRMPMESHSTATUS_VALID - The progressive mesh object contains valid data.
D3DRMPMESHSTATUS_INTERRUPTED - The download was interrupted either because the application called Abort or because the connection was lost.
D3DRMPMESHSTATUS_BASEMESH - The base mesh has been downloaded.
D3DRMPMESHSTATUS_COMPLETE - All data has been downloaded.
D3DRMPMESHSTATUS_RENDERABLE - It is now possible to render the mesh.
Return Values
Returns DD_OK if successful, or one of the following errors:
D3DRMERR_CONNECTIONLOST
D3DRMERR_INVALIDDATA
D3DRMERR_INVALIDOBJECT
D3DRMERR_INVALIDPARAMS
Remarks
If the mesh is renderable (the base mesh has been downloaded and the data is not corrupt) then the dwFlags member contains D3DRMPMESHSTATUS_RENDERABLE. If the download was interrupted, the dwFlags member will contain D3DRMPMESHSTATUS_INTERRUPTED.