summaryrefslogtreecommitdiff
path: root/source/dng_iptc.h
diff options
context:
space:
mode:
Diffstat (limited to 'source/dng_iptc.h')
-rw-r--r--source/dng_iptc.h344
1 files changed, 172 insertions, 172 deletions
diff --git a/source/dng_iptc.h b/source/dng_iptc.h
index 82ebaeb..3fcec27 100644
--- a/source/dng_iptc.h
+++ b/source/dng_iptc.h
@@ -1,172 +1,172 @@
-/*****************************************************************************/
-// Copyright 2006-2008 Adobe Systems Incorporated
-// All Rights Reserved.
-//
-// NOTICE: Adobe permits you to use, modify, and distribute this file in
-// accordance with the terms of the Adobe license agreement accompanying it.
-/*****************************************************************************/
-
-/* $Id: //mondo/dng_sdk_1_4/dng_sdk/source/dng_iptc.h#1 $ */
-/* $DateTime: 2012/05/30 13:28:51 $ */
-/* $Change: 832332 $ */
-/* $Author: tknoll $ */
-
-/** \file
- * Support for IPTC metadata within DNG files.
- */
-
-/*****************************************************************************/
-
-#ifndef __dng_iptc__
-#define __dng_iptc__
-
-/*****************************************************************************/
-
-#include "dng_date_time.h"
-#include "dng_string.h"
-#include "dng_string_list.h"
-
-/*****************************************************************************/
-
-/// \brief Class for reading and holding IPTC metadata associated with a DNG file.
-///
-/// See the \ref spec_iptc "IPTC specification"
-/// for information on member fields of this class.
-
-class dng_iptc
- {
-
- public:
-
- dng_string fTitle;
-
- int32 fUrgency;
-
- dng_string fCategory;
-
- dng_string_list fSupplementalCategories;
-
- dng_string_list fKeywords;
-
- dng_string fInstructions;
-
- dng_date_time_info fDateTimeCreated;
-
- dng_date_time_info fDigitalCreationDateTime;
-
- dng_string_list fAuthors;
-
- dng_string fAuthorsPosition;
-
- dng_string fCity;
- dng_string fState;
- dng_string fCountry;
- dng_string fCountryCode;
-
- dng_string fLocation;
-
- dng_string fTransmissionReference;
-
- dng_string fHeadline;
-
- dng_string fCredit;
-
- dng_string fSource;
-
- dng_string fCopyrightNotice;
-
- dng_string fDescription;
- dng_string fDescriptionWriter;
-
- protected:
-
- enum DataSet
- {
- kRecordVersionSet = 0,
- kObjectNameSet = 5,
- kUrgencySet = 10,
- kCategorySet = 15,
- kSupplementalCategoriesSet = 20,
- kKeywordsSet = 25,
- kSpecialInstructionsSet = 40,
- kDateCreatedSet = 55,
- kTimeCreatedSet = 60,
- kDigitalCreationDateSet = 62,
- kDigitalCreationTimeSet = 63,
- kBylineSet = 80,
- kBylineTitleSet = 85,
- kCitySet = 90,
- kSublocationSet = 92,
- kProvinceStateSet = 95,
- kCountryCodeSet = 100,
- kCountryNameSet = 101,
- kOriginalTransmissionReferenceSet = 103,
- kHeadlineSet = 105,
- kCreditSet = 110,
- kSourceSet = 115,
- kCopyrightNoticeSet = 116,
- kCaptionSet = 120,
- kCaptionWriterSet = 122
- };
-
- enum CharSet
- {
- kCharSetUnknown = 0,
- kCharSetUTF8 = 1
- };
-
- public:
-
- dng_iptc ();
-
- virtual ~dng_iptc ();
-
- /// Test if IPTC metadata exists.
- /// \retval true if no IPTC metadata exists for this DNG.
-
- bool IsEmpty () const;
-
- /// Test if IPTC metadata exists.
- /// \retval true if IPTC metadata exists for this DNG.
-
- bool NotEmpty () const
- {
- return !IsEmpty ();
- }
-
- /// Parse a complete block of IPTC data.
- /// \param blockData The block of IPTC data.
- /// \param blockSize Size in bytes of data block.
- /// \param offsetInOriginalFile Used to enable certain file patching operations such as updating date/time in place.
-
- void Parse (const void *blockData,
- uint32 blockSize,
- uint64 offsetInOriginalFile);
-
- /// Serialize IPTC data to a memory block.
- /// \param allocator Memory allocator used to acquire memory block.
- /// \param padForTIFF Forces length of block to be a multiple of four bytes in accordance with TIFF standard.
- /// \retval Memory block
-
- dng_memory_block * Spool (dng_memory_allocator &allocator,
- bool padForTIFF);
-
- protected:
-
- void ParseString (dng_stream &stream,
- dng_string &s,
- CharSet charSet);
-
- void SpoolString (dng_stream &stream,
- const dng_string &s,
- uint8 dataSet,
- uint32 maxChars,
- CharSet charSet);
-
- };
-
-/*****************************************************************************/
-
-#endif
-
-/*****************************************************************************/
+/*****************************************************************************/
+// Copyright 2006-2008 Adobe Systems Incorporated
+// All Rights Reserved.
+//
+// NOTICE: Adobe permits you to use, modify, and distribute this file in
+// accordance with the terms of the Adobe license agreement accompanying it.
+/*****************************************************************************/
+
+/* $Id: //mondo/dng_sdk_1_4/dng_sdk/source/dng_iptc.h#1 $ */
+/* $DateTime: 2012/05/30 13:28:51 $ */
+/* $Change: 832332 $ */
+/* $Author: tknoll $ */
+
+/** \file
+ * Support for IPTC metadata within DNG files.
+ */
+
+/*****************************************************************************/
+
+#ifndef __dng_iptc__
+#define __dng_iptc__
+
+/*****************************************************************************/
+
+#include "dng_date_time.h"
+#include "dng_string.h"
+#include "dng_string_list.h"
+
+/*****************************************************************************/
+
+/// \brief Class for reading and holding IPTC metadata associated with a DNG file.
+///
+/// See the \ref spec_iptc "IPTC specification"
+/// for information on member fields of this class.
+
+class dng_iptc
+ {
+
+ public:
+
+ dng_string fTitle;
+
+ int32 fUrgency;
+
+ dng_string fCategory;
+
+ dng_string_list fSupplementalCategories;
+
+ dng_string_list fKeywords;
+
+ dng_string fInstructions;
+
+ dng_date_time_info fDateTimeCreated;
+
+ dng_date_time_info fDigitalCreationDateTime;
+
+ dng_string_list fAuthors;
+
+ dng_string fAuthorsPosition;
+
+ dng_string fCity;
+ dng_string fState;
+ dng_string fCountry;
+ dng_string fCountryCode;
+
+ dng_string fLocation;
+
+ dng_string fTransmissionReference;
+
+ dng_string fHeadline;
+
+ dng_string fCredit;
+
+ dng_string fSource;
+
+ dng_string fCopyrightNotice;
+
+ dng_string fDescription;
+ dng_string fDescriptionWriter;
+
+ protected:
+
+ enum DataSet
+ {
+ kRecordVersionSet = 0,
+ kObjectNameSet = 5,
+ kUrgencySet = 10,
+ kCategorySet = 15,
+ kSupplementalCategoriesSet = 20,
+ kKeywordsSet = 25,
+ kSpecialInstructionsSet = 40,
+ kDateCreatedSet = 55,
+ kTimeCreatedSet = 60,
+ kDigitalCreationDateSet = 62,
+ kDigitalCreationTimeSet = 63,
+ kBylineSet = 80,
+ kBylineTitleSet = 85,
+ kCitySet = 90,
+ kSublocationSet = 92,
+ kProvinceStateSet = 95,
+ kCountryCodeSet = 100,
+ kCountryNameSet = 101,
+ kOriginalTransmissionReferenceSet = 103,
+ kHeadlineSet = 105,
+ kCreditSet = 110,
+ kSourceSet = 115,
+ kCopyrightNoticeSet = 116,
+ kCaptionSet = 120,
+ kCaptionWriterSet = 122
+ };
+
+ enum CharSet
+ {
+ kCharSetUnknown = 0,
+ kCharSetUTF8 = 1
+ };
+
+ public:
+
+ dng_iptc ();
+
+ virtual ~dng_iptc ();
+
+ /// Test if IPTC metadata exists.
+ /// \retval true if no IPTC metadata exists for this DNG.
+
+ bool IsEmpty () const;
+
+ /// Test if IPTC metadata exists.
+ /// \retval true if IPTC metadata exists for this DNG.
+
+ bool NotEmpty () const
+ {
+ return !IsEmpty ();
+ }
+
+ /// Parse a complete block of IPTC data.
+ /// \param blockData The block of IPTC data.
+ /// \param blockSize Size in bytes of data block.
+ /// \param offsetInOriginalFile Used to enable certain file patching operations such as updating date/time in place.
+
+ void Parse (const void *blockData,
+ uint32 blockSize,
+ uint64 offsetInOriginalFile);
+
+ /// Serialize IPTC data to a memory block.
+ /// \param allocator Memory allocator used to acquire memory block.
+ /// \param padForTIFF Forces length of block to be a multiple of four bytes in accordance with TIFF standard.
+ /// \retval Memory block
+
+ dng_memory_block * Spool (dng_memory_allocator &allocator,
+ bool padForTIFF);
+
+ protected:
+
+ void ParseString (dng_stream &stream,
+ dng_string &s,
+ CharSet charSet);
+
+ void SpoolString (dng_stream &stream,
+ const dng_string &s,
+ uint8 dataSet,
+ uint32 maxChars,
+ CharSet charSet);
+
+ };
+
+/*****************************************************************************/
+
+#endif
+
+/*****************************************************************************/