diff options
Diffstat (limited to 'include/mbgl/renderer/query.hpp')
-rw-r--r-- | include/mbgl/renderer/query.hpp | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/include/mbgl/renderer/query.hpp b/include/mbgl/renderer/query.hpp new file mode 100644 index 0000000000..b9d5f21a44 --- /dev/null +++ b/include/mbgl/renderer/query.hpp @@ -0,0 +1,43 @@ +#pragma once + +#include <mbgl/util/optional.hpp> +#include <mbgl/style/filter.hpp> + +#include <string> +#include <vector> + +namespace mbgl { + +/** + * Options for query rendered features. + */ +class RenderedQueryOptions { +public: + RenderedQueryOptions(optional<std::vector<std::string>> layerIDs_ = optional<std::vector<std::string>>(), + optional<style::Filter> filter_ = optional<style::Filter>()) + : layerIDs(std::move(layerIDs_)), + filter(std::move(filter_)) {} + + /** layerIDs to include in the query */ + optional<std::vector<std::string>> layerIDs; + + optional<style::Filter> filter; +}; + +/** + * Options for query source features + */ +class SourceQueryOptions { +public: + SourceQueryOptions(optional<std::vector<std::string>> sourceLayers_ = optional<std::vector<std::string>> (), + optional<style::Filter> filter_ = optional<style::Filter>()) + : sourceLayers(std::move(sourceLayers_)), + filter(std::move(filter_)) {} + + // Required for VectorSource, ignored for GeoJSONSource + optional<std::vector<std::string>> sourceLayers; + + optional<style::Filter> filter; +}; + +} // namespace mbgl |