Exiv2::Photoshop Struct Reference
Helper class, has methods to deal with Photoshop "Information Resource Blocks" (IRBs). More...
#include <jpgimage.hpp>
Static Public Member Functions | |
| static bool | isIrb (const byte *pPsData, long sizePsData) |
| Checks an IRB. | |
| static bool | valid (const byte *pPsData, long sizePsData) |
| Validates all IRBs. | |
| 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 int | locatePreviewIrb (const byte *pPsData, long sizePsData, const byte **record, uint32_t *const sizeHdr, uint32_t *const sizeData) |
| Forwards to locatePreviewIrb() with psTag = preview_. | |
| 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 * | irbId_ [] |
| Photoshop IRB markers | |
| static const char | bimId_ [] |
| Photoshop IRB marker (deprecated) | |
| static const uint16_t | iptc_ |
| Photoshop IPTC marker | |
| static const uint16_t | preview_ |
| Photoshop preview marker | |
Detailed Description
Helper class, has methods to deal with Photoshop "Information Resource Blocks" (IRBs).Member Function Documentation
| static bool Exiv2::Photoshop::isIrb | ( | const byte * | pPsData, | |
| long | sizePsData | |||
| ) | [static] |
Checks an IRB.
- Parameters:
-
pPsData Existing IRB buffer sizePsData Size of the IRB buffer
- Returns:
- true if the IRB marker is known and the buffer is big enough to check this;
false otherwise
| static bool Exiv2::Photoshop::valid | ( | const byte * | pPsData, | |
| long | sizePsData | |||
| ) | [static] |
Validates all IRBs.
- Parameters:
-
pPsData Existing IRB buffer sizePsData Size of the IRB buffer, may be 0
- Returns:
- true if all IRBs are valid;
false otherwise
| 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: