struct CCL::IObjectConverter

Overview

Interface for global converter singleton, allowing to register filters. More…

#include <iconverter.h>

struct IObjectConverter:
    public CCL::IConvertFilter,
    public CCL::IImportFilter,
    public CCL::IExportFilter
{
    // methods

    virtual void CCL_API registerFilter (IConvertFilter* filter) = 0;
    virtual void CCL_API unregisterFilter (IConvertFilter* filter) = 0;
    virtual void CCL_API registerImporter (IImportFilter* filter) = 0;
    virtual void CCL_API unregisterImporter (IImportFilter* filter) = 0;
    virtual void CCL_API registerExporter (IExportFilter* filter) = 0;
    virtual void CCL_API unregisterExporter (IExportFilter* filter) = 0;
};

Inherited Members

public:
    // typedefs

    typedef CStringRef TypeID;

    // fields

    IUnknown* CCL_API;

    // 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 tbool CCL_API canConvert (IUnknown* object, UIDRef cid = kNullUID) const = 0;
    virtual IUnknown*CCL_API convert (IUnknown* object, UIDRef cid = kNullUID) const = 0;

    virtual tbool CCL_API canImport (
        IStream& stream,
        TypeID type,
        UIDRef cid = kNullUID
    ) const = 0;

    virtual StringID CCL_API getIdentity () const = 0;
    virtual tbool CCL_API getFileType (FileType& fileType) const = 0;

    virtual tbool CCL_API makeFilePromises (
        IUnknownList& filePromises,
        IUnknown* object,
        IUnknown* context
    ) const = 0;

Detailed Documentation

Interface for global converter singleton, allowing to register filters.

Methods

virtual void CCL_API registerFilter (IConvertFilter* filter) = 0

Register conversion filter.

The filter will be shared!

virtual void CCL_API unregisterFilter (IConvertFilter* filter) = 0

Unregister conversion filter.

virtual void CCL_API registerImporter (IImportFilter* filter) = 0

Register import filter.

The filter will be shared!

virtual void CCL_API unregisterImporter (IImportFilter* filter) = 0

Unregister import filter.

virtual void CCL_API registerExporter (IExportFilter* filter) = 0

Register export filter.

The filter will be shared!

virtual void CCL_API unregisterExporter (IExportFilter* filter) = 0

Unregister exporter filter.