# IRfD3DSerialization Interface Reference

Inherits IUnknown, and IUnknown.

List of all members.

## Public Member Functions
HRESULT | GetAnyScene ([in] IRsObject *pObject,[out, retval] IRsNode **ppSpace3DNode)
HRESULT | DeleteSceneLights ([in] IRsNode *pSceneNode,[out, retval] IRsObjectList **ppObjList)
HRESULT | CreateSceneLightsList ([in] IRsNode *pSceneNode,[out, retval] IRsObjectList **ppObjList)
HRESULT | AddSceneLightsFromList ([in] IRsNode *pSceneNode,[in] IRsObjectList *pObjList)
HRESULT | DestroyObjectsInList ([in] IRsObjectList *pObjList)
HRESULT | SaveSceneLightsList ([in] IRsFileHandle *pRsFileHandle,[in] IRsObjectList *pObjList)
HRESULT | SaveSceneLights ([in] BSTR bstrFileName,[in] BSTR bstrAuthor,[in] BSTR bstrDescr,[in] IRdBitmap *pThumbnail,[in] IRsNode *pScene)
HRESULT | LoadSceneLightsList ([in] IRsFileHandle *pRsFileHandle,[out, retval] IRsObjectList **ppObjList)
HRESULT | GetAnyScene ([in] IRsObject *pObject,[out, retval] IRsNode **ppSpace3DNode)
HRESULT | DeleteSceneLights ([in] IRsNode *pSceneNode,[out, retval] IRsObjectList **ppObjList)
HRESULT | CreateSceneLightsList ([in] IRsNode *pSceneNode,[out, retval] IRsObjectList **ppObjList)
HRESULT | AddSceneLightsFromList ([in] IRsNode *pSceneNode,[in] IRsObjectList *pObjList)
HRESULT | DestroyObjectsInList ([in] IRsObjectList *pObjList)
HRESULT | SaveSceneLightsList ([in] IRsFileHandle *pRsFileHandle,[in] IRsObjectList *pObjList)
HRESULT | SaveSceneLights ([in] BSTR bstrFileName,[in] BSTR bstrAuthor,[in] BSTR bstrDescr,[in] IRdBitmap *pThumbnail,[in] IRsNode *pScene)
HRESULT | LoadSceneLightsList ([in] IRsFileHandle *pRsFileHandle,[out, retval] IRsObjectList **ppObjList)

## Detailed Description

IRfD3DSerialization.

## Member Function Documentation

HRESULT IRfD3DSerialization::GetAnyScene | ( | [in] IRsObject * | pObject,
|  | [out, retval] IRsNode ** | ppSpace3DNode |
| ) |  |  |

Try find the scene object from given input. If not found, get the current scene.

Parameters:

  | pObject | [in] .

Returns:
  ppSpace3DNode [out,retval] .

HRESULT IRfD3DSerialization::DeleteSceneLights | ( | [in] IRsNode * | pSceneNode,
|  | [out, retval] IRsObjectList ** | ppObjList |
| ) |  |  |

Delete current scene lights.

Parameters:

  | pSceneNode | [in] Specify the scene node for which you want to delete the lights.

Returns:
  ppObjList [out, retval] If you specify this parameter, the lights will not be deleted, but only moved into this list.

  Standard HRESULT processing can be applied to the result.

HRESULT IRfD3DSerialization::CreateSceneLightsList | ( | [in] IRsNode * | pSceneNode,
|  | [out, retval] IRsObjectList ** | ppObjList |
| ) |  |  |

Create current scene lights list.

Parameters:

  | pSceneNode | [in] Specify the scene node that you want to scan for the lights.

Returns:
  ppObjList [out, retval] Returns reference list of the scene lights.

  Standard HRESULT processing can be applied to the result.

HRESULT IRfD3DSerialization::AddSceneLightsFromList | ( | [in] IRsNode * | pSceneNode,
|  | [in] IRsObjectList * | pObjList |
| ) |  |  |

Add lights from list into specified scene.

Parameters:

  | pSceneNode | [in] Specify the scene node into which you want add the lights.
  | pObjList | [in] Specify the lights list.

Returns:
  Standard HRESULT processing can be applied to the result.

HRESULT IRfD3DSerialization::DestroyObjectsInList | ( | [in] IRsObjectList * | pObjList | ) |

Call to destroy the lights in the object list

HRESULT IRfD3DSerialization::SaveSceneLightsList | ( | [in] IRsFileHandle * | pRsFileHandle,
|  | [in] IRsObjectList * | pObjList |
| ) |  |  |

Save scene lights into specified file handle. Method creates Tags and RsObj chunks if they don't exist. If the chunks exists, then they are only adapted.

Parameters:

  | pRsFileHandle | [in] File handle to which the scene should be written
  | pObjList | [in] the scene lights list object

Returns:
  Standard HRESULT processing can be applied to the result.

HRESULT IRfD3DSerialization::SaveSceneLights | ( | [in] BSTR | bstrFileName,
|  | [in] BSTR | bstrAuthor,
|  | [in] BSTR | bstrDescr,
|  | [in] IRdBitmap * | pThumbnail,
|  | [in] IRsNode * | pScene |
| ) |  |  |

Save scene lights to specified file.

Parameters:

  | bstrFileName | [in] Desired filename.
  | bstrAuthor | [in] Author of the file.
  | bstrDescr | [in] File description.
  | pThumbnail | [in] Thumbnail.
  | pScene | [in] Scene that lights is to be saved. If NULL, the current one will be used.

Returns:
  Standard HRESULT processing can be applied to the result.

HRESULT IRfD3DSerialization::LoadSceneLightsList | ( | [in] IRsFileHandle * | pRsFileHandle,
|  | [out, retval] IRsObjectList ** | ppObjList |
| ) |  |  |

Load scene lights list from specified file handle.

Parameters:

  | pRsFileHandle | [in] File handle from which the scene lights should be read.

Returns:
  ppScene [out, retval] The scene object if successfully loaded.

  Standard HRESULT processing can be applied to the result.

HRESULT IRfD3DSerialization::GetAnyScene | ( | [in] IRsObject * | pObject,
|  | [out, retval] IRsNode ** | ppSpace3DNode |
| ) |  |  |

Try find the scene object from given input. If not found, get the current scene.

Parameters:

  | pObject | [in] .

Returns:
  ppSpace3DNode [out,retval] .

HRESULT IRfD3DSerialization::DeleteSceneLights | ( | [in] IRsNode * | pSceneNode,
|  | [out, retval] IRsObjectList ** | ppObjList |
| ) |  |  |

Delete current scene lights.

Parameters:

  | pSceneNode | [in] Specify the scene node for which you want to delete the lights.

Returns:
  ppObjList [out, retval] If you specify this parameter, the lights will not be deleted, but only moved into this list.

  Standard HRESULT processing can be applied to the result.

HRESULT IRfD3DSerialization::CreateSceneLightsList | ( | [in] IRsNode * | pSceneNode,
|  | [out, retval] IRsObjectList ** | ppObjList |
| ) |  |  |

Create current scene lights list.

Parameters:

  | pSceneNode | [in] Specify the scene node that you want to scan for the lights.

Returns:
  ppObjList [out, retval] Returns reference list of the scene lights.

  Standard HRESULT processing can be applied to the result.

HRESULT IRfD3DSerialization::AddSceneLightsFromList | ( | [in] IRsNode * | pSceneNode,
|  | [in] IRsObjectList * | pObjList |
| ) |  |  |

Add lights from list into specified scene.

Parameters:

  | pSceneNode | [in] Specify the scene node into which you want add the lights.
  | pObjList | [in] Specify the lights list.

Returns:
  Standard HRESULT processing can be applied to the result.

HRESULT IRfD3DSerialization::DestroyObjectsInList | ( | [in] IRsObjectList * | pObjList | ) |

Call to destroy the lights in the object list

HRESULT IRfD3DSerialization::SaveSceneLightsList | ( | [in] IRsFileHandle * | pRsFileHandle,
|  | [in] IRsObjectList * | pObjList |
| ) |  |  |

Save scene lights into specified file handle. Method creates Tags and RsObj chunks if they don't exist. If the chunks exists, then they are only adapted.

Parameters:

  | pRsFileHandle | [in] File handle to which the scene should be written
  | pObjList | [in] the scene lights list object

Returns:
  Standard HRESULT processing can be applied to the result.

HRESULT IRfD3DSerialization::SaveSceneLights | ( | [in] BSTR | bstrFileName,
|  | [in] BSTR | bstrAuthor,
|  | [in] BSTR | bstrDescr,
|  | [in] IRdBitmap * | pThumbnail,
|  | [in] IRsNode * | pScene |
| ) |  |  |

Save scene lights to specified file.

Parameters:

  | bstrFileName | [in] Desired filename.
  | bstrAuthor | [in] Author of the file.
  | bstrDescr | [in] File description.
  | pThumbnail | [in] Thumbnail.
  | pScene | [in] Scene that lights is to be saved. If NULL, the current one will be used.

Returns:
  Standard HRESULT processing can be applied to the result.

HRESULT IRfD3DSerialization::LoadSceneLightsList | ( | [in] IRsFileHandle * | pRsFileHandle,
|  | [out, retval] IRsObjectList ** | ppObjList |
| ) |  |  |

Load scene lights list from specified file handle.

Parameters:

  | pRsFileHandle | [in] File handle from which the scene lights should be read.

Returns:
  ppScene [out, retval] The scene object if successfully loaded.

  Standard HRESULT processing can be applied to the result.