[Contents] [Index] [Help] [Retrace] [Browse <] [Browse >]


    NAME
        ObtainInfoA -- Inquire tagged font and/or glyph metrics
        ObtainInfo -- varargs form of ObtainInfoA

    SYNOPSIS
        error = ObtainInfoA(engineHandle, tagList)
                            A0            A1

        ULONG ObtainInfoA(struct glyphengine *, struct tagitem *);

        error = ObtainInfo(engineHandle, firstTag, ...)

        ULONG ObtainInfo(struct glyphengine *, tag, ...);

    FUNCTION
        This function accepts a tagList whose tag field elements are
        valid for inquiry, and whose associated data fields are
        pointers to the destination in which to place the requested
        data.

        tag items that refer to data indirectly (ot_indirect is set)
        return pointers that may be allocated or cached by the
        library.  This data must be treated as read-only data.  When
        the application is done with the data acquired via ObtainInfoA,
        it must perform a releaseinfoa to allow the library to release
        the data.

    INPUTS
        engineHandle -- the handle acquired via openengine.
        tagList -- a tagList containing OT_ tags valid for inquiry
                paired with the destination pointers for the inquiry
                results.  All destinations are longwords, whether they
                are pointers or values, and regardless of whether the
                value could fit in a smaller variable.

    RESULT
        This function returns a zero success indication, or a non-zero
        error code.

    EXAMPLE
            ULONG pointSize;
            struct glyphmap *glyph;
            ...
            if (!ObtainInfo(EngineHandle, OT_Glyph, &glyph, TAG_DONE)) {
                ...
                ReleaseInfo(EngineHandle, OT_Glyph, glyph, TAG_DONE);
            }

    SEE ALSO
        releaseinfoa(), diskfont/diskfonttag.h, diskfont/oterrors.h