class CCL::AbstractPresetFileHandler

Overview

#include <ipreset.h>

class AbstractPresetFileHandler: public CCL::IPresetFileHandler
{
public:
    // methods

    virtual int CCL_API getFlags ();
    virtual tbool CCL_API canHandle (IUnknown* target);
    virtual tbool CCL_API getWriteLocation (IUrl& url, IAttributeList* metaInfo);

    virtual tbool CCL_API getReadLocation (
        IUrl& url,
        IAttributeList* metaInfo,
        int index
    );

    virtual tbool CCL_API getSubFolder (String& subFolder, IAttributeList& metaInfo);
    virtual const FileType&CCL_API getFileType ();
    virtual const FileType&CCL_API getFileType (int index);
    virtual IPreset*CCL_API openPreset (UrlRef url, IPresetDescriptor* descriptor);
    virtual IPreset*CCL_API createPreset (UrlRef url, IAttributeList& metaInfo);
    virtual int CCL_API getTargetFlags (IUnknown* target);
};

Inherited Members

public:
    // enums

    enum Flags;

    // 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;
    virtual int CCL_API getFlags () = 0;
    virtual tbool CCL_API canHandle (IUnknown* target) = 0;

    virtual tbool CCL_API getWriteLocation (
        IUrl& url,
        IAttributeList* metaInfo = nullptr
    ) = 0;

    virtual tbool CCL_API getReadLocation (
        IUrl& url,
        IAttributeList* metaInfo,
        int index
    ) = 0;

    virtual tbool CCL_API getSubFolder (String& subFolder, IAttributeList& metaInfo) = 0;
    virtual const FileType&CCL_API getFileType () = 0;

    virtual IPreset*CCL_API openPreset (
        UrlRef url,
        IPresetDescriptor* descriptor = nullptr
    ) = 0;

    virtual IPreset*CCL_API createPreset (UrlRef url, IAttributeList& metaInfo) = 0;
    virtual int CCL_API getTargetFlags (IUnknown* target) = 0;
    virtual const FileType&CCL_API getFileType (int index) = 0;
    DECLARE_STRINGID_MEMBER (kPresetLocationsChanged);

Detailed Documentation

Methods

virtual int CCL_API getFlags ()

Get handler capability flags.

virtual tbool CCL_API canHandle (IUnknown* target)

Check if target can be handled.

virtual tbool CCL_API getWriteLocation (IUrl& url, IAttributeList* metaInfo)

Get location for writing presets, metaInfo can be null (root location).

virtual tbool CCL_API getReadLocation (
    IUrl& url,
    IAttributeList* metaInfo,
    int index
)

Get location(s) for reading presets, metaInfo can be null (root location).

virtual tbool CCL_API getSubFolder (String& subFolder, IAttributeList& metaInfo)

Get subFolder (relative to a root location) for given metaInfo.

virtual const FileType&CCL_API getFileType ()

Get preset file type (legacy method, handlers with multiple types should return the most important / default type here).

virtual const FileType&CCL_API getFileType (int index)

Get supported preset file types; returns empty FileType when done.

virtual IPreset*CCL_API openPreset (UrlRef url, IPresetDescriptor* descriptor)

Open preset from given location; use optional descriptor to restore cached meta information.

virtual IPreset*CCL_API createPreset (UrlRef url, IAttributeList& metaInfo)

Create preset at given location.

virtual int CCL_API getTargetFlags (IUnknown* target)

Get handler capability flags for target - canHandle and getFlags combined.