/home/martin/workspace/OpenStreetNav/src/displayer/DisplayProvider.h
Go to the documentation of this file.
00001 /*
00002  * DisplayProvider.h
00003  *
00004  *  Created on: Jan 5, 2012
00005  *      Author: martin
00006  */
00007 
00008 #ifndef DISPLAYPROVIDER_H_
00009 #define DISPLAYPROVIDER_H_
00010 
00011 #include <vector>
00012 #include "../geoelements/geoelements.h"
00013 #include "../elements/osmelements.h"
00014 #include "DisplayElement.h"
00015 
00016 namespace display
00017 {
00022 class DisplayProvider
00023 {
00024 public:
00029     virtual std::vector<std::unique_ptr<display::DisplayElement> > const& get_display_elements() = 0;
00036     virtual void set_bounds(geo::Point const& topleft, geo::Point const& bottomright, int zoom) = 0;
00044     virtual std::vector<std::unique_ptr<osm::Element> > get_selected(geo::Point const& topleft, geo::Point const& bottomright, int zoom) = 0;
00049     virtual double center_lat() = 0;
00054     virtual double center_lon() = 0;
00055     virtual ~DisplayProvider();
00056 };
00057 
00058 } /* namespace display */
00059 #endif /* DISPLAYPROVIDER_H_ */
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines