# IRfLibraryActions Interface Reference

Inherits IRsObject.

List of all members.

## Public Member Functions
HRESULT | Delete ([in] IRsLibrary *pLibrary)
HRESULT | Rename ([in] IRsLibrary *pLibrary,[in] BSTR bszNewName)
HRESULT | InsertItem ([in] IRsLibrary *pLibrary,[in] BSTR bszItemName,[in] BSTR bszDescription,[in] IRsObject *pRsObject,[in] IRsFileIOType *pSaveType,[in] IRdBitmap *pThumbnail,[in] SIZE *pSuggThumbnailSize)
HRESULT | LoadTags ([in] IRsLibrary *pLibrary)
HRESULT | SaveTags ([in] IRsLibrary *pLibrary)
HRESULT | LoadIcon ([in]IRsLibrary *pLibrary)
HRESULT | SaveIcon ([in]IRsLibrary *pLibrary)
HRESULT | LoadAndApplyIndexer ([in] IRsLibrary *pLibrary)
HRESULT | SaveIndexer ([in] IRsLibrary *pLibrary)
HRESULT | Generate3DThumbnail ([in] IRsNode *pNode,[in] RtDWORD dwWidth,[in] RtDWORD dwHeight,[in] COLORREF clrBckg,[out, retval] IRdBitmap **ppBitmap)
HRESULT | GenerateSceneThumbnail ([in] RtDWORD dwWidth,[in] RtDWORD dwHeight,[in] eLib2ThumbnailGnrStyle style,[out, retval] IRdBitmap **ppBitmap)
HRESULT | GetNodeThumbnail ([in] IRsNode *pNode,[out, retval] IRdBitmap **ppBitmap)
HRESULT | GenerateThumbnail ([in] IRsFileIOType *pSaveType,[in] IRsObject *pRsObject,[in] eLib2AutoThumbnailType aType,[in] IRdBitmap *pSuppliedThumbnail,[in] SIZE *pSuggThumbnailSize,[out, retval] IRdBitmap **ppThumbnail)
HRESULT | AddThumbnailChunk ([in] IRsFileHandle *pFileHandle,[in] IRsFileIOType *pSaveType,[in] IRsObject *pRsObject,[in] eLib2AutoThumbnailType aType,[in] IRdBitmap *pSuppliedThumbnail,[in] SIZE *pSuggThumbnailSize)

## Detailed Description

Function set provides operations over a library.

## Member Function Documentation

HRESULT IRfLibraryActions::Delete | ( | [in] IRsLibrary * | pLibrary | ) |

Delete specified library. Method move to Recycle Bin the whole content of the assigned directory.

Parameters:

  | pLibrary | [in] Specify the library you want to delete.

Remarks:
  The pLibrary object is not updated immediately, but later by monitoring process.

HRESULT IRfLibraryActions::Rename | ( | [in] IRsLibrary * | pLibrary,
|  | [in] BSTR | bszNewName |
| ) |  |  |

Rename library. The method renames only the assigned library directory.

- The new name must be unique.

Parameters:

  | pLibrary | [in] Specify the library you want to delete.
  | bszNewName | [in] Specify the new name of the library.

Remarks:
  The pLibrary object is not updated immediately, but later by monitoring process.

HRESULT IRfLibraryActions::InsertItem | ( | [in] IRsLibrary * | pLibrary,
|  | [in] BSTR | bszItemName,
|  | [in] BSTR | bszDescription,
|  | [in] IRsObject * | pRsObject,
|  | [in] IRsFileIOType * | pSaveType,
|  | [in] IRdBitmap * | pThumbnail,
|  | [in] SIZE * | pSuggThumbnailSize |
| ) |  |  |

InsertItem new item into library.

Parameters:

  | pLibrary | [in] Library into which you want add the new item.
  | bszItemName | [in] Name of the item.
  | bszDescription | [in] Short description of the item.
  | pRsObject | [in] The item you want to insert.
  | pSaveType | [in] Specify desired file type. E.g. physical environment, then only this information will be extracted and saved.
  | pThumbnail | [in] Thumbnail for the item. If not specified, an automatic will be generated.
  | pSuggThumbnailSize | [in] Suggested thumbnail size in pixels.

HRESULT IRfLibraryActions::LoadTags | ( | [in] IRsLibrary * | pLibrary | ) |

Load Tags of the library.

Parameters:

  | pLibrary | [in] Library for which you want load the Tags.

Remarks:
  The tags are stored in the library directory in separate file.
  - This method loads them into the specified library object.

HRESULT IRfLibraryActions::SaveTags | ( | [in] IRsLibrary * | pLibrary | ) |

Save Tags for specified library into file.

Parameters:

  | pLibrary | [in] Library for which you want save the Tags.

HRESULT IRfLibraryActions::LoadIcon | ( | [in] IRsLibrary * | pLibrary | ) |

