js: upgrade to Flatbuffers 2.0 and new code gen

This commit is contained in:
Björn Harrtell 2021-05-13 23:24:52 +02:00
parent 520dd48d10
commit df155789da
25 changed files with 994 additions and 2435 deletions

View File

@ -54,7 +54,7 @@
},
"homepage": "https://github.com/flatgeobuf/flatgeobuf#readme",
"dependencies": {
"flatbuffers": "1.12.0",
"flatbuffers": "2.0.1",
"slice-source": "0.4.1",
"stream-buffers": "3.0.2"
},
@ -67,7 +67,6 @@
"@rollup/plugin-babel": "5.3.0",
"@rollup/plugin-node-resolve": "13.0.0",
"@types/chai": "4.2.18",
"@types/flatbuffers": "1.10.0",
"@types/mocha": "8.2.2",
"@types/node": "15.0.2",
"@types/ol": "6.4.2",

View File

@ -1,2 +1,2 @@
#!/bin/bash
./flatc --ts --gen-all --no-ts-reexport --short-names --size-prefixed -o src/ts src/fbs/*.fbs
./flatc --ts --gen-all --size-prefixed -o src/ts src/fbs/*.fbs

View File

@ -68,10 +68,10 @@ table Header {
name: string; // Dataset name
envelope: [double]; // Bounds
geometry_type: GeometryType; // Geometry type (should be set to Unknown if per feature geometry type)
hasZ: bool = false; // Does geometry have Z dimension?
hasM: bool = false; // Does geometry have M dimension?
hasT: bool = false; // Does geometry have T dimension?
hasTM: bool = false; // Does geometry have TM dimension?
has_z: bool = false; // Does geometry have Z dimension?
has_m: bool = false; // Does geometry have M dimension?
has_t: bool = false; // Does geometry have T dimension?
has_tm: bool = false; // Does geometry have TM dimension?
columns: [Column]; // Attribute columns schema (can be omitted if per feature schema)
features_count: ulong; // Number of features in the dataset (0 = unknown)
index_node_size: ushort = 16; // Index node size (0 = no index)

View File

@ -1,5 +1,5 @@
import { ColumnType } from './header_generated'
import { ColumnType } from './column-type'
export default class ColumnMeta {
constructor(

View File

@ -1,9 +1,9 @@
import { flatbuffers } from 'flatbuffers'
import * as flatbuffers from 'flatbuffers'
import ColumnMeta from './ColumnMeta'
import CrsMeta from './CrsMeta'
import { GeometryType } from './header_generated'
import { Header } from './header_generated';
import { GeometryType } from './geometry-type'
import { Header } from './header'
export default class HeaderMeta {
constructor(
@ -19,7 +19,7 @@ export default class HeaderMeta {
}
static fromByteBuffer(bb: flatbuffers.ByteBuffer) : HeaderMeta {
const header = Header.getRoot(bb)
const header = Header.getRootAsHeader(bb)
const featuresCount = header.featuresCount().toFloat64()
const indexNodeSize = header.indexNodeSize()

View File

@ -1,10 +1,10 @@
import { flatbuffers } from 'flatbuffers';
import * as flatbuffers from 'flatbuffers'
import { Rect, calcTreeSize, DEFAULT_NODE_SIZE, NODE_ITEM_LEN, streamSearch} from './packedrtree';
import { magicbytes, SIZE_PREFIX_LEN } from './constants';
import Logger from './Logger';
import HeaderMeta from './HeaderMeta';
import { Feature } from './feature_generated';
import HeaderMeta from './HeaderMeta';
import { Feature } from './feature';
export class HttpReader {
private headerClient: BufferedHttpRangeClient;
@ -13,9 +13,9 @@ export class HttpReader {
private headerLength: number;
private indexLength: number;
constructor(headerClient: BufferedHttpRangeClient,
header: HeaderMeta,
headerLength: number,
constructor(headerClient: BufferedHttpRangeClient,
header: HeaderMeta,
headerLength: number,
indexLength: number) {
this.headerClient = headerClient;
this.header = header;
@ -145,7 +145,7 @@ export class HttpReader {
bytesAligned.set(bytes, SIZE_PREFIX_LEN);
const bb = new flatbuffers.ByteBuffer(bytesAligned);
bb.setPosition(SIZE_PREFIX_LEN);
return Feature.getRoot(bb)
return Feature.getRootAsFeature(bb)
}
}

20
src/ts/column-type.ts Normal file
View File

@ -0,0 +1,20 @@
// automatically generated by the FlatBuffers compiler, do not modify
export enum ColumnType{
Byte = 0,
UByte = 1,
Bool = 2,
Short = 3,
UShort = 4,
Int = 5,
UInt = 6,
Long = 7,
ULong = 8,
Float = 9,
Double = 10,
String = 11,
Json = 12,
DateTime = 13,
Binary = 14
}

158
src/ts/column.ts Normal file
View File

@ -0,0 +1,158 @@
// automatically generated by the FlatBuffers compiler, do not modify
import * as flatbuffers from 'flatbuffers';
import { ColumnType } from './column-type';
export class Column {
bb: flatbuffers.ByteBuffer|null = null;
bb_pos = 0;
__init(i:number, bb:flatbuffers.ByteBuffer):Column {
this.bb_pos = i;
this.bb = bb;
return this;
}
static getRootAsColumn(bb:flatbuffers.ByteBuffer, obj?:Column):Column {
return (obj || new Column()).__init(bb.readInt32(bb.position()) + bb.position(), bb);
}
static getSizePrefixedRootAsColumn(bb:flatbuffers.ByteBuffer, obj?:Column):Column {
bb.setPosition(bb.position() + flatbuffers.SIZE_PREFIX_LENGTH);
return (obj || new Column()).__init(bb.readInt32(bb.position()) + bb.position(), bb);
}
name():string|null
name(optionalEncoding:flatbuffers.Encoding):string|Uint8Array|null
name(optionalEncoding?:any):string|Uint8Array|null {
const offset = this.bb!.__offset(this.bb_pos, 4);
return offset ? this.bb!.__string(this.bb_pos + offset, optionalEncoding) : null;
}
type():ColumnType {
const offset = this.bb!.__offset(this.bb_pos, 6);
return offset ? this.bb!.readUint8(this.bb_pos + offset) : ColumnType.Byte;
}
title():string|null
title(optionalEncoding:flatbuffers.Encoding):string|Uint8Array|null
title(optionalEncoding?:any):string|Uint8Array|null {
const offset = this.bb!.__offset(this.bb_pos, 8);
return offset ? this.bb!.__string(this.bb_pos + offset, optionalEncoding) : null;
}
description():string|null
description(optionalEncoding:flatbuffers.Encoding):string|Uint8Array|null
description(optionalEncoding?:any):string|Uint8Array|null {
const offset = this.bb!.__offset(this.bb_pos, 10);
return offset ? this.bb!.__string(this.bb_pos + offset, optionalEncoding) : null;
}
width():number {
const offset = this.bb!.__offset(this.bb_pos, 12);
return offset ? this.bb!.readInt32(this.bb_pos + offset) : -1;
}
precision():number {
const offset = this.bb!.__offset(this.bb_pos, 14);
return offset ? this.bb!.readInt32(this.bb_pos + offset) : -1;
}
scale():number {
const offset = this.bb!.__offset(this.bb_pos, 16);
return offset ? this.bb!.readInt32(this.bb_pos + offset) : -1;
}
nullable():boolean {
const offset = this.bb!.__offset(this.bb_pos, 18);
return offset ? !!this.bb!.readInt8(this.bb_pos + offset) : true;
}
unique():boolean {
const offset = this.bb!.__offset(this.bb_pos, 20);
return offset ? !!this.bb!.readInt8(this.bb_pos + offset) : false;
}
primaryKey():boolean {
const offset = this.bb!.__offset(this.bb_pos, 22);
return offset ? !!this.bb!.readInt8(this.bb_pos + offset) : false;
}
metadata():string|null
metadata(optionalEncoding:flatbuffers.Encoding):string|Uint8Array|null
metadata(optionalEncoding?:any):string|Uint8Array|null {
const offset = this.bb!.__offset(this.bb_pos, 24);
return offset ? this.bb!.__string(this.bb_pos + offset, optionalEncoding) : null;
}
static startColumn(builder:flatbuffers.Builder) {
builder.startObject(11);
}
static addName(builder:flatbuffers.Builder, nameOffset:flatbuffers.Offset) {
builder.addFieldOffset(0, nameOffset, 0);
}
static addType(builder:flatbuffers.Builder, type:ColumnType) {
builder.addFieldInt8(1, type, ColumnType.Byte);
}
static addTitle(builder:flatbuffers.Builder, titleOffset:flatbuffers.Offset) {
builder.addFieldOffset(2, titleOffset, 0);
}
static addDescription(builder:flatbuffers.Builder, descriptionOffset:flatbuffers.Offset) {
builder.addFieldOffset(3, descriptionOffset, 0);
}
static addWidth(builder:flatbuffers.Builder, width:number) {
builder.addFieldInt32(4, width, -1);
}
static addPrecision(builder:flatbuffers.Builder, precision:number) {
builder.addFieldInt32(5, precision, -1);
}
static addScale(builder:flatbuffers.Builder, scale:number) {
builder.addFieldInt32(6, scale, -1);
}
static addNullable(builder:flatbuffers.Builder, nullable:boolean) {
builder.addFieldInt8(7, +nullable, +true);
}
static addUnique(builder:flatbuffers.Builder, unique:boolean) {
builder.addFieldInt8(8, +unique, +false);
}
static addPrimaryKey(builder:flatbuffers.Builder, primaryKey:boolean) {
builder.addFieldInt8(9, +primaryKey, +false);
}
static addMetadata(builder:flatbuffers.Builder, metadataOffset:flatbuffers.Offset) {
builder.addFieldOffset(10, metadataOffset, 0);
}
static endColumn(builder:flatbuffers.Builder):flatbuffers.Offset {
const offset = builder.endObject();
builder.requiredField(offset, 4) // name
return offset;
}
static createColumn(builder:flatbuffers.Builder, nameOffset:flatbuffers.Offset, type:ColumnType, titleOffset:flatbuffers.Offset, descriptionOffset:flatbuffers.Offset, width:number, precision:number, scale:number, nullable:boolean, unique:boolean, primaryKey:boolean, metadataOffset:flatbuffers.Offset):flatbuffers.Offset {
Column.startColumn(builder);
Column.addName(builder, nameOffset);
Column.addType(builder, type);
Column.addTitle(builder, titleOffset);
Column.addDescription(builder, descriptionOffset);
Column.addWidth(builder, width);
Column.addPrecision(builder, precision);
Column.addScale(builder, scale);
Column.addNullable(builder, nullable);
Column.addUnique(builder, unique);
Column.addPrimaryKey(builder, primaryKey);
Column.addMetadata(builder, metadataOffset);
return Column.endColumn(builder);
}
}

106
src/ts/crs.ts Normal file
View File

@ -0,0 +1,106 @@
// automatically generated by the FlatBuffers compiler, do not modify
import * as flatbuffers from 'flatbuffers';
export class Crs {
bb: flatbuffers.ByteBuffer|null = null;
bb_pos = 0;
__init(i:number, bb:flatbuffers.ByteBuffer):Crs {
this.bb_pos = i;
this.bb = bb;
return this;
}
static getRootAsCrs(bb:flatbuffers.ByteBuffer, obj?:Crs):Crs {
return (obj || new Crs()).__init(bb.readInt32(bb.position()) + bb.position(), bb);
}
static getSizePrefixedRootAsCrs(bb:flatbuffers.ByteBuffer, obj?:Crs):Crs {
bb.setPosition(bb.position() + flatbuffers.SIZE_PREFIX_LENGTH);
return (obj || new Crs()).__init(bb.readInt32(bb.position()) + bb.position(), bb);
}
org():string|null
org(optionalEncoding:flatbuffers.Encoding):string|Uint8Array|null
org(optionalEncoding?:any):string|Uint8Array|null {
const offset = this.bb!.__offset(this.bb_pos, 4);
return offset ? this.bb!.__string(this.bb_pos + offset, optionalEncoding) : null;
}
code():number {
const offset = this.bb!.__offset(this.bb_pos, 6);
return offset ? this.bb!.readInt32(this.bb_pos + offset) : 0;
}
name():string|null
name(optionalEncoding:flatbuffers.Encoding):string|Uint8Array|null
name(optionalEncoding?:any):string|Uint8Array|null {
const offset = this.bb!.__offset(this.bb_pos, 8);
return offset ? this.bb!.__string(this.bb_pos + offset, optionalEncoding) : null;
}
description():string|null
description(optionalEncoding:flatbuffers.Encoding):string|Uint8Array|null
description(optionalEncoding?:any):string|Uint8Array|null {
const offset = this.bb!.__offset(this.bb_pos, 10);
return offset ? this.bb!.__string(this.bb_pos + offset, optionalEncoding) : null;
}
wkt():string|null
wkt(optionalEncoding:flatbuffers.Encoding):string|Uint8Array|null
wkt(optionalEncoding?:any):string|Uint8Array|null {
const offset = this.bb!.__offset(this.bb_pos, 12);
return offset ? this.bb!.__string(this.bb_pos + offset, optionalEncoding) : null;
}
codeString():string|null
codeString(optionalEncoding:flatbuffers.Encoding):string|Uint8Array|null
codeString(optionalEncoding?:any):string|Uint8Array|null {
const offset = this.bb!.__offset(this.bb_pos, 14);
return offset ? this.bb!.__string(this.bb_pos + offset, optionalEncoding) : null;
}
static startCrs(builder:flatbuffers.Builder) {
builder.startObject(6);
}
static addOrg(builder:flatbuffers.Builder, orgOffset:flatbuffers.Offset) {
builder.addFieldOffset(0, orgOffset, 0);
}
static addCode(builder:flatbuffers.Builder, code:number) {
builder.addFieldInt32(1, code, 0);
}
static addName(builder:flatbuffers.Builder, nameOffset:flatbuffers.Offset) {
builder.addFieldOffset(2, nameOffset, 0);
}
static addDescription(builder:flatbuffers.Builder, descriptionOffset:flatbuffers.Offset) {
builder.addFieldOffset(3, descriptionOffset, 0);
}
static addWkt(builder:flatbuffers.Builder, wktOffset:flatbuffers.Offset) {
builder.addFieldOffset(4, wktOffset, 0);
}
static addCodeString(builder:flatbuffers.Builder, codeStringOffset:flatbuffers.Offset) {
builder.addFieldOffset(5, codeStringOffset, 0);
}
static endCrs(builder:flatbuffers.Builder):flatbuffers.Offset {
const offset = builder.endObject();
return offset;
}
static createCrs(builder:flatbuffers.Builder, orgOffset:flatbuffers.Offset, code:number, nameOffset:flatbuffers.Offset, descriptionOffset:flatbuffers.Offset, wktOffset:flatbuffers.Offset, codeStringOffset:flatbuffers.Offset):flatbuffers.Offset {
Crs.startCrs(builder);
Crs.addOrg(builder, orgOffset);
Crs.addCode(builder, code);
Crs.addName(builder, nameOffset);
Crs.addDescription(builder, descriptionOffset);
Crs.addWkt(builder, wktOffset);
Crs.addCodeString(builder, codeStringOffset);
return Crs.endCrs(builder);
}
}

117
src/ts/feature.ts Normal file
View File

@ -0,0 +1,117 @@
// automatically generated by the FlatBuffers compiler, do not modify
import * as flatbuffers from 'flatbuffers';
import { Column } from './column';
import { Geometry } from './geometry';
export class Feature {
bb: flatbuffers.ByteBuffer|null = null;
bb_pos = 0;
__init(i:number, bb:flatbuffers.ByteBuffer):Feature {
this.bb_pos = i;
this.bb = bb;
return this;
}
static getRootAsFeature(bb:flatbuffers.ByteBuffer, obj?:Feature):Feature {
return (obj || new Feature()).__init(bb.readInt32(bb.position()) + bb.position(), bb);
}
static getSizePrefixedRootAsFeature(bb:flatbuffers.ByteBuffer, obj?:Feature):Feature {
bb.setPosition(bb.position() + flatbuffers.SIZE_PREFIX_LENGTH);
return (obj || new Feature()).__init(bb.readInt32(bb.position()) + bb.position(), bb);
}
geometry(obj?:Geometry):Geometry|null {
const offset = this.bb!.__offset(this.bb_pos, 4);
return offset ? (obj || new Geometry()).__init(this.bb!.__indirect(this.bb_pos + offset), this.bb!) : null;
}
properties(index: number):number|null {
const offset = this.bb!.__offset(this.bb_pos, 6);
return offset ? this.bb!.readUint8(this.bb!.__vector(this.bb_pos + offset) + index) : 0;
}
propertiesLength():number {
const offset = this.bb!.__offset(this.bb_pos, 6);
return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
}
propertiesArray():Uint8Array|null {
const offset = this.bb!.__offset(this.bb_pos, 6);
return offset ? new Uint8Array(this.bb!.bytes().buffer, this.bb!.bytes().byteOffset + this.bb!.__vector(this.bb_pos + offset), this.bb!.__vector_len(this.bb_pos + offset)) : null;
}
columns(index: number, obj?:Column):Column|null {
const offset = this.bb!.__offset(this.bb_pos, 8);
return offset ? (obj || new Column()).__init(this.bb!.__indirect(this.bb!.__vector(this.bb_pos + offset) + index * 4), this.bb!) : null;
}
columnsLength():number {
const offset = this.bb!.__offset(this.bb_pos, 8);
return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
}
static startFeature(builder:flatbuffers.Builder) {
builder.startObject(3);
}
static addGeometry(builder:flatbuffers.Builder, geometryOffset:flatbuffers.Offset) {
builder.addFieldOffset(0, geometryOffset, 0);
}
static addProperties(builder:flatbuffers.Builder, propertiesOffset:flatbuffers.Offset) {
builder.addFieldOffset(1, propertiesOffset, 0);
}
static createPropertiesVector(builder:flatbuffers.Builder, data:number[]|Uint8Array):flatbuffers.Offset {
builder.startVector(1, data.length, 1);
for (let i = data.length - 1; i >= 0; i--) {
builder.addInt8(data[i]!);
}
return builder.endVector();
}
static startPropertiesVector(builder:flatbuffers.Builder, numElems:number) {
builder.startVector(1, numElems, 1);
}
static addColumns(builder:flatbuffers.Builder, columnsOffset:flatbuffers.Offset) {
builder.addFieldOffset(2, columnsOffset, 0);
}
static createColumnsVector(builder:flatbuffers.Builder, data:flatbuffers.Offset[]):flatbuffers.Offset {
builder.startVector(4, data.length, 4);
for (let i = data.length - 1; i >= 0; i--) {
builder.addOffset(data[i]!);
}
return builder.endVector();
}
static startColumnsVector(builder:flatbuffers.Builder, numElems:number) {
builder.startVector(4, numElems, 4);
}
static endFeature(builder:flatbuffers.Builder):flatbuffers.Offset {
const offset = builder.endObject();
return offset;
}
static finishFeatureBuffer(builder:flatbuffers.Builder, offset:flatbuffers.Offset) {
builder.finish(offset);
}
static finishSizePrefixedFeatureBuffer(builder:flatbuffers.Builder, offset:flatbuffers.Offset) {
builder.finish(offset, undefined, true);
}
static createFeature(builder:flatbuffers.Builder, geometryOffset:flatbuffers.Offset, propertiesOffset:flatbuffers.Offset, columnsOffset:flatbuffers.Offset):flatbuffers.Offset {
Feature.startFeature(builder);
Feature.addGeometry(builder, geometryOffset);
Feature.addProperties(builder, propertiesOffset);
Feature.addColumns(builder, columnsOffset);
return Feature.endFeature(builder);
}
}

File diff suppressed because it is too large Load Diff

View File

@ -28,7 +28,5 @@ export {
serialize
} from './generic/featurecollection'
export {
GeometryType,
ColumnType
} from './header_generated'
export { GeometryType } from './geometry-type'
export { ColumnType } from './column-type'

View File

@ -1,8 +1,8 @@
import { flatbuffers } from 'flatbuffers'
import * as flatbuffers from 'flatbuffers'
import ColumnMeta from '../ColumnMeta'
import { ColumnType } from '../header_generated'
import { Feature } from '../feature_generated'
import { ColumnType } from '../column-type'
import { Feature } from '../feature'
import HeaderMeta from '../HeaderMeta'
import { buildGeometry, ISimpleGeometry, ICreateGeometry, IParsedGeometry } from './geometry'
@ -120,11 +120,11 @@ export function buildFeature(geometry: IParsedGeometry, properties: IProperties,
propertiesOffset = Feature.createPropertiesVector(builder, bytes.slice(0, offset))
const geometryOffset = buildGeometry(builder, geometry)
Feature.start(builder)
Feature.startFeature(builder)
Feature.addGeometry(builder, geometryOffset)
if (propertiesOffset)
Feature.addProperties(builder, propertiesOffset)
const featureOffset = Feature.end(builder)
const featureOffset = Feature.endFeature(builder)
builder.finishSizePrefixed(featureOffset)
return builder.asUint8Array() as Uint8Array
}

View File

@ -1,10 +1,14 @@
import { flatbuffers } from 'flatbuffers'
import * as flatbuffers from 'flatbuffers'
import slice from 'slice-source'
import ColumnMeta from '../ColumnMeta'
import CrsMeta from '../CrsMeta'
import { Header, Column, ColumnType } from '../header_generated'
import { Feature } from '../feature_generated'
import { Header } from '../header'
import { Column } from '../column'
import { ColumnType } from '../column-type'
import { Feature } from '../feature'
import HeaderMeta from '../HeaderMeta'
import { buildFeature, IFeature } from './feature'
@ -67,7 +71,7 @@ export function deserialize(bytes: Uint8Array, fromFeature: FromFeatureFn, heade
while (offset < bb.capacity()) {
const featureLength = bb.readUint32(offset)
bb.setPosition(offset + SIZE_PREFIX_LEN)
const feature = Feature.getRoot(bb)
const feature = Feature.getRootAsFeature(bb)
features.push(fromFeature(feature, headerMeta))
offset += SIZE_PREFIX_LEN + featureLength
}
@ -130,16 +134,16 @@ async function readFeature(read: ReadFn, headerMeta: HeaderMeta, fromFeature: Fr
bytesAligned.set(bytes, 4)
bb = new flatbuffers.ByteBuffer(bytesAligned)
bb.setPosition(SIZE_PREFIX_LEN)
const feature = Feature.getRoot(bb)
const feature = Feature.getRootAsFeature(bb)
return fromFeature(feature, headerMeta)
}
function buildColumn(builder: flatbuffers.Builder, column: ColumnMeta): number {
const nameOffset = builder.createString(column.name)
Column.start(builder)
Column.startColumn(builder)
Column.addName(builder, nameOffset)
Column.addType(builder, column.type)
return Column.end(builder)
return Column.endColumn(builder)
}
export function buildHeader(header: HeaderMeta): Uint8Array {
@ -152,14 +156,14 @@ export function buildHeader(header: HeaderMeta): Uint8Array {
const nameOffset = builder.createString('L1')
Header.start(builder)
Header.startHeader(builder)
Header.addFeaturesCount(builder, new flatbuffers.Long(header.featuresCount, 0))
Header.addGeometryType(builder, header.geometryType)
Header.addIndexNodeSize(builder, 0)
if (columnOffsets)
Header.addColumns(builder, columnOffsets)
Header.addName(builder, nameOffset)
const offset = Header.end(builder)
const offset = Header.endHeader(builder)
builder.finishSizePrefixed(offset)
return builder.asUint8Array() as Uint8Array
}

View File

@ -1,6 +1,6 @@
import { flatbuffers } from 'flatbuffers'
import { GeometryType } from '../header_generated'
import { Geometry } from '../feature_generated'
import * as flatbuffers from 'flatbuffers'
import { GeometryType } from '../geometry-type'
import { Geometry } from '../geometry'
export interface IParsedGeometry {
xy: number[],
@ -38,9 +38,9 @@ export function buildGeometry(builder: flatbuffers.Builder, parsedGeometry: IPar
if (parts) {
const partOffsets = parts.map(part => buildGeometry(builder, part))
const partsOffset = Geometry.createPartsVector(builder, partOffsets)
Geometry.start(builder)
Geometry.startGeometry(builder)
Geometry.addParts(builder, partsOffset)
return Geometry.end(builder)
return Geometry.endGeometry(builder)
}
const xyOffset = Geometry.createXyVector(builder, xy)
@ -52,14 +52,14 @@ export function buildGeometry(builder: flatbuffers.Builder, parsedGeometry: IPar
if (ends)
endsOffset = Geometry.createEndsVector(builder, ends)
Geometry.start(builder)
Geometry.startGeometry(builder)
if (endsOffset)
Geometry.addEnds(builder, endsOffset)
Geometry.addXy(builder, xyOffset)
if (zOffset)
Geometry.addZ(builder, zOffset)
Geometry.addType(builder, type)
return Geometry.end(builder)
return Geometry.endGeometry(builder)
}
export function flat(a: any[], xy: number[], z: number[]): number[] | undefined {

View File

@ -1,4 +1,5 @@
import { Feature, Geometry } from '../feature_generated'
import { Feature } from '../feature'
import { Geometry } from '../geometry'
import HeaderMeta from '../HeaderMeta'
import { fromGeometry, IGeoJsonGeometry } from './geometry'
import { parseProperties, IFeature } from '../generic/feature'

View File

@ -1,5 +1,5 @@
import ColumnMeta from '../ColumnMeta'
import { ColumnType } from '../header_generated'
import { ColumnType } from '../column-type'
import HeaderMeta from '../HeaderMeta'
import { fromFeature, IGeoJsonFeature } from './feature'

View File

@ -1,5 +1,5 @@
import { GeometryType } from '../header_generated'
import { Geometry } from '../feature_generated'
import { GeometryType } from '../geometry-type'
import { Geometry } from '../geometry'
import { IParsedGeometry, flat, pairFlatCoordinates, toGeometryType } from '../generic/geometry'

23
src/ts/geometry-type.ts Normal file
View File

@ -0,0 +1,23 @@
// automatically generated by the FlatBuffers compiler, do not modify
export enum GeometryType{
Unknown = 0,
Point = 1,
LineString = 2,
Polygon = 3,
MultiPoint = 4,
MultiLineString = 5,
MultiPolygon = 6,
GeometryCollection = 7,
CircularString = 8,
CompoundCurve = 9,
CurvePolygon = 10,
MultiCurve = 11,
MultiSurface = 12,
Curve = 13,
Surface = 14,
PolyhedralSurface = 15,
TIN = 16,
Triangle = 17
}

288
src/ts/geometry.ts Normal file
View File

@ -0,0 +1,288 @@
// automatically generated by the FlatBuffers compiler, do not modify
import * as flatbuffers from 'flatbuffers';
import { GeometryType } from './geometry-type';
export class Geometry {
bb: flatbuffers.ByteBuffer|null = null;
bb_pos = 0;
__init(i:number, bb:flatbuffers.ByteBuffer):Geometry {
this.bb_pos = i;
this.bb = bb;
return this;
}
static getRootAsGeometry(bb:flatbuffers.ByteBuffer, obj?:Geometry):Geometry {
return (obj || new Geometry()).__init(bb.readInt32(bb.position()) + bb.position(), bb);
}
static getSizePrefixedRootAsGeometry(bb:flatbuffers.ByteBuffer, obj?:Geometry):Geometry {
bb.setPosition(bb.position() + flatbuffers.SIZE_PREFIX_LENGTH);
return (obj || new Geometry()).__init(bb.readInt32(bb.position()) + bb.position(), bb);
}
ends(index: number):number|null {
const offset = this.bb!.__offset(this.bb_pos, 4);
return offset ? this.bb!.readUint32(this.bb!.__vector(this.bb_pos + offset) + index * 4) : 0;
}
endsLength():number {
const offset = this.bb!.__offset(this.bb_pos, 4);
return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
}
endsArray():Uint32Array|null {
const offset = this.bb!.__offset(this.bb_pos, 4);
return offset ? new Uint32Array(this.bb!.bytes().buffer, this.bb!.bytes().byteOffset + this.bb!.__vector(this.bb_pos + offset), this.bb!.__vector_len(this.bb_pos + offset)) : null;
}
xy(index: number):number|null {
const offset = this.bb!.__offset(this.bb_pos, 6);
return offset ? this.bb!.readFloat64(this.bb!.__vector(this.bb_pos + offset) + index * 8) : 0;
}
xyLength():number {
const offset = this.bb!.__offset(this.bb_pos, 6);
return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
}
xyArray():Float64Array|null {
const offset = this.bb!.__offset(this.bb_pos, 6);
return offset ? new Float64Array(this.bb!.bytes().buffer, this.bb!.bytes().byteOffset + this.bb!.__vector(this.bb_pos + offset), this.bb!.__vector_len(this.bb_pos + offset)) : null;
}
z(index: number):number|null {
const offset = this.bb!.__offset(this.bb_pos, 8);
return offset ? this.bb!.readFloat64(this.bb!.__vector(this.bb_pos + offset) + index * 8) : 0;
}
zLength():number {
const offset = this.bb!.__offset(this.bb_pos, 8);
return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
}
zArray():Float64Array|null {
const offset = this.bb!.__offset(this.bb_pos, 8);
return offset ? new Float64Array(this.bb!.bytes().buffer, this.bb!.bytes().byteOffset + this.bb!.__vector(this.bb_pos + offset), this.bb!.__vector_len(this.bb_pos + offset)) : null;
}
m(index: number):number|null {
const offset = this.bb!.__offset(this.bb_pos, 10);
return offset ? this.bb!.readFloat64(this.bb!.__vector(this.bb_pos + offset) + index * 8) : 0;
}
mLength():number {
const offset = this.bb!.__offset(this.bb_pos, 10);
return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
}
mArray():Float64Array|null {
const offset = this.bb!.__offset(this.bb_pos, 10);
return offset ? new Float64Array(this.bb!.bytes().buffer, this.bb!.bytes().byteOffset + this.bb!.__vector(this.bb_pos + offset), this.bb!.__vector_len(this.bb_pos + offset)) : null;
}
t(index: number):number|null {
const offset = this.bb!.__offset(this.bb_pos, 12);
return offset ? this.bb!.readFloat64(this.bb!.__vector(this.bb_pos + offset) + index * 8) : 0;
}
tLength():number {
const offset = this.bb!.__offset(this.bb_pos, 12);
return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
}
tArray():Float64Array|null {
const offset = this.bb!.__offset(this.bb_pos, 12);
return offset ? new Float64Array(this.bb!.bytes().buffer, this.bb!.bytes().byteOffset + this.bb!.__vector(this.bb_pos + offset), this.bb!.__vector_len(this.bb_pos + offset)) : null;
}
tm(index: number):flatbuffers.Long|null {
const offset = this.bb!.__offset(this.bb_pos, 14);
return offset ? this.bb!.readUint64(this.bb!.__vector(this.bb_pos + offset) + index * 8) : this.bb!.createLong(0, 0);
}
tmLength():number {
const offset = this.bb!.__offset(this.bb_pos, 14);
return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
}
type():GeometryType {
const offset = this.bb!.__offset(this.bb_pos, 16);
return offset ? this.bb!.readUint8(this.bb_pos + offset) : GeometryType.Unknown;
}
parts(index: number, obj?:Geometry):Geometry|null {
const offset = this.bb!.__offset(this.bb_pos, 18);
return offset ? (obj || new Geometry()).__init(this.bb!.__indirect(this.bb!.__vector(this.bb_pos + offset) + index * 4), this.bb!) : null;
}
partsLength():number {
const offset = this.bb!.__offset(this.bb_pos, 18);
return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
}
static startGeometry(builder:flatbuffers.Builder) {
builder.startObject(8);
}
static addEnds(builder:flatbuffers.Builder, endsOffset:flatbuffers.Offset) {
builder.addFieldOffset(0, endsOffset, 0);
}
static createEndsVector(builder:flatbuffers.Builder, data:number[]|Uint32Array):flatbuffers.Offset;
/**
* @deprecated This Uint8Array overload will be removed in the future.
*/
static createEndsVector(builder:flatbuffers.Builder, data:number[]|Uint8Array):flatbuffers.Offset;
static createEndsVector(builder:flatbuffers.Builder, data:number[]|Uint32Array|Uint8Array):flatbuffers.Offset {
builder.startVector(4, data.length, 4);
for (let i = data.length - 1; i >= 0; i--) {
builder.addInt32(data[i]!);
}
return builder.endVector();
}
static startEndsVector(builder:flatbuffers.Builder, numElems:number) {
builder.startVector(4, numElems, 4);
}
static addXy(builder:flatbuffers.Builder, xyOffset:flatbuffers.Offset) {
builder.addFieldOffset(1, xyOffset, 0);
}
static createXyVector(builder:flatbuffers.Builder, data:number[]|Float64Array):flatbuffers.Offset;
/**
* @deprecated This Uint8Array overload will be removed in the future.
*/
static createXyVector(builder:flatbuffers.Builder, data:number[]|Uint8Array):flatbuffers.Offset;
static createXyVector(builder:flatbuffers.Builder, data:number[]|Float64Array|Uint8Array):flatbuffers.Offset {
builder.startVector(8, data.length, 8);
for (let i = data.length - 1; i >= 0; i--) {
builder.addFloat64(data[i]!);
}
return builder.endVector();
}
static startXyVector(builder:flatbuffers.Builder, numElems:number) {
builder.startVector(8, numElems, 8);
}
static addZ(builder:flatbuffers.Builder, zOffset:flatbuffers.Offset) {
builder.addFieldOffset(2, zOffset, 0);
}
static createZVector(builder:flatbuffers.Builder, data:number[]|Float64Array):flatbuffers.Offset;
/**
* @deprecated This Uint8Array overload will be removed in the future.
*/
static createZVector(builder:flatbuffers.Builder, data:number[]|Uint8Array):flatbuffers.Offset;
static createZVector(builder:flatbuffers.Builder, data:number[]|Float64Array|Uint8Array):flatbuffers.Offset {
builder.startVector(8, data.length, 8);
for (let i = data.length - 1; i >= 0; i--) {
builder.addFloat64(data[i]!);
}
return builder.endVector();
}
static startZVector(builder:flatbuffers.Builder, numElems:number) {
builder.startVector(8, numElems, 8);
}
static addM(builder:flatbuffers.Builder, mOffset:flatbuffers.Offset) {
builder.addFieldOffset(3, mOffset, 0);
}
static createMVector(builder:flatbuffers.Builder, data:number[]|Float64Array):flatbuffers.Offset;
/**
* @deprecated This Uint8Array overload will be removed in the future.
*/
static createMVector(builder:flatbuffers.Builder, data:number[]|Uint8Array):flatbuffers.Offset;
static createMVector(builder:flatbuffers.Builder, data:number[]|Float64Array|Uint8Array):flatbuffers.Offset {
builder.startVector(8, data.length, 8);
for (let i = data.length - 1; i >= 0; i--) {
builder.addFloat64(data[i]!);
}
return builder.endVector();
}
static startMVector(builder:flatbuffers.Builder, numElems:number) {
builder.startVector(8, numElems, 8);
}
static addT(builder:flatbuffers.Builder, tOffset:flatbuffers.Offset) {
builder.addFieldOffset(4, tOffset, 0);
}
static createTVector(builder:flatbuffers.Builder, data:number[]|Float64Array):flatbuffers.Offset;
/**
* @deprecated This Uint8Array overload will be removed in the future.
*/
static createTVector(builder:flatbuffers.Builder, data:number[]|Uint8Array):flatbuffers.Offset;
static createTVector(builder:flatbuffers.Builder, data:number[]|Float64Array|Uint8Array):flatbuffers.Offset {
builder.startVector(8, data.length, 8);
for (let i = data.length - 1; i >= 0; i--) {
builder.addFloat64(data[i]!);
}
return builder.endVector();
}
static startTVector(builder:flatbuffers.Builder, numElems:number) {
builder.startVector(8, numElems, 8);
}
static addTm(builder:flatbuffers.Builder, tmOffset:flatbuffers.Offset) {
builder.addFieldOffset(5, tmOffset, 0);
}
static createTmVector(builder:flatbuffers.Builder, data:flatbuffers.Long[]):flatbuffers.Offset {
builder.startVector(8, data.length, 8);
for (let i = data.length - 1; i >= 0; i--) {
builder.addInt64(data[i]!);
}
return builder.endVector();
}
static startTmVector(builder:flatbuffers.Builder, numElems:number) {
builder.startVector(8, numElems, 8);
}
static addType(builder:flatbuffers.Builder, type:GeometryType) {
builder.addFieldInt8(6, type, GeometryType.Unknown);
}
static addParts(builder:flatbuffers.Builder, partsOffset:flatbuffers.Offset) {
builder.addFieldOffset(7, partsOffset, 0);
}
static createPartsVector(builder:flatbuffers.Builder, data:flatbuffers.Offset[]):flatbuffers.Offset {
builder.startVector(4, data.length, 4);
for (let i = data.length - 1; i >= 0; i--) {
builder.addOffset(data[i]!);
}
return builder.endVector();
}
static startPartsVector(builder:flatbuffers.Builder, numElems:number) {
builder.startVector(4, numElems, 4);
}
static endGeometry(builder:flatbuffers.Builder):flatbuffers.Offset {
const offset = builder.endObject();
return offset;
}
static createGeometry(builder:flatbuffers.Builder, endsOffset:flatbuffers.Offset, xyOffset:flatbuffers.Offset, zOffset:flatbuffers.Offset, mOffset:flatbuffers.Offset, tOffset:flatbuffers.Offset, tmOffset:flatbuffers.Offset, type:GeometryType, partsOffset:flatbuffers.Offset):flatbuffers.Offset {
Geometry.startGeometry(builder);
Geometry.addEnds(builder, endsOffset);
Geometry.addXy(builder, xyOffset);
Geometry.addZ(builder, zOffset);
Geometry.addM(builder, mOffset);
Geometry.addT(builder, tOffset);
Geometry.addTm(builder, tmOffset);
Geometry.addType(builder, type);
Geometry.addParts(builder, partsOffset);
return Geometry.endGeometry(builder);
}
}

