struct CCL::IDocumentFilter

Overview

#include <idocumentfilter.h>

struct IDocumentFilter: public CCL::IUnknown
{
    // enums

    enum Flags;

    // structs

    struct ExportParams;

    // methods

    virtual int CCL_API getFlags () const = 0;
    virtual const FileType&CCL_API getFileType () const = 0;
    virtual tresult CCL_API installFile (IUrl& path) const = 0;
    virtual tresult CCL_API canImportFile (UrlRef path) const = 0;
    virtual tresult CCL_API showImportOptions (IDocument& document) = 0;

    virtual tresult CCL_API importDocument (
        IDocument& document,
        IProgressNotify* progress = nullptr
    ) = 0;

    virtual tbool CCL_API canExportDocument (IDocument& document) const = 0;
    virtual tresult CCL_API showExportOptions (IDocument& document) = 0;

    virtual tresult CCL_API exportDocument (
        IDocument& document,
        ExportParams& params,
        IProgressNotify* progress = nullptr
    ) = 0;

    virtual tresult CCL_API finalizeDocumentExport (
        IDocument& document,
        ExportParams& params
    ) = 0;

    virtual tbool CCL_API canMergeDocuments (IDocument& target, UrlRef sourceUrl) = 0;

    virtual tresult CCL_API mergeDocuments (
        IDocument& target,
        IDocument& source,
        IProgressNotify* progress = nullptr
    ) = 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 int CCL_API getFlags () const = 0

Get filter capability flags.

virtual const FileType&CCL_API getFileType () const = 0

Get document file type.

virtual tresult CCL_API installFile (IUrl& path) const = 0

Install document to location determined by filter (optional).

This might move or copy the document file before it’s being imported.

virtual tresult CCL_API canImportFile (UrlRef path) const = 0

Check if given document can be imported.

virtual tresult CCL_API showImportOptions (IDocument& document) = 0

Show options before import (optional).

virtual tresult CCL_API importDocument (
    IDocument& document,
    IProgressNotify* progress = nullptr
) = 0

Import document.

virtual tbool CCL_API canExportDocument (IDocument& document) const = 0

Check if given document can be exported.

virtual tresult CCL_API showExportOptions (IDocument& document) = 0

Show options before export (optional).

virtual tresult CCL_API exportDocument (
    IDocument& document,
    ExportParams& params,
    IProgressNotify* progress = nullptr
) = 0

Export document.

virtual tresult CCL_API finalizeDocumentExport (
    IDocument& document,
    ExportParams& params
) = 0

Post process the exported document (optional)

virtual tbool CCL_API canMergeDocuments (IDocument& target, UrlRef sourceUrl) = 0

Check if given documents can be merged.

virtual tresult CCL_API mergeDocuments (
    IDocument& target,
    IDocument& source,
    IProgressNotify* progress = nullptr
) = 0

Merge documents.

Source is not loaded so far…