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 IMAGE_CONTENT_H_
19 #define IMAGE_CONTENT_H_
22 #include "common/HereMaps_global.h"
23 #ifndef TIZEN_MIGRATION
24 #include <FBaseUtilUri.h>
27 #include "finder/BaseContent.h"
29 HERE_MAPS_BEGIN_NAMESPACE
35 * This typedef defines a list of image content objects as a type.
37 typedef std::vector<ImageContent> ImageContentList;
40 * This class encapsulates the contents of an image. It includes information
41 * such as the source URL, image id, and the details of the user (provider).
45 class EXPORT_API ImageContent : public BaseContent
49 * This method is the default constructor.
54 * This method is the copy constructor.
56 * @param rRhs An object whose contents are to be copied to the instance
59 ImageContent(const ImageContent& rRhs);
62 * This method is a (virtual) destructor.
64 virtual ~ImageContent();
67 * This is the assignment operator.
69 * @param rRhs An object whose contents are to be copied to the given
72 * @return A reference to the given instance of the class after its contents
75 ImageContent& operator=(const ImageContent& rRhs);
78 * This method retrieves the URI of the image source.
80 * @return An object containing the URI of the image source.
82 String GetSource() const;
85 * This method retrieves the image identifier. Note that a meaningful
86 * identifier can be retrieved only if the image the image has been uploaded
89 * @return A string containing the id of the image.
91 String GetImageId() const;
94 * This method retrieves a link to the provider of the image.
96 * @return An object with a link to the provider of the image.
98 LinkObject GetUser() const;
101 * This method sets the URI of the image source.
103 * @param rUrl A constant reference to an object containing the URI of the
106 void SetSource(const String& rUrl);
109 * This method sets the image identifier. Note that a meaningful
110 * identifier can be retrieved only if the image has been uploaded
111 * via the Places API.
113 * @param rImageId A constant reference to a string containing the id of the
116 void SetImageId(const String& rImageId);
119 * This method sets a link to the provider of the image.
121 * @param rUrl A constant reference to an object with a link to the provider
124 void SetUser(const LinkObject& rUrl);
127 class ImageContentImpl;
128 ImageContentImpl* m_pImpl;
130 friend class JsonParser;
133 HERE_MAPS_END_NAMESPACE
135 #endif //IMAGE_CONTENT_H_