223
src/ts/header.ts Normal file
View File

@ -0,0 +1,223 @@
// automatically generated by the FlatBuffers compiler, do not modify
import * as flatbuffers from 'flatbuffers';
import { Column } from './column';
import { Crs } from './crs';
import { GeometryType } from './geometry-type';
export class Header {
bb: flatbuffers.ByteBuffer|null = null;
bb_pos = 0;
__init(i:number, bb:flatbuffers.ByteBuffer):Header {
this.bb_pos = i;
this.bb = bb;
return this;
}
static getRootAsHeader(bb:flatbuffers.ByteBuffer, obj?:Header):Header {
return (obj || new Header()).__init(bb.readInt32(bb.position()) + bb.position(), bb);
}
static getSizePrefixedRootAsHeader(bb:flatbuffers.ByteBuffer, obj?:Header):Header {
bb.setPosition(bb.position() + flatbuffers.SIZE_PREFIX_LENGTH);
return (obj || new Header()).__init(bb.readInt32(bb.position()) + bb.position(), bb);
}
name():string|null
name(optionalEncoding:flatbuffers.Encoding):string|Uint8Array|null
name(optionalEncoding?:any):string|Uint8Array|null {
const offset = this.bb!.__offset(this.bb_pos, 4);
return offset ? this.bb!.__string(this.bb_pos + offset, optionalEncoding) : null;
}
envelope(index: number):number|null {
const offset = this.bb!.__offset(this.bb_pos, 6);
return offset ? this.bb!.readFloat64(this.bb!.__vector(this.bb_pos + offset) + index * 8) : 0;
}
envelopeLength():number {
const offset = this.bb!.__offset(this.bb_pos, 6);
return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
}
envelopeArray():Float64Array|null {
const offset = this.bb!.__offset(this.bb_pos, 6);
return offset ? new Float64Array(this.bb!.bytes().buffer, this.bb!.bytes().byteOffset + this.bb!.__vector(this.bb_pos + offset), this.bb!.__vector_len(this.bb_pos + offset)) : null;
}
geometryType():GeometryType {
const offset = this.bb!.__offset(this.bb_pos, 8);
return offset ? this.bb!.readUint8(this.bb_pos + offset) : GeometryType.Unknown;
}
hasZ():boolean {
const offset = this.bb!.__offset(this.bb_pos, 10);
return offset ? !!this.bb!.readInt8(this.bb_pos + offset) : false;
}
hasM():boolean {
const offset = this.bb!.__offset(this.bb_pos, 12);
return offset ? !!this.bb!.readInt8(this.bb_pos + offset) : false;
}
hasT():boolean {
const offset = this.bb!.__offset(this.bb_pos, 14);
return offset ? !!this.bb!.readInt8(this.bb_pos + offset) : false;
}
hasTm():boolean {
const offset = this.bb!.__offset(this.bb_pos, 16);
return offset ? !!this.bb!.readInt8(this.bb_pos + offset) : false;
}
columns(index: number, obj?:Column):Column|null {
const offset = this.bb!.__offset(this.bb_pos, 18);
return offset ? (obj || new Column()).__init(this.bb!.__indirect(this.bb!.__vector(this.bb_pos + offset) + index * 4), this.bb!) : null;
}
columnsLength():number {
const offset = this.bb!.__offset(this.bb_pos, 18);
return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
}
featuresCount():flatbuffers.Long {
const offset = this.bb!.__offset(this.bb_pos, 20);
return offset ? this.bb!.readUint64(this.bb_pos + offset) : this.bb!.createLong(0, 0);
}
indexNodeSize():number {
const offset = this.bb!.__offset(this.bb_pos, 22);
return offset ? this.bb!.readUint16(this.bb_pos + offset) : 16;
}
crs(obj?:Crs):Crs|null {
const offset = this.bb!.__offset(this.bb_pos, 24);
return offset ? (obj || new Crs()).__init(this.bb!.__indirect(this.bb_pos + offset), this.bb!) : null;
}
title():string|null
title(optionalEncoding:flatbuffers.Encoding):string|Uint8Array|null
title(optionalEncoding?:any):string|Uint8Array|null {
const offset = this.bb!.__offset(this.bb_pos, 26);
return offset ? this.bb!.__string(this.bb_pos + offset, optionalEncoding) : null;
}
description():string|null
description(optionalEncoding:flatbuffers.Encoding):string|Uint8Array|null
description(optionalEncoding?:any):string|Uint8Array|null {
const offset = this.bb!.__offset(this.bb_pos, 28);
return offset ? this.bb!.__string(this.bb_pos + offset, optionalEncoding) : null;
}
metadata():string|null
metadata(optionalEncoding:flatbuffers.Encoding):string|Uint8Array|null
metadata(optionalEncoding?:any):string|Uint8Array|null {
const offset = this.bb!.__offset(this.bb_pos, 30);
return offset ? this.bb!.__string(this.bb_pos + offset, optionalEncoding) : null;
}
static startHeader(builder:flatbuffers.Builder) {
builder.startObject(14);
}
static addName(builder:flatbuffers.Builder, nameOffset:flatbuffers.Offset) {
builder.addFieldOffset(0, nameOffset, 0);
}
static addEnvelope(builder:flatbuffers.Builder, envelopeOffset:flatbuffers.Offset) {
builder.addFieldOffset(1, envelopeOffset, 0);
}
static createEnvelopeVector(builder:flatbuffers.Builder, data:number[]|Float64Array):flatbuffers.Offset;
/**
* @deprecated This Uint8Array overload will be removed in the future.
*/
static createEnvelopeVector(builder:flatbuffers.Builder, data:number[]|Uint8Array):flatbuffers.Offset;
static createEnvelopeVector(builder:flatbuffers.Builder, data:number[]|Float64Array|Uint8Array):flatbuffers.Offset {
builder.startVector(8, data.length, 8);
for (let i = data.length - 1; i >= 0; i--) {
builder.addFloat64(data[i]!);
}
return builder.endVector();
}
static startEnvelopeVector(builder:flatbuffers.Builder, numElems:number) {
builder.startVector(8, numElems, 8);
}
static addGeometryType(builder:flatbuffers.Builder, geometryType:GeometryType) {
builder.addFieldInt8(2, geometryType, GeometryType.Unknown);
}
static addHasZ(builder:flatbuffers.Builder, hasZ:boolean) {
builder.addFieldInt8(3, +hasZ, +false);
}
static addHasM(builder:flatbuffers.Builder, hasM:boolean) {
builder.addFieldInt8(4, +hasM, +false);
}
static addHasT(builder:flatbuffers.Builder, hasT:boolean) {
builder.addFieldInt8(5, +hasT, +false);
}
static addHasTm(builder:flatbuffers.Builder, hasTm:boolean) {
builder.addFieldInt8(6, +hasTm, +false);
}
static addColumns(builder:flatbuffers.Builder, columnsOffset:flatbuffers.Offset) {
builder.addFieldOffset(7, columnsOffset, 0);
}
static createColumnsVector(builder:flatbuffers.Builder, data:flatbuffers.Offset[]):flatbuffers.Offset {
builder.startVector(4, data.length, 4);
for (let i = data.length - 1; i >= 0; i--) {
builder.addOffset(data[i]!);
}
return builder.endVector();
}
static startColumnsVector(builder:flatbuffers.Builder, numElems:number) {
builder.startVector(4, numElems, 4);
}
static addFeaturesCount(builder:flatbuffers.Builder, featuresCount:flatbuffers.Long) {
builder.addFieldInt64(8, featuresCount, builder.createLong(0, 0));
}
static addIndexNodeSize(builder:flatbuffers.Builder, indexNodeSize:number) {
builder.addFieldInt16(9, indexNodeSize, 16);
}
static addCrs(builder:flatbuffers.Builder, crsOffset:flatbuffers.Offset) {
builder.addFieldOffset(10, crsOffset, 0);
}
static addTitle(builder:flatbuffers.Builder, titleOffset:flatbuffers.Offset) {
builder.addFieldOffset(11, titleOffset, 0);
}
static addDescription(builder:flatbuffers.Builder, descriptionOffset:flatbuffers.Offset) {
builder.addFieldOffset(12, descriptionOffset, 0);
}
static addMetadata(builder:flatbuffers.Builder, metadataOffset:flatbuffers.Offset) {
builder.addFieldOffset(13, metadataOffset, 0);
}
static endHeader(builder:flatbuffers.Builder):flatbuffers.Offset {
const offset = builder.endObject();
return offset;
}
static finishHeaderBuffer(builder:flatbuffers.Builder, offset:flatbuffers.Offset) {
builder.finish(offset);
}
static finishSizePrefixedHeaderBuffer(builder:flatbuffers.Builder, offset:flatbuffers.Offset) {
builder.finish(offset, undefined, true);
}
}

