Exiv2: Exiv2::Photoshop Struct Reference

# Exiv2::Photoshop Struct Reference

Helper class, has methods to deal with Photoshop "Information Resource Blocks" (IRBs). More...

`#include <jpgimage.hpp>`

List of all members.

## Static Public Member Functions
static int | locateIrb (const byte *pPsData, long sizePsData, uint16_t psTag, const byte **record, uint32_t *const sizeHdr, uint32_t *const sizeData)
| Locates the data for a Photoshop tag in a Photoshop formated memory buffer. Operates on raw data to simplify reuse.
static int | locateIptcIrb (const byte *pPsData, long sizePsData, const byte **record, uint32_t *const sizeHdr, uint32_t *const sizeData)
| Forwards to locateIrb() with psTag = iptc_.
static DataBuf | setIptcIrb (const byte *pPsData, long sizePsData, const IptcData &iptcData)
| Set the new IPTC IRB, keeps existing IRBs but removes the IPTC block if there is no new IPTC data to write.
## Static Public Attributes
static const char | ps3Id_ []
| Photoshop marker
static const char | bimId_ []
| Photoshop marker
static const uint16_t | iptc_
| Photoshop IPTC marker

## Detailed Description

Helper class, has methods to deal with Photoshop "Information Resource Blocks" (IRBs).

## Member Function Documentation

static int Exiv2::Photoshop::locateIrb | ( | const byte * | pPsData,
|  | long | sizePsData,
|  | uint16_t | psTag,
|  | const byte ** | record,
|  | uint32_t *const | sizeHdr,
|  | uint32_t *const | sizeData |
| ) |  |  | `[static]`

Locates the data for a Photoshop tag in a Photoshop formated memory buffer. Operates on raw data to simplify reuse.

Parameters:

  | pPsData | Pointer to buffer containing entire payload of Photoshop formated data, e.g., from APP13 Jpeg segment.
  | sizePsData | Size in bytes of pPsData.
  | psTag | Tag number of the block to look for.
  | record | Output value that is set to the start of the data block within pPsData (may not be null).
  | sizeHdr | Output value that is set to the size of the header within the data block pointed to by record (may not be null).
  | sizeData | Output value that is set to the size of the actual data within the data block pointed to by record (may not be null).

Returns:
  0 if successful;
  3 if no data for psTag was found in pPsData;
  -2 if the pPsData buffer does not contain valid data.

static DataBuf Exiv2::Photoshop::setIptcIrb | ( | const byte * | pPsData,
|  | long | sizePsData,
|  | const IptcData & | iptcData |
| ) |  |  | `[static]`

Set the new IPTC IRB, keeps existing IRBs but removes the IPTC block if there is no new IPTC data to write.

Parameters:

  | pPsData | Existing IRB buffer
  | sizePsData | Size of the IRB buffer, may be 0
  | iptcData | Iptc data to embed, may be empty

Returns:
  A data buffer containing the new IRB buffer, may have 0 size

The documentation for this struct was generated from the following file:

- jpgimage.hpp