MExifMetadataWriter Class Reference

#include <iclexif.h>

class MExifMetadataWriter

Detailed Description

generic accessor to write the tags from exif metadata.

Note: The aIfd argument in MExifMetadataWriter methods should be set as follows:
  • When writing to an IFD 0 tag that is not a GPS tag, use KExifIfdZero.

  • When writing to a tag related to thumbnail, use KExifIfdOne.

  • When writing to a GPS tag, use KExifGpsIfd.

The TExifWriterUtility class offers a friendlier interface to access these tags.

See also: TExifWriterUtility

Member Function Documentation

SetIntegerArrayParam ( TUint, TUint, CArrayFix< TInt > & )

TInt SetIntegerArrayParam(TUintaTag,
TUintaIfd,
CArrayFix< TInt > &aParam
)[pure virtual]

Sets the data associated with an array of signed or unsigned 32-bit integers EXIF/DCF tag/IFD.

Parameters
aTagthe tag id where the data is stored
aIfdthe ifd section in which the tag is stored.
aParamthe list of values value for the tag
Return Value
error code KErrNotSupported if called on a decoding module. KErrNotSupported if the plugin does not support the specified tag. KErrArgument if the requested data type does not match with the tag.

SetIntegerParam ( TUint, TUint, TInt )

TInt SetIntegerParam(TUintaTag,
TUintaIfd,
TIntaParam
)[pure virtual]

Sets the data associated with a signed or unsigned 32-bit integer EXIF/DCF tag/IFD.

Parameters
aTagthe tag id where the data is stored
aIfdthe ifd section in which the tag is stored.
aParamthe value of the tag
Return Value
error code KErrNotSupported if called on a decoding module. KErrNotSupported if the plugin does not support the specified tag. KErrArgument if the requested data type does not match with the tag.

SetParam16 ( TUint, TUint, HBufC16 * )

TInt SetParam16(TUintaTag,
TUintaIfd,
HBufC16 *aParam
)[pure virtual]

Set 16-bit Unicode data into EXIF/DCF tag/IFDs that support it (e.g.0x9286 (UserComment), 0x001B (GpsProcessingMethod) or 0x001C (GpsAreaInformation) ).

Note: This method will add the 8-byte prefix "UNICODE/0" to aParam before setting the tag value in the metadata. It may only be used to set Unicode data.

Parameters
aTagthe tag id where the data is stored
aIfdthe ifd section in which the tag is stored.
aParamthe value of the tag
Return Value
error code KErrNotSupported if called on a decoding module. KErrNotSupported if the plugin does not support the specified tag. KErrArgument if the requested data type does not match with the tag.

SetParam8 ( TUint, TUint, HBufC8 * )

TInt SetParam8(TUintaTag,
TUintaIfd,
HBufC8 *aParam
)[pure virtual]

Set the data associated with an 8-bit (e.g. ASCII, Undefined or Byte) EXIF/DCF tag/IFD.

Note: If setting non-NULL terminated ASCII data, this method will add a NULL terminator to it provided that doing so will not cause the length of the tag value to be exceeded. If the length would be exceeded KErrArgument will be returned.

Note: This method will set other (non-ASCII) 8-bit data exactly as-is.

Parameters
aTagthe tag id where the data is stored
aIfdthe ifd section in which the tag is stored.
aParamthe value of the tag
Return Value
error code KErrNotSupported if called on a decoding module. KErrNotSupported if the plugin does not support the specified tag. KErrArgument if the requested data type does not match with the tag.

SetRationalArrayParam ( TUint, TUint, CArrayFix< TRational > & )

TInt SetRationalArrayParam(TUintaTag,
TUintaIfd,
CArrayFix< TRational > &aParam
)[pure virtual]

Sets the data associated with an array of signed or unsigned rationals EXIF/DCF tag/IFD.

Parameters
aTagthe tag id where the data is stored
aIfdthe ifd section in which the tag is stored.
aParamthe list of values value for the tag
Return Value
error code KErrNotSupported if called on a decoding module. KErrNotSupported if the plugin does not support the specified tag. KErrArgument if the requested data type does not match with the tag.

SetRationalParam ( TUint, TUint, TInt, TInt )

TInt SetRationalParam(TUintaTag,
TUintaIfd,
TIntaNumerator,
TIntaDenominator
)[pure virtual]

Sets the data associated with a signed or unsigned rational EXIF/DCF tag/IFD.

Parameters
aTagthe tag id where the data is stored
aIfdthe ifd section in which the tag is stored.
aNumeratorthe numerator value of the rational tag
aDenominatorthe denominator value of the rational tag
Return Value
error code KErrNotSupported if called on a decoding module. KErrNotSupported if the plugin does not support the specified tag. KErrArgument if the requested data type does not match with the tag.

SetShortArrayParam ( TUint, TUint, CArrayFix< TUint16 > & )

TInt SetShortArrayParam(TUintaTag,
TUintaIfd,
CArrayFix< TUint16 > &aParam
)[pure virtual]

Sets the data associated with an array of unsigned short (16-bit) EXIF/DCF tag/IFD.

Parameters
aTagthe tag id where the data is stored
aIfdthe ifd section in which the tag is stored.
aParamthe list of values value for the tag
Return Value
error code KErrNotSupported if called on a decoding module. KErrNotSupported if the plugin does not support the specified tag. KErrArgument if the requested data type does not match with the tag.

SetShortParam ( TUint, TUint, TUint16 )

TInt SetShortParam(TUintaTag,
TUintaIfd,
TUint16aParam
)[pure virtual]

Sets the data associated with an unsigned short (16-bit) EXIF/DCF tag/IFD.

Parameters
aTagthe tag id where the data is stored
aIfdthe ifd section in which the tag is stored.
aParamthe value of the tag
Return Value
error code KErrNotSupported if called on a decoding module. KErrNotSupported if the plugin does not support the specified tag. KErrArgument if the requested data type does not match with the tag.