View File

@ -1,875 +0,0 @@
import { flatbuffers } from 'flatbuffers'
// automatically generated by the FlatBuffers compiler, do not modify
/**
* @enum {number}
*/
export enum GeometryType{
Unknown= 0,
Point= 1,
LineString= 2,
Polygon= 3,
MultiPoint= 4,
MultiLineString= 5,
MultiPolygon= 6,
GeometryCollection= 7,
CircularString= 8,
CompoundCurve= 9,
CurvePolygon= 10,
MultiCurve= 11,
MultiSurface= 12,
Curve= 13,
Surface= 14,
PolyhedralSurface= 15,
TIN= 16,
Triangle= 17
};
/**
* @enum {number}
*/
export enum ColumnType{
Byte= 0,
UByte= 1,
Bool= 2,
Short= 3,
UShort= 4,
Int= 5,
UInt= 6,
Long= 7,
ULong= 8,
Float= 9,
Double= 10,
String= 11,
Json= 12,
DateTime= 13,
Binary= 14
};
/**
* @constructor
*/
export class Column {
bb: flatbuffers.ByteBuffer|null = null;
bb_pos:number = 0;
/**
* @param number i
* @param flatbuffers.ByteBuffer bb
* @returns Column
*/
__init(i:number, bb:flatbuffers.ByteBuffer):Column {
this.bb_pos = i;
this.bb = bb;
return this;
};
/**
* @param flatbuffers.ByteBuffer bb
* @param Column= obj
* @returns Column
*/
static getRoot(bb:flatbuffers.ByteBuffer, obj?:Column):Column {
return (obj || new Column()).__init(bb.readInt32(bb.position()) + bb.position(), bb);
};
/**
* @param flatbuffers.ByteBuffer bb
* @param Column= obj
* @returns Column
*/
static getSizePrefixedRoot(bb:flatbuffers.ByteBuffer, obj?:Column):Column {
bb.setPosition(bb.position() + flatbuffers.SIZE_PREFIX_LENGTH);
return (obj || new Column()).__init(bb.readInt32(bb.position()) + bb.position(), bb);
};
/**
* @param flatbuffers.Encoding= optionalEncoding
* @returns string|Uint8Array|null
*/
name():string|null
name(optionalEncoding:flatbuffers.Encoding):string|Uint8Array|null
name(optionalEncoding?:any):string|Uint8Array|null {
var offset = this.bb!.__offset(this.bb_pos, 4);
return offset ? this.bb!.__string(this.bb_pos + offset, optionalEncoding) : null;
};
/**
* @returns ColumnType
*/
type():ColumnType {
var offset = this.bb!.__offset(this.bb_pos, 6);
return offset ? /** */ (this.bb!.readUint8(this.bb_pos + offset)) : ColumnType.Byte;
};
/**
* @param flatbuffers.Encoding= optionalEncoding
* @returns string|Uint8Array|null
*/
title():string|null
title(optionalEncoding:flatbuffers.Encoding):string|Uint8Array|null
title(optionalEncoding?:any):string|Uint8Array|null {
var offset = this.bb!.__offset(this.bb_pos, 8);
return offset ? this.bb!.__string(this.bb_pos + offset, optionalEncoding) : null;
};
/**
* @param flatbuffers.Encoding= optionalEncoding
* @returns string|Uint8Array|null
*/
description():string|null
description(optionalEncoding:flatbuffers.Encoding):string|Uint8Array|null
description(optionalEncoding?:any):string|Uint8Array|null {
var offset = this.bb!.__offset(this.bb_pos, 10);
return offset ? this.bb!.__string(this.bb_pos + offset, optionalEncoding) : null;
};
/**
* @returns number
*/
width():number {
var offset = this.bb!.__offset(this.bb_pos, 12);
return offset ? this.bb!.readInt32(this.bb_pos + offset) : -1;
};
/**
* @returns number
*/
precision():number {
var offset = this.bb!.__offset(this.bb_pos, 14);
return offset ? this.bb!.readInt32(this.bb_pos + offset) : -1;
};
/**
* @returns number
*/
scale():number {
var offset = this.bb!.__offset(this.bb_pos, 16);
return offset ? this.bb!.readInt32(this.bb_pos + offset) : -1;
};
/**
* @returns boolean
*/
nullable():boolean {
var offset = this.bb!.__offset(this.bb_pos, 18);
return offset ? !!this.bb!.readInt8(this.bb_pos + offset) : true;
};
/**
* @returns boolean
*/
unique():boolean {
var offset = this.bb!.__offset(this.bb_pos, 20);
return offset ? !!this.bb!.readInt8(this.bb_pos + offset) : false;
};
/**
* @returns boolean
*/
primaryKey():boolean {
var offset = this.bb!.__offset(this.bb_pos, 22);
return offset ? !!this.bb!.readInt8(this.bb_pos + offset) : false;
};
/**
* @param flatbuffers.Encoding= optionalEncoding
* @returns string|Uint8Array|null
*/
metadata():string|null
metadata(optionalEncoding:flatbuffers.Encoding):string|Uint8Array|null
metadata(optionalEncoding?:any):string|Uint8Array|null {
var offset = this.bb!.__offset(this.bb_pos, 24);
return offset ? this.bb!.__string(this.bb_pos + offset, optionalEncoding) : null;
};
/**
* @param flatbuffers.Builder builder
*/
static start(builder:flatbuffers.Builder) {
builder.startObject(11);
};
/**
* @param flatbuffers.Builder builder
* @param flatbuffers.Offset nameOffset
*/
static addName(builder:flatbuffers.Builder, nameOffset:flatbuffers.Offset) {
builder.addFieldOffset(0, nameOffset, 0);
};
/**
* @param flatbuffers.Builder builder
* @param ColumnType type
*/
static addType(builder:flatbuffers.Builder, type:ColumnType) {
builder.addFieldInt8(1, type, ColumnType.Byte);
};
/**
* @param flatbuffers.Builder builder
* @param flatbuffers.Offset titleOffset
*/
static addTitle(builder:flatbuffers.Builder, titleOffset:flatbuffers.Offset) {
builder.addFieldOffset(2, titleOffset, 0);
};
/**
* @param flatbuffers.Builder builder
* @param flatbuffers.Offset descriptionOffset
*/
static addDescription(builder:flatbuffers.Builder, descriptionOffset:flatbuffers.Offset) {
builder.addFieldOffset(3, descriptionOffset, 0);
};
/**
* @param flatbuffers.Builder builder
* @param number width
*/
static addWidth(builder:flatbuffers.Builder, width:number) {
builder.addFieldInt32(4, width, -1);
};
/**
* @param flatbuffers.Builder builder
* @param number precision
*/
static addPrecision(builder:flatbuffers.Builder, precision:number) {
builder.addFieldInt32(5, precision, -1);
};
/**
* @param flatbuffers.Builder builder
* @param number scale
*/
static addScale(builder:flatbuffers.Builder, scale:number) {
builder.addFieldInt32(6, scale, -1);
};
/**
* @param flatbuffers.Builder builder
* @param boolean nullable
*/
static addNullable(builder:flatbuffers.Builder, nullable:boolean) {
builder.addFieldInt8(7, +nullable, +true);
};
/**
* @param flatbuffers.Builder builder
* @param boolean unique
*/
static addUnique(builder:flatbuffers.Builder, unique:boolean) {
builder.addFieldInt8(8, +unique, +false);
};
/**
* @param flatbuffers.Builder builder
* @param boolean primaryKey
*/
static addPrimaryKey(builder:flatbuffers.Builder, primaryKey:boolean) {
builder.addFieldInt8(9, +primaryKey, +false);
};
/**
* @param flatbuffers.Builder builder
* @param flatbuffers.Offset metadataOffset
*/
static addMetadata(builder:flatbuffers.Builder, metadataOffset:flatbuffers.Offset) {
builder.addFieldOffset(10, metadataOffset, 0);
};
/**
* @param flatbuffers.Builder builder
* @returns flatbuffers.Offset
*/
static end(builder:flatbuffers.Builder):flatbuffers.Offset {
var offset = builder.endObject();
builder.requiredField(offset, 4); // name
return offset;
};
static create(builder:flatbuffers.Builder, nameOffset:flatbuffers.Offset, type:ColumnType, titleOffset:flatbuffers.Offset, descriptionOffset:flatbuffers.Offset, width:number, precision:number, scale:number, nullable:boolean, unique:boolean, primaryKey:boolean, metadataOffset:flatbuffers.Offset):flatbuffers.Offset {
Column.start(builder);
Column.addName(builder, nameOffset);
Column.addType(builder, type);
Column.addTitle(builder, titleOffset);
Column.addDescription(builder, descriptionOffset);
Column.addWidth(builder, width);
Column.addPrecision(builder, precision);
Column.addScale(builder, scale);
Column.addNullable(builder, nullable);
Column.addUnique(builder, unique);
Column.addPrimaryKey(builder, primaryKey);
Column.addMetadata(builder, metadataOffset);
return Column.end(builder);
}
}
/**
* @constructor
*/
export class Crs {
bb: flatbuffers.ByteBuffer|null = null;
bb_pos:number = 0;
/**
* @param number i
* @param flatbuffers.ByteBuffer bb
* @returns Crs
*/
__init(i:number, bb:flatbuffers.ByteBuffer):Crs {
this.bb_pos = i;
this.bb = bb;
return this;
};
/**
* @param flatbuffers.ByteBuffer bb
* @param Crs= obj
* @returns Crs
*/
static getRoot(bb:flatbuffers.ByteBuffer, obj?:Crs):Crs {
return (obj || new Crs()).__init(bb.readInt32(bb.position()) + bb.position(), bb);
};
/**
* @param flatbuffers.ByteBuffer bb
* @param Crs= obj
* @returns Crs
*/
static getSizePrefixedRoot(bb:flatbuffers.ByteBuffer, obj?:Crs):Crs {
bb.setPosition(bb.position() + flatbuffers.SIZE_PREFIX_LENGTH);
return (obj || new Crs()).__init(bb.readInt32(bb.position()) + bb.position(), bb);
};
/**
* @param flatbuffers.Encoding= optionalEncoding
* @returns string|Uint8Array|null
*/
org():string|null
org(optionalEncoding:flatbuffers.Encoding):string|Uint8Array|null
org(optionalEncoding?:any):string|Uint8Array|null {
var offset = this.bb!.__offset(this.bb_pos, 4);
return offset ? this.bb!.__string(this.bb_pos + offset, optionalEncoding) : null;
};
/**
* @returns number
*/
code():number {
var offset = this.bb!.__offset(this.bb_pos, 6);
return offset ? this.bb!.readInt32(this.bb_pos + offset) : 0;
};
/**
* @param flatbuffers.Encoding= optionalEncoding
* @returns string|Uint8Array|null
*/
name():string|null
name(optionalEncoding:flatbuffers.Encoding):string|Uint8Array|null
name(optionalEncoding?:any):string|Uint8Array|null {
var offset = this.bb!.__offset(this.bb_pos, 8);
return offset ? this.bb!.__string(this.bb_pos + offset, optionalEncoding) : null;
};
/**
* @param flatbuffers.Encoding= optionalEncoding
* @returns string|Uint8Array|null
*/
description():string|null
description(optionalEncoding:flatbuffers.Encoding):string|Uint8Array|null
description(optionalEncoding?:any):string|Uint8Array|null {
var offset = this.bb!.__offset(this.bb_pos, 10);
return offset ? this.bb!.__string(this.bb_pos + offset, optionalEncoding) : null;
};
/**
* @param flatbuffers.Encoding= optionalEncoding
* @returns string|Uint8Array|null
*/
wkt():string|null
wkt(optionalEncoding:flatbuffers.Encoding):string|Uint8Array|null
wkt(optionalEncoding?:any):string|Uint8Array|null {
var offset = this.bb!.__offset(this.bb_pos, 12);
return offset ? this.bb!.__string(this.bb_pos + offset, optionalEncoding) : null;
};
/**
* @param flatbuffers.Encoding= optionalEncoding
* @returns string|Uint8Array|null
*/
codeString():string|null
codeString(optionalEncoding:flatbuffers.Encoding):string|Uint8Array|null
codeString(optionalEncoding?:any):string|Uint8Array|null {
var offset = this.bb!.__offset(this.bb_pos, 14);
return offset ? this.bb!.__string(this.bb_pos + offset, optionalEncoding) : null;
};
/**
* @param flatbuffers.Builder builder
*/
static start(builder:flatbuffers.Builder) {
builder.startObject(6);
};
/**
* @param flatbuffers.Builder builder
* @param flatbuffers.Offset orgOffset
*/
static addOrg(builder:flatbuffers.Builder, orgOffset:flatbuffers.Offset) {
builder.addFieldOffset(0, orgOffset, 0);
};
/**
* @param flatbuffers.Builder builder
* @param number code
*/
static addCode(builder:flatbuffers.Builder, code:number) {
builder.addFieldInt32(1, code, 0);
};
/**
* @param flatbuffers.Builder builder
* @param flatbuffers.Offset nameOffset
*/
static addName(builder:flatbuffers.Builder, nameOffset:flatbuffers.Offset) {
builder.addFieldOffset(2, nameOffset, 0);
};
/**
* @param flatbuffers.Builder builder
* @param flatbuffers.Offset descriptionOffset
*/
static addDescription(builder:flatbuffers.Builder, descriptionOffset:flatbuffers.Offset) {
builder.addFieldOffset(3, descriptionOffset, 0);
};
/**
* @param flatbuffers.Builder builder
* @param flatbuffers.Offset wktOffset
*/
static addWkt(builder:flatbuffers.Builder, wktOffset:flatbuffers.Offset) {
builder.addFieldOffset(4, wktOffset, 0);
};
/**
* @param flatbuffers.Builder builder
* @param flatbuffers.Offset codeStringOffset
*/
static addCodeString(builder:flatbuffers.Builder, codeStringOffset:flatbuffers.Offset) {
builder.addFieldOffset(5, codeStringOffset, 0);
};
/**
* @param flatbuffers.Builder builder
* @returns flatbuffers.Offset
*/
static end(builder:flatbuffers.Builder):flatbuffers.Offset {
var offset = builder.endObject();
return offset;
};
static create(builder:flatbuffers.Builder, orgOffset:flatbuffers.Offset, code:number, nameOffset:flatbuffers.Offset, descriptionOffset:flatbuffers.Offset, wktOffset:flatbuffers.Offset, codeStringOffset:flatbuffers.Offset):flatbuffers.Offset {
Crs.start(builder);
Crs.addOrg(builder, orgOffset);
Crs.addCode(builder, code);
Crs.addName(builder, nameOffset);
Crs.addDescription(builder, descriptionOffset);
Crs.addWkt(builder, wktOffset);
Crs.addCodeString(builder, codeStringOffset);
return Crs.end(builder);
}
}
/**
* @constructor
*/
export class Header {
bb: flatbuffers.ByteBuffer|null = null;
bb_pos:number = 0;
/**
* @param number i
* @param flatbuffers.ByteBuffer bb
* @returns Header
*/
__init(i:number, bb:flatbuffers.ByteBuffer):Header {
this.bb_pos = i;
this.bb = bb;
return this;
};
/**
* @param flatbuffers.ByteBuffer bb
* @param Header= obj
* @returns Header
*/
static getRoot(bb:flatbuffers.ByteBuffer, obj?:Header):Header {
return (obj || new Header()).__init(bb.readInt32(bb.position()) + bb.position(), bb);
};
/**
* @param flatbuffers.ByteBuffer bb
* @param Header= obj
* @returns Header
*/
static getSizePrefixedRoot(bb:flatbuffers.ByteBuffer, obj?:Header):Header {
bb.setPosition(bb.position() + flatbuffers.SIZE_PREFIX_LENGTH);
return (obj || new Header()).__init(bb.readInt32(bb.position()) + bb.position(), bb);
};
/**
* @param flatbuffers.Encoding= optionalEncoding
* @returns string|Uint8Array|null
*/
name():string|null
name(optionalEncoding:flatbuffers.Encoding):string|Uint8Array|null
name(optionalEncoding?:any):string|Uint8Array|null {
var offset = this.bb!.__offset(this.bb_pos, 4);
return offset ? this.bb!.__string(this.bb_pos + offset, optionalEncoding) : null;
};
/**
* @param number index
* @returns number
*/
envelope(index: number):number|null {
var offset = this.bb!.__offset(this.bb_pos, 6);
return offset ? this.bb!.readFloat64(this.bb!.__vector(this.bb_pos + offset) + index * 8) : 0;
};
/**
* @returns number
*/
envelopeLength():number {
var offset = this.bb!.__offset(this.bb_pos, 6);
return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
};
/**
* @returns Float64Array
*/
envelopeArray():Float64Array|null {
var offset = this.bb!.__offset(this.bb_pos, 6);
return offset ? new Float64Array(this.bb!.bytes().buffer, this.bb!.bytes().byteOffset + this.bb!.__vector(this.bb_pos + offset), this.bb!.__vector_len(this.bb_pos + offset)) : null;
};
/**
* @returns GeometryType
*/
geometryType():GeometryType {
var offset = this.bb!.__offset(this.bb_pos, 8);
return offset ? /** */ (this.bb!.readUint8(this.bb_pos + offset)) : GeometryType.Unknown;
};
/**
* @returns boolean
*/
hasZ():boolean {
var offset = this.bb!.__offset(this.bb_pos, 10);
return offset ? !!this.bb!.readInt8(this.bb_pos + offset) : false;
};
/**
* @returns boolean
*/
hasM():boolean {
var offset = this.bb!.__offset(this.bb_pos, 12);
return offset ? !!this.bb!.readInt8(this.bb_pos + offset) : false;
};
/**
* @returns boolean
*/
hasT():boolean {
var offset = this.bb!.__offset(this.bb_pos, 14);
return offset ? !!this.bb!.readInt8(this.bb_pos + offset) : false;
};
/**
* @returns boolean
*/
hasTM():boolean {
var offset = this.bb!.__offset(this.bb_pos, 16);
return offset ? !!this.bb!.readInt8(this.bb_pos + offset) : false;
};
/**
* @param number index
* @param Column= obj
* @returns Column
*/
columns(index: number, obj?:Column):Column|null {
var offset = this.bb!.__offset(this.bb_pos, 18);
return offset ? (obj || new Column()).__init(this.bb!.__indirect(this.bb!.__vector(this.bb_pos + offset) + index * 4), this.bb!) : null;
};
/**
* @returns number
*/
columnsLength():number {
var offset = this.bb!.__offset(this.bb_pos, 18);
return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0;
};
/**
* @returns flatbuffers.Long
*/
featuresCount():flatbuffers.Long {
var offset = this.bb!.__offset(this.bb_pos, 20);
return offset ? this.bb!.readUint64(this.bb_pos + offset) : this.bb!.createLong(0, 0);
};
/**
* @returns number
*/
indexNodeSize():number {
var offset = this.bb!.__offset(this.bb_pos, 22);
return offset ? this.bb!.readUint16(this.bb_pos + offset) : 16;
};
/**
* @param Crs= obj
* @returns Crs|null
*/
crs(obj?:Crs):Crs|null {
var offset = this.bb!.__offset(this.bb_pos, 24);
return offset ? (obj || new Crs()).__init(this.bb!.__indirect(this.bb_pos + offset), this.bb!) : null;
};
/**
* @param flatbuffers.Encoding= optionalEncoding
* @returns string|Uint8Array|null
*/
title():string|null
title(optionalEncoding:flatbuffers.Encoding):string|Uint8Array|null
title(optionalEncoding?:any):string|Uint8Array|null {
var offset = this.bb!.__offset(this.bb_pos, 26);
return offset ? this.bb!.__string(this.bb_pos + offset, optionalEncoding) : null;
};
/**
* @param flatbuffers.Encoding= optionalEncoding
* @returns string|Uint8Array|null
*/
description():string|null
description(optionalEncoding:flatbuffers.Encoding):string|Uint8Array|null
description(optionalEncoding?:any):string|Uint8Array|null {
var offset = this.bb!.__offset(this.bb_pos, 28);
return offset ? this.bb!.__string(this.bb_pos + offset, optionalEncoding) : null;
};
/**
* @param flatbuffers.Encoding= optionalEncoding
* @returns string|Uint8Array|null
*/
metadata():string|null
metadata(optionalEncoding:flatbuffers.Encoding):string|Uint8Array|null
metadata(optionalEncoding?:any):string|Uint8Array|null {
var offset = this.bb!.__offset(this.bb_pos, 30);
return offset ? this.bb!.__string(this.bb_pos + offset, optionalEncoding) : null;
};
/**
* @param flatbuffers.Builder builder
*/
static start(builder:flatbuffers.Builder) {
builder.startObject(14);
};
/**
* @param flatbuffers.Builder builder
* @param flatbuffers.Offset nameOffset
*/
static addName(builder:flatbuffers.Builder, nameOffset:flatbuffers.Offset) {
builder.addFieldOffset(0, nameOffset, 0);
};
/**
* @param flatbuffers.Builder builder
* @param flatbuffers.Offset envelopeOffset
*/
static addEnvelope(builder:flatbuffers.Builder, envelopeOffset:flatbuffers.Offset) {
builder.addFieldOffset(1, envelopeOffset, 0);
};
/**
* @param flatbuffers.Builder builder
* @param Array.<number> data
* @returns flatbuffers.Offset
*/
static createEnvelopeVector(builder:flatbuffers.Builder, data:number[] | Uint8Array):flatbuffers.Offset {
builder.startVector(8, data.length, 8);
for (var i = data.length - 1; i >= 0; i--) {
builder.addFloat64(data[i]);
}
return builder.endVector();
};
/**
* @param flatbuffers.Builder builder
* @param number numElems
*/
static startEnvelopeVector(builder:flatbuffers.Builder, numElems:number) {
builder.startVector(8, numElems, 8);
};
/**
* @param flatbuffers.Builder builder
* @param GeometryType geometryType
*/
static addGeometryType(builder:flatbuffers.Builder, geometryType:GeometryType) {
builder.addFieldInt8(2, geometryType, GeometryType.Unknown);
};
/**
* @param flatbuffers.Builder builder
* @param boolean hasZ
*/
static addHasZ(builder:flatbuffers.Builder, hasZ:boolean) {
builder.addFieldInt8(3, +hasZ, +false);
};
/**
* @param flatbuffers.Builder builder
* @param boolean hasM
*/
static addHasM(builder:flatbuffers.Builder, hasM:boolean) {
builder.addFieldInt8(4, +hasM, +false);
};
/**
* @param flatbuffers.Builder builder
* @param boolean hasT
*/
static addHasT(builder:flatbuffers.Builder, hasT:boolean) {
builder.addFieldInt8(5, +hasT, +false);
};
/**
* @param flatbuffers.Builder builder
* @param boolean hasTM
*/
static addHasTM(builder:flatbuffers.Builder, hasTM:boolean) {
builder.addFieldInt8(6, +hasTM, +false);
};
/**
* @param flatbuffers.Builder builder
* @param flatbuffers.Offset columnsOffset
*/
static addColumns(builder:flatbuffers.Builder, columnsOffset:flatbuffers.Offset) {
builder.addFieldOffset(7, columnsOffset, 0);
};
/**
* @param flatbuffers.Builder builder
* @param Array.<flatbuffers.Offset> data
* @returns flatbuffers.Offset
*/
static createColumnsVector(builder:flatbuffers.Builder, data:flatbuffers.Offset[]):flatbuffers.Offset {
builder.startVector(4, data.length, 4);
for (var i = data.length - 1; i >= 0; i--) {
builder.addOffset(data[i]);
}
return builder.endVector();
};
/**
* @param flatbuffers.Builder builder
* @param number numElems
*/
static startColumnsVector(builder:flatbuffers.Builder, numElems:number) {
builder.startVector(4, numElems, 4);
};
/**
* @param flatbuffers.Builder builder
* @param flatbuffers.Long featuresCount
*/
static addFeaturesCount(builder:flatbuffers.Builder, featuresCount:flatbuffers.Long) {
builder.addFieldInt64(8, featuresCount, builder.createLong(0, 0));
};
/**
* @param flatbuffers.Builder builder
* @param number indexNodeSize
*/
static addIndexNodeSize(builder:flatbuffers.Builder, indexNodeSize:number) {
builder.addFieldInt16(9, indexNodeSize, 16);
};
/**
* @param flatbuffers.Builder builder
* @param flatbuffers.Offset crsOffset
*/
static addCrs(builder:flatbuffers.Builder, crsOffset:flatbuffers.Offset) {
builder.addFieldOffset(10, crsOffset, 0);
};
/**
* @param flatbuffers.Builder builder
* @param flatbuffers.Offset titleOffset
*/
static addTitle(builder:flatbuffers.Builder, titleOffset:flatbuffers.Offset) {
builder.addFieldOffset(11, titleOffset, 0);
};
/**
* @param flatbuffers.Builder builder
* @param flatbuffers.Offset descriptionOffset
*/
static addDescription(builder:flatbuffers.Builder, descriptionOffset:flatbuffers.Offset) {
builder.addFieldOffset(12, descriptionOffset, 0);
};
/**
* @param flatbuffers.Builder builder
* @param flatbuffers.Offset metadataOffset
*/
static addMetadata(builder:flatbuffers.Builder, metadataOffset:flatbuffers.Offset) {
builder.addFieldOffset(13, metadataOffset, 0);
};
/**
* @param flatbuffers.Builder builder
* @returns flatbuffers.Offset
*/
static end(builder:flatbuffers.Builder):flatbuffers.Offset {
var offset = builder.endObject();
return offset;
};
/**
* @param flatbuffers.Builder builder
* @param flatbuffers.Offset offset
*/
static finishBuffer(builder:flatbuffers.Builder, offset:flatbuffers.Offset) {
builder.finish(offset);
};
/**
* @param flatbuffers.Builder builder
* @param flatbuffers.Offset offset
*/
static finishSizePrefixedBuffer(builder:flatbuffers.Builder, offset:flatbuffers.Offset) {
builder.finish(offset, undefined, true);
};
static create(builder:flatbuffers.Builder, nameOffset:flatbuffers.Offset, envelopeOffset:flatbuffers.Offset, geometryType:GeometryType, hasZ:boolean, hasM:boolean, hasT:boolean, hasTM:boolean, columnsOffset:flatbuffers.Offset, featuresCount:flatbuffers.Long, indexNodeSize:number, crsOffset:flatbuffers.Offset, titleOffset:flatbuffers.Offset, descriptionOffset:flatbuffers.Offset, metadataOffset:flatbuffers.Offset):flatbuffers.Offset {
Header.start(builder);
Header.addName(builder, nameOffset);
Header.addEnvelope(builder, envelopeOffset);
Header.addGeometryType(builder, geometryType);
Header.addHasZ(builder, hasZ);
Header.addHasM(builder, hasM);
Header.addHasT(builder, hasT);
Header.addHasTM(builder, hasTM);
Header.addColumns(builder, columnsOffset);
Header.addFeaturesCount(builder, featuresCount);
Header.addIndexNodeSize(builder, indexNodeSize);
Header.addCrs(builder, crsOffset);
Header.addTitle(builder, titleOffset);
Header.addDescription(builder, descriptionOffset);
Header.addMetadata(builder, metadataOffset);
return Header.end(builder);
}
}

View File

@ -1,7 +1,8 @@
import { default as OLFeature } from 'ol/Feature'
import { GeometryType } from '../header_generated'
import { Feature, Geometry } from '../feature_generated'
import { GeometryType } from '../geometry-type'
import { Feature } from '../feature'
import { Geometry } from '../geometry'
import HeaderMeta from '../HeaderMeta'
import { createGeometryOl } from './geometry'
import { fromFeature as genericFromFeature, IFeature } from '../generic/feature'

View File

@ -1,5 +1,5 @@
import { GeometryType } from '../header_generated'
import { Geometry } from '../feature_generated'
import { GeometryType } from '../geometry-type'
import { Geometry } from '../geometry'
import { ISimpleGeometry } from '../generic/geometry'

View File

@ -995,11 +995,6 @@
resolved "https://registry.yarnpkg.com/@types/estree/-/estree-0.0.39.tgz#e177e699ee1b8c22d23174caaa7422644389509f"
integrity sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==
"@types/flatbuffers@1.10.0":
version "1.10.0"
resolved "https://registry.yarnpkg.com/@types/flatbuffers/-/flatbuffers-1.10.0.tgz#aa74e30ffdc86445f2f060e1808fc9d56b5603ba"
integrity sha512-7btbphLrKvo5yl/5CC2OCxUSMx1wV1wvGT1qDXkSt7yi00/YW7E8k6qzXqJHsp+WU0eoG7r6MTQQXI9lIvd0qA==
"@types/geojson@*":
version "7946.0.7"
resolved "https://registry.yarnpkg.com/@types/geojson/-/geojson-7946.0.7.tgz#c8fa532b60a0042219cdf173ca21a975ef0666ad"
@ -1992,10 +1987,10 @@ flat@^5.0.2:
resolved "https://registry.yarnpkg.com/flat/-/flat-5.0.2.tgz#8ca6fe332069ffa9d324c327198c598259ceb241"
integrity sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==
flatbuffers@1.12.0:
version "1.12.0"
resolved "https://registry.yarnpkg.com/flatbuffers/-/flatbuffers-1.12.0.tgz#72e87d1726cb1b216e839ef02658aa87dcef68aa"
integrity sha512-c7CZADjRcl6j0PlvFy0ZqXQ67qSEZfrVPynmnL+2zPc+NtMvrF8Y0QceMo7QqnSPc7+uWjUIAbvCQ5WIKlMVdQ==
flatbuffers@2.0.1:
version "2.0.1"
resolved "https://registry.yarnpkg.com/flatbuffers/-/flatbuffers-2.0.1.tgz#c10f422ebd93f949de166a3a452c5767c2fcdd50"
integrity sha512-uRz4gA6oF6jxhOFD5FHo4crmj90U35zYR2JxTF6bJyNkpkZSe9vsVCZLNCSVVgLHVCieZdMYmaAdWdSCy8YNRQ==
flatted@^3.1.0:
version "3.1.1"