From df155789da7fcbb67089e86be7e16713d30aa161 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B6rn=20Harrtell?= Date: Thu, 13 May 2021 23:24:52 +0200 Subject: [PATCH] js: upgrade to Flatbuffers 2.0 and new code gen --- package.json | 3 +- script/gen_ts.sh | 2 +- src/fbs/header.fbs | 8 +- src/ts/ColumnMeta.ts | 2 +- src/ts/HeaderMeta.ts | 8 +- src/ts/HttpReader.ts | 14 +- src/ts/column-type.ts | 20 + src/ts/column.ts | 158 +++ src/ts/crs.ts | 106 ++ src/ts/feature.ts | 117 +++ src/ts/feature_generated.ts | 1499 --------------------------- src/ts/generic.ts | 6 +- src/ts/generic/feature.ts | 10 +- src/ts/generic/featurecollection.ts | 22 +- src/ts/generic/geometry.ts | 14 +- src/ts/geojson/feature.ts | 3 +- src/ts/geojson/featurecollection.ts | 2 +- src/ts/geojson/geometry.ts | 4 +- src/ts/geometry-type.ts | 23 + src/ts/geometry.ts | 288 +++++ src/ts/header.ts | 223 ++++ src/ts/header_generated.ts | 875 ---------------- src/ts/ol/feature.ts | 5 +- src/ts/ol/geometry.ts | 4 +- yarn.lock | 13 +- 25 files changed, 994 insertions(+), 2435 deletions(-) create mode 100644 src/ts/column-type.ts create mode 100644 src/ts/column.ts create mode 100644 src/ts/crs.ts create mode 100644 src/ts/feature.ts delete mode 100644 src/ts/feature_generated.ts create mode 100644 src/ts/geometry-type.ts create mode 100644 src/ts/geometry.ts create mode 100644 src/ts/header.ts delete mode 100644 src/ts/header_generated.ts diff --git a/package.json b/package.json index 6d1e723..6f9f5e7 100644 --- a/package.json +++ b/package.json @@ -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", diff --git a/script/gen_ts.sh b/script/gen_ts.sh index 7651b8c..adad89a 100755 --- a/script/gen_ts.sh +++ b/script/gen_ts.sh @@ -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 diff --git a/src/fbs/header.fbs b/src/fbs/header.fbs index adc7082..61fe119 100644 --- a/src/fbs/header.fbs +++ b/src/fbs/header.fbs @@ -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) diff --git a/src/ts/ColumnMeta.ts b/src/ts/ColumnMeta.ts index 00503e7..bd8f5fa 100644 --- a/src/ts/ColumnMeta.ts +++ b/src/ts/ColumnMeta.ts @@ -1,5 +1,5 @@ -import { ColumnType } from './header_generated' +import { ColumnType } from './column-type' export default class ColumnMeta { constructor( diff --git a/src/ts/HeaderMeta.ts b/src/ts/HeaderMeta.ts index 4b54f6f..48d6319 100644 --- a/src/ts/HeaderMeta.ts +++ b/src/ts/HeaderMeta.ts @@ -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() diff --git a/src/ts/HttpReader.ts b/src/ts/HttpReader.ts index 3a90ce5..53eb890 100644 --- a/src/ts/HttpReader.ts +++ b/src/ts/HttpReader.ts @@ -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) } } diff --git a/src/ts/column-type.ts b/src/ts/column-type.ts new file mode 100644 index 0000000..f1ce40d --- /dev/null +++ b/src/ts/column-type.ts @@ -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 +} + diff --git a/src/ts/column.ts b/src/ts/column.ts new file mode 100644 index 0000000..7c418f1 --- /dev/null +++ b/src/ts/column.ts @@ -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); +} +} diff --git a/src/ts/crs.ts b/src/ts/crs.ts new file mode 100644 index 0000000..5bf5dd4 --- /dev/null +++ b/src/ts/crs.ts @@ -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); +} +} diff --git a/src/ts/feature.ts b/src/ts/feature.ts new file mode 100644 index 0000000..74d7019 --- /dev/null +++ b/src/ts/feature.ts @@ -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); +} +} diff --git a/src/ts/feature_generated.ts b/src/ts/feature_generated.ts deleted file mode 100644 index f11ea3d..0000000 --- a/src/ts/feature_generated.ts +++ /dev/null @@ -1,1499 +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. 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. 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; -}; - -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); -} -} -/** - * @constructor - */ -export class Geometry { - bb: flatbuffers.ByteBuffer|null = null; - - bb_pos:number = 0; -/** - * @param number i - * @param flatbuffers.ByteBuffer bb - * @returns Geometry - */ -__init(i:number, bb:flatbuffers.ByteBuffer):Geometry { - this.bb_pos = i; - this.bb = bb; - return this; -}; - -/** - * @param flatbuffers.ByteBuffer bb - * @param Geometry= obj - * @returns Geometry - */ -static getRoot(bb:flatbuffers.ByteBuffer, obj?:Geometry):Geometry { - return (obj || new Geometry()).__init(bb.readInt32(bb.position()) + bb.position(), bb); -}; - -/** - * @param flatbuffers.ByteBuffer bb - * @param Geometry= obj - * @returns Geometry - */ -static getSizePrefixedRoot(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); -}; - -/** - * @param number index - * @returns number - */ -ends(index: number):number|null { - var offset = this.bb!.__offset(this.bb_pos, 4); - return offset ? this.bb!.readUint32(this.bb!.__vector(this.bb_pos + offset) + index * 4) : 0; -}; - -/** - * @returns number - */ -endsLength():number { - var offset = this.bb!.__offset(this.bb_pos, 4); - return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0; -}; - -/** - * @returns Uint32Array - */ -endsArray():Uint32Array|null { - var 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; -}; - -/** - * @param number index - * @returns number - */ -xy(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 - */ -xyLength():number { - var offset = this.bb!.__offset(this.bb_pos, 6); - return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0; -}; - -/** - * @returns Float64Array - */ -xyArray():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; -}; - -/** - * @param number index - * @returns number - */ -z(index: number):number|null { - var offset = this.bb!.__offset(this.bb_pos, 8); - return offset ? this.bb!.readFloat64(this.bb!.__vector(this.bb_pos + offset) + index * 8) : 0; -}; - -/** - * @returns number - */ -zLength():number { - var offset = this.bb!.__offset(this.bb_pos, 8); - return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0; -}; - -/** - * @returns Float64Array - */ -zArray():Float64Array|null { - var 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; -}; - -/** - * @param number index - * @returns number - */ -m(index: number):number|null { - var offset = this.bb!.__offset(this.bb_pos, 10); - return offset ? this.bb!.readFloat64(this.bb!.__vector(this.bb_pos + offset) + index * 8) : 0; -}; - -/** - * @returns number - */ -mLength():number { - var offset = this.bb!.__offset(this.bb_pos, 10); - return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0; -}; - -/** - * @returns Float64Array - */ -mArray():Float64Array|null { - var 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; -}; - -/** - * @param number index - * @returns number - */ -t(index: number):number|null { - var offset = this.bb!.__offset(this.bb_pos, 12); - return offset ? this.bb!.readFloat64(this.bb!.__vector(this.bb_pos + offset) + index * 8) : 0; -}; - -/** - * @returns number - */ -tLength():number { - var offset = this.bb!.__offset(this.bb_pos, 12); - return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0; -}; - -/** - * @returns Float64Array - */ -tArray():Float64Array|null { - var 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; -}; - -/** - * @param number index - * @returns flatbuffers.Long - */ -tm(index: number):flatbuffers.Long|null { - var 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); -}; - -/** - * @returns number - */ -tmLength():number { - var offset = this.bb!.__offset(this.bb_pos, 14); - return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0; -}; - -/** - * @returns GeometryType - */ -type():GeometryType { - var offset = this.bb!.__offset(this.bb_pos, 16); - return offset ? /** */ (this.bb!.readUint8(this.bb_pos + offset)) : GeometryType.Unknown; -}; - -/** - * @param number index - * @param Geometry= obj - * @returns Geometry - */ -parts(index: number, obj?:Geometry):Geometry|null { - var 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; -}; - -/** - * @returns number - */ -partsLength():number { - var offset = this.bb!.__offset(this.bb_pos, 18); - return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0; -}; - -/** - * @param flatbuffers.Builder builder - */ -static start(builder:flatbuffers.Builder) { - builder.startObject(8); -}; - -/** - * @param flatbuffers.Builder builder - * @param flatbuffers.Offset endsOffset - */ -static addEnds(builder:flatbuffers.Builder, endsOffset:flatbuffers.Offset) { - builder.addFieldOffset(0, endsOffset, 0); -}; - -/** - * @param flatbuffers.Builder builder - * @param Array. data - * @returns flatbuffers.Offset - */ -static createEndsVector(builder:flatbuffers.Builder, data:number[] | Uint8Array):flatbuffers.Offset { - builder.startVector(4, data.length, 4); - for (var i = data.length - 1; i >= 0; i--) { - builder.addInt32(data[i]); - } - return builder.endVector(); -}; - -/** - * @param flatbuffers.Builder builder - * @param number numElems - */ -static startEndsVector(builder:flatbuffers.Builder, numElems:number) { - builder.startVector(4, numElems, 4); -}; - -/** - * @param flatbuffers.Builder builder - * @param flatbuffers.Offset xyOffset - */ -static addXy(builder:flatbuffers.Builder, xyOffset:flatbuffers.Offset) { - builder.addFieldOffset(1, xyOffset, 0); -}; - -/** - * @param flatbuffers.Builder builder - * @param Array. data - * @returns flatbuffers.Offset - */ -static createXyVector(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 startXyVector(builder:flatbuffers.Builder, numElems:number) { - builder.startVector(8, numElems, 8); -}; - -/** - * @param flatbuffers.Builder builder - * @param flatbuffers.Offset zOffset - */ -static addZ(builder:flatbuffers.Builder, zOffset:flatbuffers.Offset) { - builder.addFieldOffset(2, zOffset, 0); -}; - -/** - * @param flatbuffers.Builder builder - * @param Array. data - * @returns flatbuffers.Offset - */ -static createZVector(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 startZVector(builder:flatbuffers.Builder, numElems:number) { - builder.startVector(8, numElems, 8); -}; - -/** - * @param flatbuffers.Builder builder - * @param flatbuffers.Offset mOffset - */ -static addM(builder:flatbuffers.Builder, mOffset:flatbuffers.Offset) { - builder.addFieldOffset(3, mOffset, 0); -}; - -/** - * @param flatbuffers.Builder builder - * @param Array. data - * @returns flatbuffers.Offset - */ -static createMVector(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 startMVector(builder:flatbuffers.Builder, numElems:number) { - builder.startVector(8, numElems, 8); -}; - -/** - * @param flatbuffers.Builder builder - * @param flatbuffers.Offset tOffset - */ -static addT(builder:flatbuffers.Builder, tOffset:flatbuffers.Offset) { - builder.addFieldOffset(4, tOffset, 0); -}; - -/** - * @param flatbuffers.Builder builder - * @param Array. data - * @returns flatbuffers.Offset - */ -static createTVector(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 startTVector(builder:flatbuffers.Builder, numElems:number) { - builder.startVector(8, numElems, 8); -}; - -/** - * @param flatbuffers.Builder builder - * @param flatbuffers.Offset tmOffset - */ -static addTm(builder:flatbuffers.Builder, tmOffset:flatbuffers.Offset) { - builder.addFieldOffset(5, tmOffset, 0); -}; - -/** - * @param flatbuffers.Builder builder - * @param Array. data - * @returns flatbuffers.Offset - */ -static createTmVector(builder:flatbuffers.Builder, data:flatbuffers.Long[]):flatbuffers.Offset { - builder.startVector(8, data.length, 8); - for (var i = data.length - 1; i >= 0; i--) { - builder.addInt64(data[i]); - } - return builder.endVector(); -}; - -/** - * @param flatbuffers.Builder builder - * @param number numElems - */ -static startTmVector(builder:flatbuffers.Builder, numElems:number) { - builder.startVector(8, numElems, 8); -}; - -/** - * @param flatbuffers.Builder builder - * @param GeometryType type - */ -static addType(builder:flatbuffers.Builder, type:GeometryType) { - builder.addFieldInt8(6, type, GeometryType.Unknown); -}; - -/** - * @param flatbuffers.Builder builder - * @param flatbuffers.Offset partsOffset - */ -static addParts(builder:flatbuffers.Builder, partsOffset:flatbuffers.Offset) { - builder.addFieldOffset(7, partsOffset, 0); -}; - -/** - * @param flatbuffers.Builder builder - * @param Array. data - * @returns flatbuffers.Offset - */ -static createPartsVector(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 startPartsVector(builder:flatbuffers.Builder, numElems:number) { - builder.startVector(4, numElems, 4); -}; - -/** - * @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, 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.start(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.end(builder); -} -} -/** - * @constructor - */ -export class Feature { - bb: flatbuffers.ByteBuffer|null = null; - - bb_pos:number = 0; -/** - * @param number i - * @param flatbuffers.ByteBuffer bb - * @returns Feature - */ -__init(i:number, bb:flatbuffers.ByteBuffer):Feature { - this.bb_pos = i; - this.bb = bb; - return this; -}; - -/** - * @param flatbuffers.ByteBuffer bb - * @param Feature= obj - * @returns Feature - */ -static getRoot(bb:flatbuffers.ByteBuffer, obj?:Feature):Feature { - return (obj || new Feature()).__init(bb.readInt32(bb.position()) + bb.position(), bb); -}; - -/** - * @param flatbuffers.ByteBuffer bb - * @param Feature= obj - * @returns Feature - */ -static getSizePrefixedRoot(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); -}; - -/** - * @param Geometry= obj - * @returns Geometry|null - */ -geometry(obj?:Geometry):Geometry|null { - var offset = this.bb!.__offset(this.bb_pos, 4); - return offset ? (obj || new Geometry()).__init(this.bb!.__indirect(this.bb_pos + offset), this.bb!) : null; -}; - -/** - * @param number index - * @returns number - */ -properties(index: number):number|null { - var offset = this.bb!.__offset(this.bb_pos, 6); - return offset ? this.bb!.readUint8(this.bb!.__vector(this.bb_pos + offset) + index) : 0; -}; - -/** - * @returns number - */ -propertiesLength():number { - var offset = this.bb!.__offset(this.bb_pos, 6); - return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0; -}; - -/** - * @returns Uint8Array - */ -propertiesArray():Uint8Array|null { - var 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; -}; - -/** - * @param number index - * @param Column= obj - * @returns Column - */ -columns(index: number, obj?:Column):Column|null { - var 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; -}; - -/** - * @returns number - */ -columnsLength():number { - var offset = this.bb!.__offset(this.bb_pos, 8); - return offset ? this.bb!.__vector_len(this.bb_pos + offset) : 0; -}; - -/** - * @param flatbuffers.Builder builder - */ -static start(builder:flatbuffers.Builder) { - builder.startObject(3); -}; - -/** - * @param flatbuffers.Builder builder - * @param flatbuffers.Offset geometryOffset - */ -static addGeometry(builder:flatbuffers.Builder, geometryOffset:flatbuffers.Offset) { - builder.addFieldOffset(0, geometryOffset, 0); -}; - -/** - * @param flatbuffers.Builder builder - * @param flatbuffers.Offset propertiesOffset - */ -static addProperties(builder:flatbuffers.Builder, propertiesOffset:flatbuffers.Offset) { - builder.addFieldOffset(1, propertiesOffset, 0); -}; - -/** - * @param flatbuffers.Builder builder - * @param Array. data - * @returns flatbuffers.Offset - */ -static createPropertiesVector(builder:flatbuffers.Builder, data:number[] | Uint8Array):flatbuffers.Offset { - builder.startVector(1, data.length, 1); - for (var i = data.length - 1; i >= 0; i--) { - builder.addInt8(data[i]); - } - return builder.endVector(); -}; - -/** - * @param flatbuffers.Builder builder - * @param number numElems - */ -static startPropertiesVector(builder:flatbuffers.Builder, numElems:number) { - builder.startVector(1, numElems, 1); -}; - -/** - * @param flatbuffers.Builder builder - * @param flatbuffers.Offset columnsOffset - */ -static addColumns(builder:flatbuffers.Builder, columnsOffset:flatbuffers.Offset) { - builder.addFieldOffset(2, columnsOffset, 0); -}; - -/** - * @param flatbuffers.Builder builder - * @param Array. 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 - * @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, geometryOffset:flatbuffers.Offset, propertiesOffset:flatbuffers.Offset, columnsOffset:flatbuffers.Offset):flatbuffers.Offset { - Feature.start(builder); - Feature.addGeometry(builder, geometryOffset); - Feature.addProperties(builder, propertiesOffset); - Feature.addColumns(builder, columnsOffset); - return Feature.end(builder); -} -} diff --git a/src/ts/generic.ts b/src/ts/generic.ts index 9d94b2c..0826068 100644 --- a/src/ts/generic.ts +++ b/src/ts/generic.ts @@ -28,7 +28,5 @@ export { serialize } from './generic/featurecollection' -export { - GeometryType, - ColumnType -} from './header_generated' \ No newline at end of file +export { GeometryType } from './geometry-type' +export { ColumnType } from './column-type' diff --git a/src/ts/generic/feature.ts b/src/ts/generic/feature.ts index 8447733..616957d 100644 --- a/src/ts/generic/feature.ts +++ b/src/ts/generic/feature.ts @@ -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 } diff --git a/src/ts/generic/featurecollection.ts b/src/ts/generic/featurecollection.ts index 884bc06..582c3e3 100644 --- a/src/ts/generic/featurecollection.ts +++ b/src/ts/generic/featurecollection.ts @@ -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 } diff --git a/src/ts/generic/geometry.ts b/src/ts/generic/geometry.ts index 86d3fdc..ad2ea8a 100644 --- a/src/ts/generic/geometry.ts +++ b/src/ts/generic/geometry.ts @@ -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 { diff --git a/src/ts/geojson/feature.ts b/src/ts/geojson/feature.ts index 7049b46..92e72ba 100644 --- a/src/ts/geojson/feature.ts +++ b/src/ts/geojson/feature.ts @@ -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' diff --git a/src/ts/geojson/featurecollection.ts b/src/ts/geojson/featurecollection.ts index 39511a6..e939116 100644 --- a/src/ts/geojson/featurecollection.ts +++ b/src/ts/geojson/featurecollection.ts @@ -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' diff --git a/src/ts/geojson/geometry.ts b/src/ts/geojson/geometry.ts index cc5a15c..6fac840 100644 --- a/src/ts/geojson/geometry.ts +++ b/src/ts/geojson/geometry.ts @@ -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' diff --git a/src/ts/geometry-type.ts b/src/ts/geometry-type.ts new file mode 100644 index 0000000..84f3ffc --- /dev/null +++ b/src/ts/geometry-type.ts @@ -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 +} + diff --git a/src/ts/geometry.ts b/src/ts/geometry.ts new file mode 100644 index 0000000..97ae40c --- /dev/null +++ b/src/ts/geometry.ts @@ -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); +} +} diff --git a/src/ts/header.ts b/src/ts/header.ts new file mode 100644 index 0000000..c218691 --- /dev/null +++ b/src/ts/header.ts @@ -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); +} + +} diff --git a/src/ts/header_generated.ts b/src/ts/header_generated.ts deleted file mode 100644 index 14e305e..0000000 --- a/src/ts/header_generated.ts +++ /dev/null @@ -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. 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. 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); -} -} diff --git a/src/ts/ol/feature.ts b/src/ts/ol/feature.ts index afc8995..5c4175d 100644 --- a/src/ts/ol/feature.ts +++ b/src/ts/ol/feature.ts @@ -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' diff --git a/src/ts/ol/geometry.ts b/src/ts/ol/geometry.ts index 27a693b..c053e1e 100644 --- a/src/ts/ol/geometry.ts +++ b/src/ts/ol/geometry.ts @@ -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' diff --git a/yarn.lock b/yarn.lock index 8699d19..d2606ce 100644 --- a/yarn.lock +++ b/yarn.lock @@ -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"