struct CCL::IPresetFileRegistry

Overview

#include <ipreset.h>

struct IPresetFileRegistry: public CCL::IUnknown
{
    // methods

    virtual void CCL_API addHandler (
        IPresetFileHandler* handler,
        tbool isDefault = false
    ) = 0;

    virtual int CCL_API countHandlers () const = 0;
    virtual IPresetFileHandler*CCL_API getHandler (int index) const = 0;
    virtual IPresetFileHandler*CCL_API getHandlerForTarget (IUnknown* target) const = 0;
    virtual IPresetFileHandler*CCL_API getHandlerForFile (UrlRef url) const = 0;
    virtual IPresetFileHandler*CCL_API getHandlerForFileType (const FileType& fileType) const = 0;
    virtual IPresetFileHandler*CCL_API getHandlerForMimeType (StringID mimeType) const = 0;
    virtual IPresetFileHandler*CCL_API getDefaultHandler () const = 0;

    virtual void CCL_API collectFileTypes (
        IFileTypeFilter& fileTypes,
        IUnknown* target = nullptr,
        int requiredHandlerFlags = 0
    ) const = 0;

    virtual void CCL_API setSubFolderPrefix (UrlRef location, StringRef subFolder) = 0;
    virtual StringRef CCL_API getSubFolderPrefix (UrlRef url) const = 0;
};

Inherited Members

public:
    // methods

    virtual tresult CCL_API queryInterface (UIDRef iid, void** ptr) = 0;
    virtual unsigned int CCL_API retain () = 0;
    virtual unsigned int CCL_API release () = 0;

Detailed Documentation

Methods

virtual void CCL_API addHandler (
    IPresetFileHandler* handler,
    tbool isDefault = false
) = 0

Register handler - registry takes ownership.

virtual int CCL_API countHandlers () const = 0

Return number of registered handlers.

virtual IPresetFileHandler*CCL_API getHandler (int index) const = 0

Get handler by index.

virtual IPresetFileHandler*CCL_API getHandlerForTarget (IUnknown* target) const = 0

Get handler by target.

virtual IPresetFileHandler*CCL_API getHandlerForFile (UrlRef url) const = 0

Get handler by file.

virtual IPresetFileHandler*CCL_API getHandlerForFileType (const FileType& fileType) const = 0

Get handler by file type.

virtual IPresetFileHandler*CCL_API getHandlerForMimeType (StringID mimeType) const = 0

Get handler by mime type.

virtual IPresetFileHandler*CCL_API getDefaultHandler () const = 0

Get default handler.

virtual void CCL_API collectFileTypes (
    IFileTypeFilter& fileTypes,
    IUnknown* target = nullptr,
    int requiredHandlerFlags = 0
) const = 0

Collect file types of handlers with given flags that can handle the target.

virtual void CCL_API setSubFolderPrefix (UrlRef location, StringRef subFolder) = 0

Define a “virtual” display subFolder that is prepended to the subFolder attribute of all presets in a location.

virtual StringRef CCL_API getSubFolderPrefix (UrlRef url) const = 0

Get defined subFolder for a location of a preset file or folder.