changed attributes of header files
[platform/core/location/maps-plugin-here.git] / inc / engine / routes / GeoRouteReply.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 GEOROUTEREPLY_H
19 #define GEOROUTEREPLY_H
20
21 #include "common/HereMaps_global.h"
22 #include "common/BaseReply.h"
23 #include "routes/GeoRoute.h"
24
25 HERE_MAPS_BEGIN_NAMESPACE
26
27 class GeoRouteQuery;
28
29 /**
30  * This class encapsulates a response to a route calculation request query. 
31  * 
32  * \ingroup routes
33  */
34 class EXPORT_API GeoRouteReply : public BaseReply
35 {
36 public:
37
38     /**
39      * This is the default constructor. 
40      */
41     GeoRouteReply();
42
43     /**
44      * This is the (virtual) destructor.
45      */
46     virtual ~GeoRouteReply();
47
48     /** 
49      * This method retrieves the original route query request.
50      * 
51      * @return An object that encapsulates the original route query request.
52      */
53     GeoRouteQuery GetRequest() const;
54
55     /**
56      * This method retrieves a list of routes calculated in response to the
57      * request (see <code>GetRequest</code>).
58      * 
59      * @return A reference a an object containing the calculated routes.
60      */
61     GeoRouteList& GetRoutes() const;
62
63 private:
64     HERE_MAPS_NO_COPY_NO_ASSIGN(GeoRouteReply);
65     friend class TestGeoRouteReply;
66
67     virtual bool OnDataReceived(const unsigned char* pBuffer, size_t uSize);
68
69     void SetRequest(const GeoRouteQuery& aGeoRouteQuery);
70     void SetRoutes(const GeoRouteList& rRoutes);
71
72 private:
73     class GeoRouteReplyImpl;
74     GeoRouteReplyImpl* m_pImpl;
75
76     friend class GeoRouteReplyImpl;
77     friend class GeoRouteQuery;
78 };
79
80 HERE_MAPS_END_NAMESPACE
81
82 #endif /* GEOROUTEREPLY_H */