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
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.
18 #ifndef EXTENDED_ATTRIBUTE_H_
19 #define EXTENDED_ATTRIBUTE_H_
21 #include "common/HereMaps_global.h"
24 HERE_MAPS_BEGIN_NAMESPACE
26 class ExtendedAttribute;
28 * This typedef defines a list of extended attributes as a type.
30 typedef std::vector< ExtendedAttribute > ExtendedAttributeList;
33 * This class encapsulates an extended attribute relating to a place.
35 * Extended attributes can be used to provide additional information about a
36 * place. They contain a localized label and a text field that can be displayed
37 * without modification.
41 class EXPORT_API ExtendedAttribute
45 * This method is the default constructor.
50 * This method is the copy constructor.
52 * @param rRhs An object whose contents are to be copied to the instance
55 ExtendedAttribute(const ExtendedAttribute& rRhs);
58 * This method is the (virtual) destructor.
60 virtual ~ExtendedAttribute();
63 * This is the assignment operator.
65 * @param rRhs An object whose contents are to be copied to the given
68 * @return A reference to the given instance of the class after its contents
71 ExtendedAttribute& operator=(const ExtendedAttribute& rRhs);
74 * This method retrieves a string that indicates the type of the extended
77 * @return A string containing the attribute type identifier.
79 String GetAttributeType() const;
82 * This method retrieves the extended attribute label, which is a localized
83 * string identifying the attribute.
85 * @return A string containing the extended attribute label.
87 String GetLabel() const;
90 * This method retrieves the extended attribute text, which can be displayed
91 * without modification.
93 * @return A string containing the extended attribute text.
95 String GetText() const;
98 * This method sets the type of the extended attribute.
100 * @rsType A constant reference to a string containing the attribute type
103 void SetAttributeType(const String& rsType);
106 * This method sets the extended attribute label, which is a localized
107 * string identifying the attribute.
109 * @param rsLabel A constant reference to a string containing the extended
112 void SetLabel(const String& rsLabel);
115 * This method sets the extended attribute text, which can be displayed
116 * without modification.
118 * @param rsText A constant reference to a string containing the extended
121 void SetText(const String& rsText);
124 class ExtendedAttributeImpl;
125 ExtendedAttributeImpl* m_pImpl;
127 friend class JsonParser;
130 HERE_MAPS_END_NAMESPACE
132 #endif // EXTENDED_ATTRIBUTE_H_