struct CCL::IExecutableImage

Overview

Interface for dynamically loaded executables (Windows: DLL/EXE, OSX: Bundle with executable or .dylib). More…

#include <iexecutable.h>

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

    virtual tbool CCL_API getPath (IUrl& path) const = 0;
    virtual tbool CCL_API getIdentifier (String& id) const = 0;
    virtual ModuleRef CCL_API getNativeReference () const = 0;
    virtual void*CCL_API getFunctionPointer (CStringPtr name) const = 0;
    virtual const IAttributeList*CCL_API getMetaInfo () const = 0;
    virtual tbool CCL_API getBinaryPath (IUrl& path) 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

Interface for dynamically loaded executables (Windows: DLL/EXE, OSX: Bundle with executable or .dylib).

Methods

virtual tbool CCL_API getPath (IUrl& path) const = 0

Get path on disk.

virtual tbool CCL_API getIdentifier (String& id) const = 0

Get image identifier.

virtual ModuleRef CCL_API getNativeReference () const = 0

Get native executable reference (Windows: HMODULE, Mac/iOS: CFBundleRef).

virtual void*CCL_API getFunctionPointer (CStringPtr name) const = 0

Retrieve address of exported function by name.

virtual const IAttributeList*CCL_API getMetaInfo () const = 0

Get meta information (optional).

virtual tbool CCL_API getBinaryPath (IUrl& path) const = 0

Get path of binary file of executable (can be different from getPath() for Mac/iOS bundles).