2017-07-14 23:56:23 +00:00
|
|
|
#ifndef TILE_HPP
|
|
|
|
#define TILE_HPP
|
|
|
|
|
|
|
|
#include <stdio.h>
|
|
|
|
#include <sqlite3.h>
|
|
|
|
#include <vector>
|
2018-03-13 22:21:21 +00:00
|
|
|
#include <atomic>
|
2017-07-14 23:56:23 +00:00
|
|
|
#include <map>
|
|
|
|
#include "mbtiles.hpp"
|
2018-04-05 20:42:54 +00:00
|
|
|
#include "jsonpull/jsonpull.h"
|
2017-07-14 23:56:23 +00:00
|
|
|
|
2018-02-27 00:47:15 +00:00
|
|
|
enum attribute_op {
|
|
|
|
op_sum,
|
|
|
|
op_product,
|
|
|
|
op_mean,
|
|
|
|
op_concat,
|
|
|
|
op_comma,
|
2018-02-27 22:45:46 +00:00
|
|
|
op_max,
|
|
|
|
op_min,
|
2018-02-27 00:47:15 +00:00
|
|
|
};
|
|
|
|
|
2017-04-07 19:36:34 +00:00
|
|
|
long long write_tile(char **geom, char *metabase, char *stringpool, unsigned *file_bbox, int z, unsigned x, unsigned y, int detail, int min_detail, int basezoom, sqlite3 *outdb, const char *outdir, double droprate, int buffer, const char *fname, FILE **geomfile, int file_minzoom, int file_maxzoom, double todo, char *geomstart, long long along, double gamma, int nlayers);
|
2015-06-18 17:50:57 +00:00
|
|
|
|
2018-04-05 20:42:54 +00:00
|
|
|
int traverse_zooms(int *geomfd, off_t *geom_size, char *metabase, char *stringpool, std::atomic<unsigned> *midx, std::atomic<unsigned> *midy, int &maxzoom, int minzoom, sqlite3 *outdb, const char *outdir, int buffer, const char *fname, const char *tmpdir, double gamma, int full_detail, int low_detail, int min_detail, long long *meta_off, long long *pool_off, unsigned *initial_x, unsigned *initial_y, double simplification, std::vector<std::map<std::string, layermap_entry> > &layermap, const char *prefilter, const char *postfilter, std::map<std::string, attribute_op> const *attribute_accum, struct json_object *filter);
|
2015-06-20 00:29:56 +00:00
|
|
|
|
2016-02-03 23:20:45 +00:00
|
|
|
int manage_gap(unsigned long long index, unsigned long long *previndex, double scale, double gamma, double *gap);
|
2017-07-14 23:56:23 +00:00
|
|
|
|
|
|
|
#endif
|