ImageGear for C and C++ on Windows v21.0 - Updated
API Reference Guide / ART Component API Reference / ART Component Functions Reference / Global Named Block Management Functions / ART_global_block_query
In This Topic
    ART_global_block_query
    In This Topic

    This function queries a global named block for its data returning it in lpBlockData.

    Declaration:

     
    Copy Code
    AT_ERRCOUNT ART_global_block_query(
            HIGEAR hIGear, 
            const LPART_BLOCK_NAME lpBlockName, 
            LPVOID lpBlockData, 
            LPDWORD lpBlockSize
    );
    

    Arguments:

    Name Type Description
    hIGear HIGEAR HIGEAR handle to the image.
    lpBlockName const LPART_BLOCK_NAME A far pointer to an 8 byte array of memory that specifies the type of block to query. The block type is either an ART-defined constant beginning with ART_BLOCK or a user-defined block. See ARTAPI.H file for the full list of ART-defined constants.
    lpBlockData LPVOID A far VOID pointer which returns block data.
    lpBlockSize LPDWORD The size of lpBlockData (in bytes).

    Return Value:

    Returns the number of ImageGear errors that occurred during the function call.

    Supported Raster Image Formats:

    All pixel formats supported by ImageGear for C and C++.

    Sample:

    None

    Example:

     
    Copy Code
    HIGEAR hIGear; /* HIGEAR handle of image */
    LPVOID blockData; /* data in global block  */
    DWORD blockSize; /* size of block, in bytes */
    AT_ERRCOUNT nErrCount; /* number of errors on the */
    /* error stack  */
    /* get the block size */
    nErrCount = ART_global_block_query(hIGear, 
    ART_BLOCK_GROUP, NULL, &blockSize);
    blockData = (LPVOID)alloca(blockSize);
    /* but the data into blockData */
    nErrCount = ART_global_block_query(hIGear, 
    ART_BLOCK_GROUP, blockData, &blockSize);
    

    Remarks:

    The buffer pointed to by lpBlockData must be large enough to fit the named block data. The size of the block is returned by lpBlockSize.

    To find the size of a buffer necessary to hold the block data, call ART_global_block_query() with lpBlockData set to NULL. lpBlockSize returns the size of the block.

    An error is set if any of the following conditions are met: