class CCL::PresetFilePrimitives

Overview

#include <presetfileprimitives.h>

class PresetFilePrimitives
{
public:
    // fields

    static const String kDefaultPresetFileName;

    // methods

    static IPresetFileHandler& getDefaultHandler (IPresetMediator* presetMediator);

    static bool getWriteLocation (
        IUrl& folder,
        const FileType& fileType,
        IAttributeList* metaInfo
    );

    static bool getTempLocation (IUrl& folder);
    static void descendSubFolder (Url& url, IAttributeList& metaInfo);

    static void descendPresetName (
        Url& url,
        StringRef presetName,
        IPresetFileHandler& handler,
        bool makeUnique
    );

    static String makeUniquePresetName (
        StringRef baseName,
        IAttributeList* metaInfo,
        const FileType* fileType = nullptr
    );

    static tbool writePreset (
        UrlRef url,
        IAttributeList& metaInfo,
        IPresetFileHandler& handler,
        IPresetMediator& presetMediator,
        int notificationHint
    );

    static bool makeRelativePresetUrl (Url& presetUrl, IAttributeList* metaInfo);

    static bool makeRelativePresetUrl (
        IPresetFileHandler& handler,
        Url& presetUrl,
        IAttributeList* metaInfo
    );

    static String determineRelativeSubFolder (
        IPresetFileHandler& handler,
        IAttributeList& metaInfo,
        UrlRef presetUrl
    );

    static String determineRelativeSubFolder (
        IPresetFileHandler& handler,
        IAttributeList& metaInfo,
        StringRef subFolder
    );
};

Detailed Documentation

Methods

static IPresetFileHandler& getDefaultHandler (IPresetMediator* presetMediator)

Chooses a default handler: PresetCollectionHandler if mediator implements IPresetCollector, or PresetPackageHandler otherwise.

static void descendSubFolder (Url& url, IAttributeList& metaInfo)

Descends into subfolder from meta attributes, if any.

static void descendPresetName (
    Url& url,
    StringRef presetName,
    IPresetFileHandler& handler,
    bool makeUnique
)

Descends with a valid fileName from presetName and filetype from handler.

static String makeUniquePresetName (
    StringRef baseName,
    IAttributeList* metaInfo,
    const FileType* fileType = nullptr
)

Make a unique preset name from the given base name and meta attributes; if no fileType is given, the name alone will be unique.

static tbool writePreset (
    UrlRef url,
    IAttributeList& metaInfo,
    IPresetFileHandler& handler,
    IPresetMediator& presetMediator,
    int notificationHint
)

Lets handler create a preset file and presetMediator store the data into it.