changed attributes of header files
[platform/core/location/maps-plugin-here.git] / inc / engine / finder / EditorialContent.h
1 /*
2  * Copyright (C) 2013 HERE Global B.V. All rights reserved.
3  * This software, including documentation, is protected by copyright controlled by
4  * HERE Global B.V. (“Software”). All rights are reserved. Copying, including reproducing,
5  * storing, adapting or translating, any or all of this material requires the prior
6  * written consent of HERE Global B.V. You may use this
7  * Software in accordance with the terms and conditions defined in the
8  * HERE Location Platform Services Terms and Conditions, available at
9  * http://developer.here.com/terms-conditions-base
10  *
11  * As an additional permission to the above, you may distribute Software,
12  * in object code format as part of an Application, according to, and subject to, terms and
13  * conditions defined in the Tizen Software Development kit (“SDK”) License Agreement.
14  * You may distribute such object code format Application under terms of your choice,
15  * provided that the header and source files of the Software have not been modified.
16  */
17
18 #ifndef EDITORIAL_CONTENT_H_
19 #define EDITORIAL_CONTENT_H_
20
21 #include <vector>
22
23 #include "common/HereMaps_global.h"
24 #include "finder/BaseContent.h"
25
26 HERE_MAPS_BEGIN_NAMESPACE
27
28 class EditorialContent;
29
30 /**
31  * This typedef defines a list of editorial content items as a type. 
32  */
33 typedef std::vector<EditorialContent> EditorialContentList;
34
35 /**
36  * This class encapsulates editorial content relating to a place.
37  * 
38  * \ingroup finder
39  */
40 class EXPORT_API EditorialContent : public BaseContent
41 {
42 public:
43
44     /**
45      * This is the default constructor. 
46      */
47     EditorialContent();
48
49     /**
50      * This method is the copy constructor.
51      * 
52      * @param rRhs An object whose contents are to be copied to the instance
53      *        being created.
54      */
55     EditorialContent(const EditorialContent& rRhs);
56
57     /**
58      * This method is a (virtual) destructor.
59      */
60     virtual ~EditorialContent();
61
62     /**
63      * This is the assignment operator.
64      *
65      * @param rRhs An object whose contents are to be copied to the given
66      *        instance.
67      *
68      * @return A reference to the given instance of the class after its contents
69      *        have been updated.
70      */
71     EditorialContent& operator=(const EditorialContent& rRhs);
72
73     /**
74      * This method retrieves the description (the contents of an editorial
75      * item). 
76      * 
77      * @return A string containing the description.
78      */
79     String GetDescription() const;
80
81     /**
82      * This method retrieves the identifier of the language of the editorial
83      * item. The identifier is a string containing a BCP 47 language code (see
84      * also http://tools.ietf.org/html/rfc5646).
85      * 
86      * @return A string containing the language identifier.
87      */
88     String GetLanguage() const;
89
90     /**
91      * This method sets the description (the contents of an editorial
92      * item). 
93      * 
94      * @param sText A constant reference to a string containing the description.
95      */
96     void SetDescription(const String& sText);
97
98     /**
99      * This method retrieves the identifier of the language of the editorial
100      * item. The identifier is a string containing a BCP 47 language code (see
101      * also http://tools.ietf.org/html/rfc5646).
102      * 
103      * @param rLanguage A constant reference to a string containing the language
104      *       identifier.
105      */
106     void SetLanguage(const String& rLanguage);
107
108 private:
109     class EditorialContentImpl;
110     EditorialContentImpl* m_pImpl;
111
112     friend class JsonParser;
113 };
114
115 HERE_MAPS_END_NAMESPACE
116
117 #endif // EDITORIAL_CONTENT_H_