L_Jp2AppendBoxesMemory
#include "l_bitmap.h"
L_LTJP2_API L_INT EXT_FUNCTION L_Jp2AppendBoxesMemory(hJp2, pBuffer, uBufferSize, lpOutBuffer, puOutBufferSize, uBoxType, pBoxes, uNumOfBoxes)
|
L_HJP2 hJp2; |
/* JPEG 2000 engine handle */ |
|
L_UINT8 * pBuffer; |
/* pointer to a JPEG 2000 file in memory */ |
|
L_SIZE_T uBufferSize; |
/* size of the JPEG 2000 file*/ |
|
L_UINT8 ** lpOutBuffer; |
/* pointer to a pointer */ |
|
L_SIZE_T * puOutBufferSize; |
/* pointer to a variable to be updated */ |
|
eJP2BOXTYPE uBoxType; |
/* box type*/ |
|
L_VOID * pBoxes; |
/* pointer to an array of boxes */ |
|
L_UINT uNumOfBoxes; |
/* number of boxes */ |
Appends boxes of uBoxType to the file in buffer.
|
Parameter |
Description |
|
hJp2 |
JPEG 2000 engine handle that was created by the L_Jp2Create function. |
|
pBuffer |
Pointer to a JPEG 2000 file in the memory. |
|
uBufferSize |
Size of the JPEG 2000 file in bytes. |
|
lpOutBuffer |
Pointer to a pointer to be updated with an array of bytes that contains a JPEG 2000 file with new appended boxes. You must free this buffer by calling the Windows GlobalFree() function. |
|
puOutBufferSize |
Address of a variable to be updated with the size of the output memory buffer in bytes. |
|
uBoxType |
Type of the boxes to be appended. |
|
pBoxes |
Point to an array of boxes of type uBoxType. |
|
uNumOfBoxes |
Number of boxes in the array. |
Returns
|
SUCCESS |
The function was successful. |
|
< 1 |
An error occurred. Refer to Return Codes. |
Comments
L_Jp2AppendBoxesMemory appends JPEG 2000 boxes to a file in memory buffer.
Required DLLs and Libraries
|
LTJP2 For a listing of the exact DLLs and Libraries needed, based on the toolkit version, refer to Files To Be Included With Your Application. |
Platforms
Windows 2000 / XP/Vista.
See Also
Example
This example appends a box to already existing JPEG 2000 file.
L_LTJP2TEX_API L_INT Jp2AppendBoxesMemoryExample(L_UINT8* pFileBuffer, L_SIZE_T uFileSize, L_UINT8** lpOutBuffer, L_SIZE_T * puOutSize, L_UINT8 * pXMLData, L_SIZE_T uSize)
{
L_HJP2 hEngine;
L_INT nRet;
L_JP2_XML_BOX XMLBox;
/*Create JPEG 2000 engine handle*/
hEngine = L_Jp2Create();
/*Create an XML box*/
XMLBox.uStructSize = sizeof(L_JP2_XML_BOX);
XMLBox.pData = pXMLData;
XMLBox.uDataSize = uSize;
/*Append XML box to a JPX file*/
nRet = L_Jp2AppendBoxesMemory(hEngine, pFileBuffer, uFileSize,lpOutBuffer, puOutSize, L_JP2B_XML,&XMLBox,1);
if(nRet != SUCCESS)
return nRet;
/*Destroy engine handle*/
L_Jp2Destroy(hEngine);
return SUCCESS;
}