Load library icon.

Parameters:

  | pLibrary | [in] Specify library for which you want loads the icon.

Remarks:
  The icon is stored in the library directory as separate file.
  - This method loads it into the specified library object.

HRESULT IRfLibraryActions::SaveIcon | ( | [in] IRsLibrary * | pLibrary | ) |

Save library icon.

Parameters:

  | pLibrary | [in] Specify library for which you want save the icon.

HRESULT IRfLibraryActions::LoadAndApplyIndexer | ( | [in] IRsLibrary * | pLibrary | ) |

LoadAndApplyIndexer. Call to load indexer (displayed items order) file from the library directory and apply it to the displayed items.

Parameters:

  | pLibrary | [in] Specify library for which you want load and apply indexer file.

HRESULT IRfLibraryActions::SaveIndexer | ( | [in] IRsLibrary * | pLibrary | ) |

SaveIndexer. Call this method to save actual items order in library to indexer file.

Parameters:

  | pLibrary | [in] Specify library for which you want save indexer file.

HRESULT IRfLibraryActions::Generate3DThumbnail | ( | [in] IRsNode * | pNode,
|  | [in] RtDWORD | dwWidth,
|  | [in] RtDWORD | dwHeight,
|  | [in] COLORREF | clrBckg,
|  | [out, retval] IRdBitmap ** | ppBitmap |
| ) |  |  |

Generate3DThumbnail. Generate 3D thumbnail for given node.

Parameters:

  | pNode | [in] Specify the node for which the thumbnails should be generated
  | dwWidth | [in] Required width of the thumbnail
  | dwHeight | [in] Required height of the thumbnail
  | clrBckg | [in] The background color.
  | ppBitmap | [out] Returns the thumbnail bitmap

HRESULT IRfLibraryActions::GenerateSceneThumbnail | ( | [in] RtDWORD | dwWidth,
|  | [in] RtDWORD | dwHeight,
|  | [in] eLib2ThumbnailGnrStyle | style,
|  | [out, retval] IRdBitmap ** | ppBitmap |
| ) |  |  |

GenerateSceneThumbnail. Generates thumbnail for current scene.

Parameters:

  | dwWidth | [in] Required width of the thumbnail
  | dwHeight | [in] Required height of the thumbnail
  | stype | [in] Specify one of the style. See tagLib2ThumbnailGnrStyle
  | ppBitmap | [out] Returns the thumbnail bitmap

HRESULT IRfLibraryActions::GetNodeThumbnail | ( | [in] IRsNode * | pNode,
|  | [out, retval] IRdBitmap ** | ppBitmap |
| ) |  |  |

GetNodeThumbnail. Generate thumbnail for given node.

Parameters:

  | pNode | [in] specify the node for which the thumbnails should be generated
  | ppBitmap | [out] Returns the thumbnail bitmap

HRESULT IRfLibraryActions::GenerateThumbnail | ( | [in] IRsFileIOType * | pSaveType,
|  | [in] IRsObject * | pRsObject,
|  | [in] eLib2AutoThumbnailType | aType,
|  | [in] IRdBitmap * | pSuppliedThumbnail,
|  | [in] SIZE * | pSuggThumbnailSize,
|  | [out, retval] IRdBitmap ** | ppThumbnail |
| ) |  |  |

GenerateThumbnail. Generate thumbnail for specified object

Parameters:

  | pSaveType | [in] File type. If not specified, the library icon is not available.
  | pRsObject | [in] Optional, used for the 3d object thumbnail type.
  | aType | [in] Thumbnail method. See tagLib2AutoThumbnailType.
  | pSuppliedThumbnail | [in] If specified, then this bitmap is used as thumbnail.
  | pSuggThumbnailSize | [in] Suggested thumbnail size, optional.
  | ppThumbnail | [out] Returns the thumbnail bitmap

HRESULT IRfLibraryActions::AddThumbnailChunk | ( | [in] IRsFileHandle * | pFileHandle,
|  | [in] IRsFileIOType * | pSaveType,
|  | [in] IRsObject * | pRsObject,
|  | [in] eLib2AutoThumbnailType | aType,
|  | [in] IRdBitmap * | pSuppliedThumbnail,
|  | [in] SIZE * | pSuggThumbnailSize |
| ) |  |  |

AddThumbnailChunk. Generate and add thumbnail for specified file handle.

Parameters:

  | pFileHandle | [in] File handle where the chunk should be added/replaced.
  | pSaveType | [in] File type. If not specified, the library icon is not available.
  | pRsObject | [in] Optional, used for the 3d object thumbnail type.
  | aType | [in] Thumbnail method. See tagLib2AutoThumbnailType.
  | pSuppliedThumbnail | [in] If specified, then this bitmap is used as thumbnail.
  | pSuggThumbnailSize | [in] Suggested thumbnail size, optional.