InDesign SDK  20.5
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
IAdobeCoreMetaData.h
1 //========================================================================================
2 //
3 // $File$
4 //
5 // Owner: Michael Burbidge
6 //
7 // $Author$
8 //
9 // $DateTime$
10 //
11 // $Revision$
12 //
13 // $Change$
14 //
15 // Copyright 1997-2010 Adobe Systems Incorporated. All rights reserved.
16 //
17 // NOTICE: Adobe permits you to use, modify, and distribute this file in accordance
18 // with the terms of the Adobe license agreement accompanying it. If you have received
19 // this file from a source other than Adobe, then your use, modification, or
20 // distribution of it requires the prior written permission of Adobe.
21 //
22 //========================================================================================
23 
24 #ifndef __IAdobeCoreMetaData_h__
25 #define __IAdobeCoreMetaData_h__
26 
27 // ----- Interfaces -----
28 
29 #include "IPMUnknown.h"
30 
31 // ----- Includes -----
32 
33 #include "K2Vector.h"
34 #include "MetaDataTypes.h"
35 
36 // ----- ID.h files -----
37 
38 #include "MetaDataID.h"
39 
40 
41 //========================================================================================
42 // CLASS IAdobeCoreMetaData
43 //========================================================================================
44 
56 {
57 public:
58  enum { kDefaultIID = IID_IADOBECOREMETADATA };
59 
60  //------ xap:Authors
64  virtual void SetAuthors(const K2Vector<PMString>& authors) = 0;
65 
69  virtual K2Vector<PMString> GetAuthors() const = 0;
70 
71  //------ xap:BaseURL
75  virtual void SetBaseURL(const metadata::URI& baseURL) = 0;
76 
80  virtual metadata::URI GetBaseURL() const = 0;
81 
82  //------ xap:CreateDate
86  virtual void SetCreateDate(const XMP_DateTime& date) = 0;
87 
92  virtual bool32 GetCreateDate(XMP_DateTime& dt) const = 0;
93 
94  //------ xap:CreatorTool
99  virtual void SetCreatorTool(const metadata::AgentName& tool) = 0;
100 
105  virtual metadata::AgentName GetCreatorTool() const = 0;
106 
107  //------ xap:Description
111  virtual void SetDescription(const PMString& description) = 0;
112 
116  virtual PMString GetDescription() const = 0;
117 
118  //------ xap:Format
122  virtual void SetFormat(const metadata::MIMEType& format) = 0;
123 
127  virtual metadata::MIMEType GetFormat() const = 0;
128 
129  //------ xap:Keywords
134  virtual K2Vector<PMString> GetKeywords() const = 0;
135 
140  virtual void SetKeywords(const K2Vector<PMString>& keywords) = 0;
141 
142  /* xap:Locale */
143 
144  //------ xap:MetadataDate
149  virtual void SetMetadataDate(const XMP_DateTime& date) = 0;
150 
156  virtual bool32 GetMetadataDate(XMP_DateTime& dt) const = 0;
157 
158  //------ xap:ModifyDate
162  virtual void SetModifyDate(const XMP_DateTime& date) = 0;
163 
168  virtual bool32 GetModifyDate(XMP_DateTime& dt) const = 0;
169 
170  //------ xap:Nickname
174  virtual void SetNickname(const PMString& description) = 0;
175 
179  virtual PMString GetNickname() const = 0;
180 
181  //------ xap:Title
185  virtual void SetTitle(const PMString& title) = 0;
186 
190  virtual PMString GetTitle() const = 0;
191 };
192 
193 #endif // __IAdobeCoreMetaData_h__