|
Packit |
01d647 |
// =================================================================================================
|
|
Packit |
01d647 |
// ADOBE SYSTEMS INCORPORATED
|
|
Packit |
01d647 |
// Copyright 2002-2008 Adobe Systems Incorporated
|
|
Packit |
01d647 |
// All Rights Reserved
|
|
Packit |
01d647 |
//
|
|
Packit |
01d647 |
// NOTICE: Adobe permits you to use, modify, and distribute this file in accordance with the terms
|
|
Packit |
01d647 |
// of the Adobe license agreement accompanying it.
|
|
Packit |
01d647 |
// =================================================================================================
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
// ================================================================================================
|
|
Packit |
01d647 |
/// \file TXMPUtils.incl_cpp
|
|
Packit |
01d647 |
/// \brief The implementation of the TXMPUtils template class.
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
#include "XMPSDK.hpp"
|
|
Packit |
01d647 |
#include "client-glue/WXMP_Common.hpp"
|
|
Packit |
01d647 |
#include "client-glue/WXMPUtils.hpp"
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
// =================================================================================================
|
|
Packit |
01d647 |
// Implementation Guidelines
|
|
Packit |
01d647 |
// =========================
|
|
Packit |
01d647 |
//
|
|
Packit |
01d647 |
// The implementations of the template functions are very stylized. ...
|
|
Packit |
01d647 |
//
|
|
Packit |
01d647 |
// =================================================================================================
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
XMP_MethodIntro(TXMPUtils,void)::
|
|
Packit |
01d647 |
ComposeArrayItemPath ( XMP_StringPtr schemaNS,
|
|
Packit |
01d647 |
XMP_StringPtr arrayName,
|
|
Packit |
01d647 |
XMP_Index itemIndex,
|
|
Packit |
01d647 |
tStringObj * fullPath )
|
|
Packit |
01d647 |
{
|
|
Packit |
01d647 |
XMP_StringPtr pathPtr = 0;
|
|
Packit |
01d647 |
XMP_StringLen pathLen = 0;
|
|
Packit |
01d647 |
WrapCheckVoid ( zXMPUtils_ComposeArrayItemPath_1 ( schemaNS, arrayName, itemIndex, &pathPtr, &pathLen ) );
|
|
Packit |
01d647 |
if ( fullPath != 0 ) fullPath->assign ( pathPtr, pathLen );
|
|
Packit |
01d647 |
WXMPUtils_Unlock_1 ( 0 );
|
|
Packit |
01d647 |
}
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
// -------------------------------------------------------------------------------------------------
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
XMP_MethodIntro(TXMPUtils,void)::
|
|
Packit |
01d647 |
ComposeStructFieldPath ( XMP_StringPtr schemaNS,
|
|
Packit |
01d647 |
XMP_StringPtr structName,
|
|
Packit |
01d647 |
XMP_StringPtr fieldNS,
|
|
Packit |
01d647 |
XMP_StringPtr fieldName,
|
|
Packit |
01d647 |
tStringObj * fullPath )
|
|
Packit |
01d647 |
{
|
|
Packit |
01d647 |
XMP_StringPtr pathPtr = 0;
|
|
Packit |
01d647 |
XMP_StringLen pathLen = 0;
|
|
Packit |
01d647 |
WrapCheckVoid ( zXMPUtils_ComposeStructFieldPath_1 ( schemaNS, structName, fieldNS, fieldName, &pathPtr, &pathLen ) );
|
|
Packit |
01d647 |
if ( fullPath != 0 ) fullPath->assign ( pathPtr, pathLen );
|
|
Packit |
01d647 |
WXMPUtils_Unlock_1 ( 0 );
|
|
Packit |
01d647 |
}
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
// -------------------------------------------------------------------------------------------------
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
XMP_MethodIntro(TXMPUtils,void)::
|
|
Packit |
01d647 |
ComposeQualifierPath ( XMP_StringPtr schemaNS,
|
|
Packit |
01d647 |
XMP_StringPtr propName,
|
|
Packit |
01d647 |
XMP_StringPtr qualNS,
|
|
Packit |
01d647 |
XMP_StringPtr qualName,
|
|
Packit |
01d647 |
tStringObj * fullPath )
|
|
Packit |
01d647 |
{
|
|
Packit |
01d647 |
XMP_StringPtr pathPtr = 0;
|
|
Packit |
01d647 |
XMP_StringLen pathLen = 0;
|
|
Packit |
01d647 |
WrapCheckVoid ( zXMPUtils_ComposeQualifierPath_1 ( schemaNS, propName, qualNS, qualName, &pathPtr, &pathLen ) );
|
|
Packit |
01d647 |
if ( fullPath != 0 ) fullPath->assign ( pathPtr, pathLen );
|
|
Packit |
01d647 |
WXMPUtils_Unlock_1 ( 0 );
|
|
Packit |
01d647 |
}
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
// -------------------------------------------------------------------------------------------------
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
XMP_MethodIntro(TXMPUtils,void)::
|
|
Packit |
01d647 |
ComposeLangSelector ( XMP_StringPtr schemaNS,
|
|
Packit |
01d647 |
XMP_StringPtr arrayName,
|
|
Packit |
01d647 |
XMP_StringPtr langName,
|
|
Packit |
01d647 |
tStringObj * fullPath )
|
|
Packit |
01d647 |
{
|
|
Packit |
01d647 |
XMP_StringPtr pathPtr = 0;
|
|
Packit |
01d647 |
XMP_StringLen pathLen = 0;
|
|
Packit |
01d647 |
WrapCheckVoid ( zXMPUtils_ComposeLangSelector_1 ( schemaNS, arrayName, langName, &pathPtr, &pathLen ) );
|
|
Packit |
01d647 |
if ( fullPath != 0 ) fullPath->assign ( pathPtr, pathLen );
|
|
Packit |
01d647 |
WXMPUtils_Unlock_1 ( 0 );
|
|
Packit |
01d647 |
}
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
// -------------------------------------------------------------------------------------------------
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
XMP_MethodIntro(TXMPUtils,void)::
|
|
Packit |
01d647 |
ComposeLangSelector ( XMP_StringPtr schemaNS,
|
|
Packit |
01d647 |
XMP_StringPtr arrayName,
|
|
Packit |
01d647 |
const tStringObj & langName,
|
|
Packit |
01d647 |
tStringObj * fullPath )
|
|
Packit |
01d647 |
{
|
|
Packit |
01d647 |
TXMPUtils::ComposeLangSelector ( schemaNS, arrayName, langName.c_str(), fullPath );
|
|
Packit |
01d647 |
}
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
// -------------------------------------------------------------------------------------------------
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
XMP_MethodIntro(TXMPUtils,void)::
|
|
Packit |
01d647 |
ComposeFieldSelector ( XMP_StringPtr schemaNS,
|
|
Packit |
01d647 |
XMP_StringPtr arrayName,
|
|
Packit |
01d647 |
XMP_StringPtr fieldNS,
|
|
Packit |
01d647 |
XMP_StringPtr fieldName,
|
|
Packit |
01d647 |
XMP_StringPtr fieldValue,
|
|
Packit |
01d647 |
tStringObj * fullPath )
|
|
Packit |
01d647 |
{
|
|
Packit |
01d647 |
XMP_StringPtr pathPtr = 0;
|
|
Packit |
01d647 |
XMP_StringLen pathLen = 0;
|
|
Packit |
01d647 |
WrapCheckVoid ( zXMPUtils_ComposeFieldSelector_1 ( schemaNS, arrayName, fieldNS, fieldName, fieldValue,
|
|
Packit |
01d647 |
&pathPtr, &pathLen ) );
|
|
Packit |
01d647 |
if ( fullPath != 0 ) fullPath->assign ( pathPtr, pathLen );
|
|
Packit |
01d647 |
WXMPUtils_Unlock_1 ( 0 );
|
|
Packit |
01d647 |
}
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
// -------------------------------------------------------------------------------------------------
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
XMP_MethodIntro(TXMPUtils,void)::
|
|
Packit |
01d647 |
ComposeFieldSelector ( XMP_StringPtr schemaNS,
|
|
Packit |
01d647 |
XMP_StringPtr arrayName,
|
|
Packit |
01d647 |
XMP_StringPtr fieldNS,
|
|
Packit |
01d647 |
XMP_StringPtr fieldName,
|
|
Packit |
01d647 |
const tStringObj & fieldValue,
|
|
Packit |
01d647 |
tStringObj * fullPath )
|
|
Packit |
01d647 |
{
|
|
Packit |
01d647 |
TXMPUtils::ComposeFieldSelector ( schemaNS, arrayName, fieldNS, fieldName, fieldValue.c_str(), fullPath );
|
|
Packit |
01d647 |
}
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
// -------------------------------------------------------------------------------------------------
|
|
Packit |
01d647 |
// -------------------------------------------------------------------------------------------------
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
XMP_MethodIntro(TXMPUtils,void)::
|
|
Packit |
01d647 |
ConvertFromBool ( bool binValue,
|
|
Packit |
01d647 |
tStringObj * strValue )
|
|
Packit |
01d647 |
{
|
|
Packit |
01d647 |
XMP_StringPtr strPtr = 0;
|
|
Packit |
01d647 |
XMP_StringLen strLen = 0;
|
|
Packit |
01d647 |
WrapCheckVoid ( zXMPUtils_ConvertFromBool_1 ( binValue, &strPtr, &strLen ) );
|
|
Packit |
01d647 |
if ( strValue != 0 ) strValue->assign ( strPtr, strLen );
|
|
Packit |
01d647 |
WXMPUtils_Unlock_1 ( 0 );
|
|
Packit |
01d647 |
}
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
// -------------------------------------------------------------------------------------------------
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
XMP_MethodIntro(TXMPUtils,void)::
|
|
Packit |
01d647 |
ConvertFromInt ( long binValue,
|
|
Packit |
01d647 |
XMP_StringPtr format,
|
|
Packit |
01d647 |
tStringObj * strValue )
|
|
Packit |
01d647 |
{
|
|
Packit |
01d647 |
XMP_StringPtr strPtr = 0;
|
|
Packit |
01d647 |
XMP_StringLen strLen = 0;
|
|
Packit |
01d647 |
WrapCheckVoid ( zXMPUtils_ConvertFromInt_1 ( binValue, format, &strPtr, &strLen ) );
|
|
Packit |
01d647 |
if ( strValue != 0 ) strValue->assign ( strPtr, strLen );
|
|
Packit |
01d647 |
WXMPUtils_Unlock_1 ( 0 );
|
|
Packit |
01d647 |
}
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
// -------------------------------------------------------------------------------------------------
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
XMP_MethodIntro(TXMPUtils,void)::
|
|
Packit |
01d647 |
ConvertFromInt64 ( long long binValue,
|
|
Packit |
01d647 |
XMP_StringPtr format,
|
|
Packit |
01d647 |
tStringObj * strValue )
|
|
Packit |
01d647 |
{
|
|
Packit |
01d647 |
XMP_StringPtr strPtr = 0;
|
|
Packit |
01d647 |
XMP_StringLen strLen = 0;
|
|
Packit |
01d647 |
WrapCheckVoid ( zXMPUtils_ConvertFromInt64_1 ( binValue, format, &strPtr, &strLen ) );
|
|
Packit |
01d647 |
if ( strValue != 0 ) strValue->assign ( strPtr, strLen );
|
|
Packit |
01d647 |
WXMPUtils_Unlock_1 ( 0 );
|
|
Packit |
01d647 |
}
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
// -------------------------------------------------------------------------------------------------
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
XMP_MethodIntro(TXMPUtils,void)::
|
|
Packit |
01d647 |
ConvertFromFloat ( double binValue,
|
|
Packit |
01d647 |
XMP_StringPtr format,
|
|
Packit |
01d647 |
tStringObj * strValue )
|
|
Packit |
01d647 |
{
|
|
Packit |
01d647 |
XMP_StringPtr strPtr = 0;
|
|
Packit |
01d647 |
XMP_StringLen strLen = 0;
|
|
Packit |
01d647 |
WrapCheckVoid ( zXMPUtils_ConvertFromFloat_1 ( binValue, format, &strPtr, &strLen ) );
|
|
Packit |
01d647 |
if ( strValue != 0 ) strValue->assign ( strPtr, strLen );
|
|
Packit |
01d647 |
WXMPUtils_Unlock_1 ( 0 );
|
|
Packit |
01d647 |
}
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
// -------------------------------------------------------------------------------------------------
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
XMP_MethodIntro(TXMPUtils,void)::
|
|
Packit |
01d647 |
ConvertFromDate ( const XMP_DateTime & binValue,
|
|
Packit |
01d647 |
tStringObj * strValue )
|
|
Packit |
01d647 |
{
|
|
Packit |
01d647 |
XMP_StringPtr strPtr = 0;
|
|
Packit |
01d647 |
XMP_StringLen strLen = 0;
|
|
Packit |
01d647 |
WrapCheckVoid ( zXMPUtils_ConvertFromDate_1 ( binValue, &strPtr, &strLen ) );
|
|
Packit |
01d647 |
if ( strValue != 0 ) strValue->assign ( strPtr, strLen );
|
|
Packit |
01d647 |
WXMPUtils_Unlock_1 ( 0 );
|
|
Packit |
01d647 |
}
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
// -------------------------------------------------------------------------------------------------
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
XMP_MethodIntro(TXMPUtils,bool)::
|
|
Packit |
01d647 |
ConvertToBool ( XMP_StringPtr strValue )
|
|
Packit |
01d647 |
{
|
|
Packit |
01d647 |
WrapCheckBool ( value, zXMPUtils_ConvertToBool_1 ( strValue ) );
|
|
Packit |
01d647 |
return value;
|
|
Packit |
01d647 |
}
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
// -------------------------------------------------------------------------------------------------
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
XMP_MethodIntro(TXMPUtils,bool)::
|
|
Packit |
01d647 |
ConvertToBool ( const tStringObj & strValue )
|
|
Packit |
01d647 |
{
|
|
Packit |
01d647 |
return TXMPUtils::ConvertToBool ( strValue.c_str() );
|
|
Packit |
01d647 |
}
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
// -------------------------------------------------------------------------------------------------
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
XMP_MethodIntro(TXMPUtils,long)::
|
|
Packit |
01d647 |
ConvertToInt ( XMP_StringPtr strValue )
|
|
Packit |
01d647 |
{
|
|
Packit |
01d647 |
WrapCheckInt32 ( value, zXMPUtils_ConvertToInt_1 ( strValue ) );
|
|
Packit |
01d647 |
return value;
|
|
Packit |
01d647 |
}
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
// -------------------------------------------------------------------------------------------------
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
XMP_MethodIntro(TXMPUtils,long)::
|
|
Packit |
01d647 |
ConvertToInt ( const tStringObj & strValue )
|
|
Packit |
01d647 |
{
|
|
Packit |
01d647 |
return TXMPUtils::ConvertToInt ( strValue.c_str() );
|
|
Packit |
01d647 |
}
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
// -------------------------------------------------------------------------------------------------
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
XMP_MethodIntro(TXMPUtils,long long)::
|
|
Packit |
01d647 |
ConvertToInt64 ( XMP_StringPtr strValue )
|
|
Packit |
01d647 |
{
|
|
Packit |
01d647 |
WrapCheckInt64 ( value, zXMPUtils_ConvertToInt64_1 ( strValue ) );
|
|
Packit |
01d647 |
return value;
|
|
Packit |
01d647 |
}
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
// -------------------------------------------------------------------------------------------------
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
XMP_MethodIntro(TXMPUtils,long long)::
|
|
Packit |
01d647 |
ConvertToInt64 ( const tStringObj & strValue )
|
|
Packit |
01d647 |
{
|
|
Packit |
01d647 |
return TXMPUtils::ConvertToInt64 ( strValue.c_str() );
|
|
Packit |
01d647 |
}
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
// -------------------------------------------------------------------------------------------------
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
XMP_MethodIntro(TXMPUtils,double)::
|
|
Packit |
01d647 |
ConvertToFloat ( XMP_StringPtr strValue )
|
|
Packit |
01d647 |
{
|
|
Packit |
01d647 |
WrapCheckFloat ( value, zXMPUtils_ConvertToFloat_1 ( strValue ) );
|
|
Packit |
01d647 |
return value;
|
|
Packit |
01d647 |
}
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
// -------------------------------------------------------------------------------------------------
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
XMP_MethodIntro(TXMPUtils,double)::
|
|
Packit |
01d647 |
ConvertToFloat ( const tStringObj & strValue )
|
|
Packit |
01d647 |
{
|
|
Packit |
01d647 |
return TXMPUtils::ConvertToFloat ( strValue.c_str() );
|
|
Packit |
01d647 |
}
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
// -------------------------------------------------------------------------------------------------
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
XMP_MethodIntro(TXMPUtils,void)::
|
|
Packit |
01d647 |
ConvertToDate ( XMP_StringPtr strValue,
|
|
Packit |
01d647 |
XMP_DateTime * binValue )
|
|
Packit |
01d647 |
{
|
|
Packit |
01d647 |
WrapCheckVoid ( zXMPUtils_ConvertToDate_1 ( strValue, binValue ) );
|
|
Packit |
01d647 |
}
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
// -------------------------------------------------------------------------------------------------
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
XMP_MethodIntro(TXMPUtils,void)::
|
|
Packit |
01d647 |
ConvertToDate ( const tStringObj & strValue,
|
|
Packit |
01d647 |
XMP_DateTime * binValue )
|
|
Packit |
01d647 |
{
|
|
Packit |
01d647 |
TXMPUtils::ConvertToDate ( strValue.c_str(), binValue );
|
|
Packit |
01d647 |
}
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
// -------------------------------------------------------------------------------------------------
|
|
Packit |
01d647 |
// -------------------------------------------------------------------------------------------------
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
XMP_MethodIntro(TXMPUtils,void)::
|
|
Packit |
01d647 |
CurrentDateTime ( XMP_DateTime * time )
|
|
Packit |
01d647 |
{
|
|
Packit |
01d647 |
WrapCheckVoid ( zXMPUtils_CurrentDateTime_1 ( time ) );
|
|
Packit |
01d647 |
}
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
// -------------------------------------------------------------------------------------------------
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
XMP_MethodIntro(TXMPUtils,void)::
|
|
Packit |
01d647 |
SetTimeZone ( XMP_DateTime * time )
|
|
Packit |
01d647 |
{
|
|
Packit |
01d647 |
WrapCheckVoid ( zXMPUtils_SetTimeZone_1 ( time ) );
|
|
Packit |
01d647 |
}
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
// -------------------------------------------------------------------------------------------------
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
XMP_MethodIntro(TXMPUtils,void)::
|
|
Packit |
01d647 |
ConvertToUTCTime ( XMP_DateTime * time )
|
|
Packit |
01d647 |
{
|
|
Packit |
01d647 |
WrapCheckVoid ( zXMPUtils_ConvertToUTCTime_1 ( time ) );
|
|
Packit |
01d647 |
}
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
// -------------------------------------------------------------------------------------------------
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
XMP_MethodIntro(TXMPUtils,void)::
|
|
Packit |
01d647 |
ConvertToLocalTime ( XMP_DateTime * time )
|
|
Packit |
01d647 |
{
|
|
Packit |
01d647 |
WrapCheckVoid ( zXMPUtils_ConvertToLocalTime_1 ( time ) );
|
|
Packit |
01d647 |
}
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
// -------------------------------------------------------------------------------------------------
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
XMP_MethodIntro(TXMPUtils,int)::
|
|
Packit |
01d647 |
CompareDateTime ( const XMP_DateTime & left,
|
|
Packit |
01d647 |
const XMP_DateTime & right )
|
|
Packit |
01d647 |
{
|
|
Packit |
01d647 |
WrapCheckInt32 ( result, zXMPUtils_CompareDateTime_1 ( left, right ) );
|
|
Packit |
01d647 |
return result;
|
|
Packit |
01d647 |
}
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
// -------------------------------------------------------------------------------------------------
|
|
Packit |
01d647 |
// -------------------------------------------------------------------------------------------------
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
XMP_MethodIntro(TXMPUtils,void)::
|
|
Packit |
01d647 |
EncodeToBase64 ( XMP_StringPtr rawStr,
|
|
Packit |
01d647 |
XMP_StringLen rawLen,
|
|
Packit |
01d647 |
tStringObj * encodedStr )
|
|
Packit |
01d647 |
{
|
|
Packit |
01d647 |
XMP_StringPtr encPtr = 0;
|
|
Packit |
01d647 |
XMP_StringLen encLen = 0;
|
|
Packit |
01d647 |
WrapCheckVoid ( zXMPUtils_EncodeToBase64_1 ( rawStr, rawLen, &encPtr, &encLen ) );
|
|
Packit |
01d647 |
if ( encodedStr != 0 ) encodedStr->assign ( encPtr, encLen );
|
|
Packit |
01d647 |
WXMPUtils_Unlock_1 ( 0 );
|
|
Packit |
01d647 |
}
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
// -------------------------------------------------------------------------------------------------
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
XMP_MethodIntro(TXMPUtils,void)::
|
|
Packit |
01d647 |
EncodeToBase64 ( const tStringObj & rawStr,
|
|
Packit |
01d647 |
tStringObj * encodedStr )
|
|
Packit |
01d647 |
{
|
|
Packit |
01d647 |
TXMPUtils::EncodeToBase64 ( rawStr.c_str(), (XMP_StringLen)rawStr.size(), encodedStr );
|
|
Packit |
01d647 |
}
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
// -------------------------------------------------------------------------------------------------
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
XMP_MethodIntro(TXMPUtils,void)::
|
|
Packit |
01d647 |
DecodeFromBase64 ( XMP_StringPtr encodedStr,
|
|
Packit |
01d647 |
XMP_StringLen encodedLen,
|
|
Packit |
01d647 |
tStringObj * rawStr )
|
|
Packit |
01d647 |
{
|
|
Packit |
01d647 |
XMP_StringPtr rawPtr = 0;
|
|
Packit |
01d647 |
XMP_StringLen rawLen = 0;
|
|
Packit |
01d647 |
WrapCheckVoid ( zXMPUtils_DecodeFromBase64_1 ( encodedStr, encodedLen, &rawPtr, &rawLen ) );
|
|
Packit |
01d647 |
if ( rawStr != 0 ) rawStr->assign ( rawPtr, rawLen );
|
|
Packit |
01d647 |
WXMPUtils_Unlock_1 ( 0 );
|
|
Packit |
01d647 |
}
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
// -------------------------------------------------------------------------------------------------
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
XMP_MethodIntro(TXMPUtils,void)::
|
|
Packit |
01d647 |
DecodeFromBase64 ( const tStringObj & encodedStr,
|
|
Packit |
01d647 |
tStringObj * rawStr )
|
|
Packit |
01d647 |
{
|
|
Packit |
01d647 |
TXMPUtils::DecodeFromBase64 ( encodedStr.c_str(), (XMP_StringLen)encodedStr.size(), rawStr );
|
|
Packit |
01d647 |
}
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
// -------------------------------------------------------------------------------------------------
|
|
Packit |
01d647 |
// -------------------------------------------------------------------------------------------------
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
// -------------------------------------------------------------------------------------------------
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
XMP_MethodIntro(TXMPUtils,void)::
|
|
Packit |
01d647 |
PackageForJPEG ( const TXMPMeta<tStringObj> & xmpObj,
|
|
Packit |
01d647 |
tStringObj * standardXMP,
|
|
Packit |
01d647 |
tStringObj * extendedXMP,
|
|
Packit |
01d647 |
tStringObj * extendedDigest )
|
|
Packit |
01d647 |
{
|
|
Packit |
01d647 |
XMP_StringPtr stdStr = 0;
|
|
Packit |
01d647 |
XMP_StringLen stdLen = 0;
|
|
Packit |
01d647 |
XMP_StringPtr extStr = 0;
|
|
Packit |
01d647 |
XMP_StringLen extLen = 0;
|
|
Packit |
01d647 |
XMP_StringPtr digestStr = 0;
|
|
Packit |
01d647 |
XMP_StringLen digestLen = 0;
|
|
Packit |
01d647 |
WrapCheckVoid ( zXMPUtils_PackageForJPEG_1 ( xmpObj.GetInternalRef(),
|
|
Packit |
01d647 |
&stdStr, &stdLen, &extStr, &extLen, &digestStr, &digestLen ) );
|
|
Packit |
01d647 |
if ( standardXMP != 0 ) standardXMP->assign ( stdStr, stdLen );
|
|
Packit |
01d647 |
if ( extendedXMP != 0 ) extendedXMP->assign ( extStr, extLen );
|
|
Packit |
01d647 |
if ( extendedDigest != 0 ) extendedDigest->assign ( digestStr, digestLen );
|
|
Packit |
01d647 |
WXMPUtils_Unlock_1 ( 0 );
|
|
Packit |
01d647 |
}
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
// -------------------------------------------------------------------------------------------------
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
XMP_MethodIntro(TXMPUtils,void)::
|
|
Packit |
01d647 |
MergeFromJPEG ( TXMPMeta<tStringObj> * fullXMP,
|
|
Packit |
01d647 |
const TXMPMeta<tStringObj> & extendedXMP )
|
|
Packit |
01d647 |
{
|
|
Packit |
01d647 |
WrapCheckVoid ( zXMPUtils_MergeFromJPEG_1 ( fullXMP->GetInternalRef(), extendedXMP.GetInternalRef() ) );
|
|
Packit |
01d647 |
}
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
// -------------------------------------------------------------------------------------------------
|
|
Packit |
01d647 |
// -------------------------------------------------------------------------------------------------
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
XMP_MethodIntro(TXMPUtils,void)::
|
|
Packit |
01d647 |
CatenateArrayItems ( const TXMPMeta<tStringObj> & xmpObj,
|
|
Packit |
01d647 |
XMP_StringPtr schemaNS,
|
|
Packit |
01d647 |
XMP_StringPtr arrayName,
|
|
Packit |
01d647 |
XMP_StringPtr separator,
|
|
Packit |
01d647 |
XMP_StringPtr quotes,
|
|
Packit |
01d647 |
XMP_OptionBits options,
|
|
Packit |
01d647 |
tStringObj * catedStr )
|
|
Packit |
01d647 |
{
|
|
Packit |
01d647 |
XMP_StringPtr catedPtr = 0;
|
|
Packit |
01d647 |
XMP_StringLen catedLen = 0;
|
|
Packit |
01d647 |
WrapCheckVoid ( zXMPUtils_CatenateArrayItems_1 ( xmpObj.GetInternalRef(), schemaNS, arrayName,
|
|
Packit |
01d647 |
separator, quotes, options, &catedPtr, &catedLen ) );
|
|
Packit |
01d647 |
if ( catedStr != 0 ) catedStr->assign ( catedPtr, catedLen );
|
|
Packit |
01d647 |
WXMPUtils_Unlock_1 ( 0 );
|
|
Packit |
01d647 |
}
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
// -------------------------------------------------------------------------------------------------
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
XMP_MethodIntro(TXMPUtils,void)::
|
|
Packit |
01d647 |
SeparateArrayItems ( TXMPMeta<tStringObj> * xmpObj,
|
|
Packit |
01d647 |
XMP_StringPtr schemaNS,
|
|
Packit |
01d647 |
XMP_StringPtr arrayName,
|
|
Packit |
01d647 |
XMP_OptionBits options,
|
|
Packit |
01d647 |
XMP_StringPtr catedStr )
|
|
Packit |
01d647 |
{
|
|
Packit |
01d647 |
if ( xmpObj == 0 ) throw XMP_Error ( kXMPErr_BadParam, "Null output SXMPMeta pointer" );
|
|
Packit |
01d647 |
WrapCheckVoid ( zXMPUtils_SeparateArrayItems_1 ( xmpObj->GetInternalRef(), schemaNS, arrayName, options, catedStr ) );
|
|
Packit |
01d647 |
}
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
// -------------------------------------------------------------------------------------------------
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
XMP_MethodIntro(TXMPUtils,void)::
|
|
Packit |
01d647 |
SeparateArrayItems ( TXMPMeta<tStringObj> * xmpObj,
|
|
Packit |
01d647 |
XMP_StringPtr schemaNS,
|
|
Packit |
01d647 |
XMP_StringPtr arrayName,
|
|
Packit |
01d647 |
XMP_OptionBits options,
|
|
Packit |
01d647 |
const tStringObj & catedStr )
|
|
Packit |
01d647 |
{
|
|
Packit |
01d647 |
TXMPUtils::SeparateArrayItems ( xmpObj, schemaNS, arrayName, options, catedStr.c_str() );
|
|
Packit |
01d647 |
}
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
// -------------------------------------------------------------------------------------------------
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
XMP_MethodIntro(TXMPUtils,void)::
|
|
Packit |
01d647 |
RemoveProperties ( TXMPMeta<tStringObj> * xmpObj,
|
|
Packit |
01d647 |
XMP_StringPtr schemaNS /* = 0 */,
|
|
Packit |
01d647 |
XMP_StringPtr propName /* = 0 */,
|
|
Packit |
01d647 |
XMP_OptionBits options /* = 0 */ )
|
|
Packit |
01d647 |
{
|
|
Packit |
01d647 |
if ( xmpObj == 0 ) throw XMP_Error ( kXMPErr_BadParam, "Null output SXMPMeta pointer" );
|
|
Packit |
01d647 |
WrapCheckVoid ( zXMPUtils_RemoveProperties_1 ( xmpObj->GetInternalRef(), schemaNS, propName, options ) );
|
|
Packit |
01d647 |
}
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
// -------------------------------------------------------------------------------------------------
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
XMP_MethodIntro(TXMPUtils,void)::
|
|
Packit |
01d647 |
AppendProperties ( const TXMPMeta<tStringObj> & source,
|
|
Packit |
01d647 |
TXMPMeta<tStringObj> * dest,
|
|
Packit |
01d647 |
XMP_OptionBits options /* = 0 */ )
|
|
Packit |
01d647 |
{
|
|
Packit |
01d647 |
if ( dest == 0 ) throw XMP_Error ( kXMPErr_BadParam, "Null output SXMPMeta pointer" );
|
|
Packit |
01d647 |
WrapCheckVoid ( zXMPUtils_AppendProperties_1 ( source.GetInternalRef(), dest->GetInternalRef(), options ) );
|
|
Packit |
01d647 |
}
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
// -------------------------------------------------------------------------------------------------
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
XMP_MethodIntro(TXMPUtils,void)::
|
|
Packit |
01d647 |
DuplicateSubtree ( const TXMPMeta<tStringObj> & source,
|
|
Packit |
01d647 |
TXMPMeta<tStringObj> * dest,
|
|
Packit |
01d647 |
XMP_StringPtr sourceNS,
|
|
Packit |
01d647 |
XMP_StringPtr sourceRoot,
|
|
Packit |
01d647 |
XMP_StringPtr destNS /*= 0 */,
|
|
Packit |
01d647 |
XMP_StringPtr destRoot /* = 0 */,
|
|
Packit |
01d647 |
XMP_OptionBits options /* = 0 */ )
|
|
Packit |
01d647 |
{
|
|
Packit |
01d647 |
if ( dest == 0 ) throw XMP_Error ( kXMPErr_BadParam, "Null output SXMPMeta pointer" );
|
|
Packit |
01d647 |
WrapCheckVoid ( zXMPUtils_DuplicateSubtree_1 ( source.GetInternalRef(), dest->GetInternalRef(),
|
|
Packit |
01d647 |
sourceNS, sourceRoot, destNS, destRoot, options ) );
|
|
Packit |
01d647 |
}
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
// =================================================================================================
|
|
Packit |
01d647 |
|
|
Packit |
01d647 |
// =================================================================================================
|