OSMPBF

package
v0.0.0-...-1ed960e Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 23, 2017 License: MIT Imports: 3 Imported by: 1

README

*.proto files were downloaded from https://github.com/scrosby/OSM-binary/tree/master/src and changed in following ways:

  • To eliminate continuous conversions from []byte to string, this
message StringTable {
   repeated bytes s = 1;
}

was changed to

message StringTable {
   repeated string s = 1;
}

This changes is expected to be fully compatible with all PBF files.

Documentation

Overview

Package OSMPBF is a generated protocol buffer package.

It is generated from these files:

fileformat.proto
osmformat.proto

It has these top-level messages:

Blob
BlobHeader

Index

Constants

View Source
const Default_Info_Version int32 = -1
View Source
const Default_PrimitiveBlock_DateGranularity int32 = 1000
View Source
const Default_PrimitiveBlock_Granularity int32 = 100
View Source
const Default_PrimitiveBlock_LatOffset int64 = 0
View Source
const Default_PrimitiveBlock_LonOffset int64 = 0

Variables

View Source
var Relation_MemberType_name = map[int32]string{
	0: "NODE",
	1: "WAY",
	2: "RELATION",
}
View Source
var Relation_MemberType_value = map[string]int32{
	"NODE":     0,
	"WAY":      1,
	"RELATION": 2,
}

Functions

This section is empty.

Types

type Blob

type Blob struct {
	Raw     []byte `protobuf:"bytes,1,opt,name=raw" json:"raw,omitempty"`
	RawSize *int32 `protobuf:"varint,2,opt,name=raw_size" json:"raw_size,omitempty"`
	// Possible compressed versions of the data.
	ZlibData []byte `protobuf:"bytes,3,opt,name=zlib_data" json:"zlib_data,omitempty"`
	// PROPOSED feature for LZMA compressed data. SUPPORT IS NOT REQUIRED.
	LzmaData []byte `protobuf:"bytes,4,opt,name=lzma_data" json:"lzma_data,omitempty"`
	// Formerly used for bzip2 compressed data. Depreciated in 2010.
	OBSOLETEBzip2Data []byte `protobuf:"bytes,5,opt,name=OBSOLETE_bzip2_data" json:"OBSOLETE_bzip2_data,omitempty"`
	XXX_unrecognized  []byte `json:"-"`
}

func (*Blob) GetLzmaData

func (m *Blob) GetLzmaData() []byte

func (*Blob) GetOBSOLETEBzip2Data

func (m *Blob) GetOBSOLETEBzip2Data() []byte

func (*Blob) GetRaw

func (m *Blob) GetRaw() []byte

func (*Blob) GetRawSize

func (m *Blob) GetRawSize() int32

func (*Blob) GetZlibData

func (m *Blob) GetZlibData() []byte

func (*Blob) ProtoMessage

func (*Blob) ProtoMessage()

func (*Blob) Reset

func (m *Blob) Reset()

func (*Blob) String

func (m *Blob) String() string

type BlobHeader

type BlobHeader struct {
	Type             *string `protobuf:"bytes,1,req,name=type" json:"type,omitempty"`
	Indexdata        []byte  `protobuf:"bytes,2,opt,name=indexdata" json:"indexdata,omitempty"`
	Datasize         *int32  `protobuf:"varint,3,req,name=datasize" json:"datasize,omitempty"`
	XXX_unrecognized []byte  `json:"-"`
}

func (*BlobHeader) GetDatasize

func (m *BlobHeader) GetDatasize() int32

func (*BlobHeader) GetIndexdata

func (m *BlobHeader) GetIndexdata() []byte

func (*BlobHeader) GetType

func (m *BlobHeader) GetType() string

func (*BlobHeader) ProtoMessage

func (*BlobHeader) ProtoMessage()

func (*BlobHeader) Reset

func (m *BlobHeader) Reset()

func (*BlobHeader) String

func (m *BlobHeader) String() string

type ChangeSet

type ChangeSet struct {
	Id               *int64 `protobuf:"varint,1,req,name=id" json:"id,omitempty"`
	XXX_unrecognized []byte `json:"-"`
}

THIS IS STUB DESIGN FOR CHANGESETS. NOT USED RIGHT NOW. TODO: REMOVE THIS?

func (*ChangeSet) GetId

func (m *ChangeSet) GetId() int64

func (*ChangeSet) ProtoMessage

func (*ChangeSet) ProtoMessage()

func (*ChangeSet) Reset

func (m *ChangeSet) Reset()

func (*ChangeSet) String

func (m *ChangeSet) String() string

type DenseInfo

type DenseInfo struct {
	Version   []int32 `protobuf:"varint,1,rep,packed,name=version" json:"version,omitempty"`
	Timestamp []int64 `protobuf:"zigzag64,2,rep,packed,name=timestamp" json:"timestamp,omitempty"`
	Changeset []int64 `protobuf:"zigzag64,3,rep,packed,name=changeset" json:"changeset,omitempty"`
	Uid       []int32 `protobuf:"zigzag32,4,rep,packed,name=uid" json:"uid,omitempty"`
	UserSid   []int32 `protobuf:"zigzag32,5,rep,packed,name=user_sid" json:"user_sid,omitempty"`
	// The visible flag is used to store history information. It indicates that
	// the current object version has been created by a delete operation on the
	// OSM API.
	// When a writer sets this flag, it MUST add a required_features tag with
	// value "HistoricalInformation" to the HeaderBlock.
	// If this flag is not available for some object it MUST be assumed to be
	// true if the file has the required_features tag "HistoricalInformation"
	// set.
	Visible          []bool `protobuf:"varint,6,rep,packed,name=visible" json:"visible,omitempty"`
	XXX_unrecognized []byte `json:"-"`
}

* Optional metadata that may be included into each primitive. Special dense format used in DenseNodes.

func (*DenseInfo) GetChangeset

func (m *DenseInfo) GetChangeset() []int64

func (*DenseInfo) GetTimestamp

func (m *DenseInfo) GetTimestamp() []int64

func (*DenseInfo) GetUid

func (m *DenseInfo) GetUid() []int32

func (*DenseInfo) GetUserSid

func (m *DenseInfo) GetUserSid() []int32

func (*DenseInfo) GetVersion

func (m *DenseInfo) GetVersion() []int32

func (*DenseInfo) GetVisible

func (m *DenseInfo) GetVisible() []bool

func (*DenseInfo) ProtoMessage

func (*DenseInfo) ProtoMessage()

func (*DenseInfo) Reset

func (m *DenseInfo) Reset()

func (*DenseInfo) String

func (m *DenseInfo) String() string

type DenseNodes

type DenseNodes struct {
	Id []int64 `protobuf:"zigzag64,1,rep,packed,name=id" json:"id,omitempty"`
	// repeated Info info = 4;
	Denseinfo *DenseInfo `protobuf:"bytes,5,opt,name=denseinfo" json:"denseinfo,omitempty"`
	Lat       []int64    `protobuf:"zigzag64,8,rep,packed,name=lat" json:"lat,omitempty"`
	Lon       []int64    `protobuf:"zigzag64,9,rep,packed,name=lon" json:"lon,omitempty"`
	// Special packing of keys and vals into one array. May be empty if all nodes in this block are tagless.
	KeysVals         []int32 `protobuf:"varint,10,rep,packed,name=keys_vals" json:"keys_vals,omitempty"`
	XXX_unrecognized []byte  `json:"-"`
}

func (*DenseNodes) GetDenseinfo

func (m *DenseNodes) GetDenseinfo() *DenseInfo

func (*DenseNodes) GetId

func (m *DenseNodes) GetId() []int64

func (*DenseNodes) GetKeysVals

func (m *DenseNodes) GetKeysVals() []int32

func (*DenseNodes) GetLat

func (m *DenseNodes) GetLat() []int64

func (*DenseNodes) GetLon

func (m *DenseNodes) GetLon() []int64

func (*DenseNodes) ProtoMessage

func (*DenseNodes) ProtoMessage()

func (*DenseNodes) Reset

func (m *DenseNodes) Reset()

func (*DenseNodes) String

func (m *DenseNodes) String() string

type HeaderBBox

type HeaderBBox struct {
	Left             *int64 `protobuf:"zigzag64,1,req,name=left" json:"left,omitempty"`
	Right            *int64 `protobuf:"zigzag64,2,req,name=right" json:"right,omitempty"`
	Top              *int64 `protobuf:"zigzag64,3,req,name=top" json:"top,omitempty"`
	Bottom           *int64 `protobuf:"zigzag64,4,req,name=bottom" json:"bottom,omitempty"`
	XXX_unrecognized []byte `json:"-"`
}

func (*HeaderBBox) GetBottom

func (m *HeaderBBox) GetBottom() int64

func (*HeaderBBox) GetLeft

func (m *HeaderBBox) GetLeft() int64

func (*HeaderBBox) GetRight

func (m *HeaderBBox) GetRight() int64

func (*HeaderBBox) GetTop

func (m *HeaderBBox) GetTop() int64

func (*HeaderBBox) ProtoMessage

func (*HeaderBBox) ProtoMessage()

func (*HeaderBBox) Reset

func (m *HeaderBBox) Reset()

func (*HeaderBBox) String

func (m *HeaderBBox) String() string

type HeaderBlock

type HeaderBlock struct {
	Bbox *HeaderBBox `protobuf:"bytes,1,opt,name=bbox" json:"bbox,omitempty"`
	// Additional tags to aid in parsing this dataset
	RequiredFeatures []string `protobuf:"bytes,4,rep,name=required_features" json:"required_features,omitempty"`
	OptionalFeatures []string `protobuf:"bytes,5,rep,name=optional_features" json:"optional_features,omitempty"`
	Writingprogram   *string  `protobuf:"bytes,16,opt,name=writingprogram" json:"writingprogram,omitempty"`
	Source           *string  `protobuf:"bytes,17,opt,name=source" json:"source,omitempty"`
	// replication timestamp, expressed in seconds since the epoch,
	// otherwise the same value as in the "timestamp=..." field
	// in the state.txt file used by Osmosis
	OsmosisReplicationTimestamp *int64 `protobuf:"varint,32,opt,name=osmosis_replication_timestamp" json:"osmosis_replication_timestamp,omitempty"`
	// replication sequence number (sequenceNumber in state.txt)
	OsmosisReplicationSequenceNumber *int64 `protobuf:"varint,33,opt,name=osmosis_replication_sequence_number" json:"osmosis_replication_sequence_number,omitempty"`
	// replication base URL (from Osmosis' configuration.txt file)
	OsmosisReplicationBaseUrl *string `protobuf:"bytes,34,opt,name=osmosis_replication_base_url" json:"osmosis_replication_base_url,omitempty"`
	XXX_unrecognized          []byte  `json:"-"`
}

func (*HeaderBlock) GetBbox

func (m *HeaderBlock) GetBbox() *HeaderBBox

func (*HeaderBlock) GetOptionalFeatures

func (m *HeaderBlock) GetOptionalFeatures() []string

func (*HeaderBlock) GetOsmosisReplicationBaseUrl

func (m *HeaderBlock) GetOsmosisReplicationBaseUrl() string

func (*HeaderBlock) GetOsmosisReplicationSequenceNumber

func (m *HeaderBlock) GetOsmosisReplicationSequenceNumber() int64

func (*HeaderBlock) GetOsmosisReplicationTimestamp

func (m *HeaderBlock) GetOsmosisReplicationTimestamp() int64

func (*HeaderBlock) GetRequiredFeatures

func (m *HeaderBlock) GetRequiredFeatures() []string

func (*HeaderBlock) GetSource

func (m *HeaderBlock) GetSource() string

func (*HeaderBlock) GetWritingprogram

func (m *HeaderBlock) GetWritingprogram() string

func (*HeaderBlock) ProtoMessage

func (*HeaderBlock) ProtoMessage()

func (*HeaderBlock) Reset

func (m *HeaderBlock) Reset()

func (*HeaderBlock) String

func (m *HeaderBlock) String() string

type Info

type Info struct {
	Version   *int32  `protobuf:"varint,1,opt,name=version,def=-1" json:"version,omitempty"`
	Timestamp *int64  `protobuf:"varint,2,opt,name=timestamp" json:"timestamp,omitempty"`
	Changeset *int64  `protobuf:"varint,3,opt,name=changeset" json:"changeset,omitempty"`
	Uid       *int32  `protobuf:"varint,4,opt,name=uid" json:"uid,omitempty"`
	UserSid   *uint32 `protobuf:"varint,5,opt,name=user_sid" json:"user_sid,omitempty"`
	// The visible flag is used to store history information. It indicates that
	// the current object version has been created by a delete operation on the
	// OSM API.
	// When a writer sets this flag, it MUST add a required_features tag with
	// value "HistoricalInformation" to the HeaderBlock.
	// If this flag is not available for some object it MUST be assumed to be
	// true if the file has the required_features tag "HistoricalInformation"
	// set.
	Visible          *bool  `protobuf:"varint,6,opt,name=visible" json:"visible,omitempty"`
	XXX_unrecognized []byte `json:"-"`
}

Optional metadata that may be included into each primitive.

func (*Info) GetChangeset

func (m *Info) GetChangeset() int64

func (*Info) GetTimestamp

func (m *Info) GetTimestamp() int64

func (*Info) GetUid

func (m *Info) GetUid() int32

func (*Info) GetUserSid

func (m *Info) GetUserSid() uint32

func (*Info) GetVersion

func (m *Info) GetVersion() int32

func (*Info) GetVisible

func (m *Info) GetVisible() bool

func (*Info) ProtoMessage

func (*Info) ProtoMessage()

func (*Info) Reset

func (m *Info) Reset()

func (*Info) String

func (m *Info) String() string

type Node

type Node struct {
	Id *int64 `protobuf:"zigzag64,1,req,name=id" json:"id,omitempty"`
	// Parallel arrays.
	Keys             []uint32 `protobuf:"varint,2,rep,packed,name=keys" json:"keys,omitempty"`
	Vals             []uint32 `protobuf:"varint,3,rep,packed,name=vals" json:"vals,omitempty"`
	Info             *Info    `protobuf:"bytes,4,opt,name=info" json:"info,omitempty"`
	Lat              *int64   `protobuf:"zigzag64,8,req,name=lat" json:"lat,omitempty"`
	Lon              *int64   `protobuf:"zigzag64,9,req,name=lon" json:"lon,omitempty"`
	XXX_unrecognized []byte   `json:"-"`
}

func (*Node) GetId

func (m *Node) GetId() int64

func (*Node) GetInfo

func (m *Node) GetInfo() *Info

func (*Node) GetKeys

func (m *Node) GetKeys() []uint32

func (*Node) GetLat

func (m *Node) GetLat() int64

func (*Node) GetLon

func (m *Node) GetLon() int64

func (*Node) GetVals

func (m *Node) GetVals() []uint32

func (*Node) ProtoMessage

func (*Node) ProtoMessage()

func (*Node) Reset

func (m *Node) Reset()

func (*Node) String

func (m *Node) String() string

type PrimitiveBlock

type PrimitiveBlock struct {
	Stringtable    *StringTable      `protobuf:"bytes,1,req,name=stringtable" json:"stringtable,omitempty"`
	Primitivegroup []*PrimitiveGroup `protobuf:"bytes,2,rep,name=primitivegroup" json:"primitivegroup,omitempty"`
	// Granularity, units of nanodegrees, used to store coordinates in this block
	Granularity *int32 `protobuf:"varint,17,opt,name=granularity,def=100" json:"granularity,omitempty"`
	// Offset value between the output coordinates coordinates and the granularity grid in unites of nanodegrees.
	LatOffset *int64 `protobuf:"varint,19,opt,name=lat_offset,def=0" json:"lat_offset,omitempty"`
	LonOffset *int64 `protobuf:"varint,20,opt,name=lon_offset,def=0" json:"lon_offset,omitempty"`
	// Granularity of dates, normally represented in units of milliseconds since the 1970 epoch.
	DateGranularity  *int32 `protobuf:"varint,18,opt,name=date_granularity,def=1000" json:"date_granularity,omitempty"`
	XXX_unrecognized []byte `json:"-"`
}

func (*PrimitiveBlock) GetDateGranularity

func (m *PrimitiveBlock) GetDateGranularity() int32

func (*PrimitiveBlock) GetGranularity

func (m *PrimitiveBlock) GetGranularity() int32

func (*PrimitiveBlock) GetLatOffset

func (m *PrimitiveBlock) GetLatOffset() int64

func (*PrimitiveBlock) GetLonOffset

func (m *PrimitiveBlock) GetLonOffset() int64

func (*PrimitiveBlock) GetPrimitivegroup

func (m *PrimitiveBlock) GetPrimitivegroup() []*PrimitiveGroup

func (*PrimitiveBlock) GetStringtable

func (m *PrimitiveBlock) GetStringtable() *StringTable

func (*PrimitiveBlock) ProtoMessage

func (*PrimitiveBlock) ProtoMessage()

func (*PrimitiveBlock) Reset

func (m *PrimitiveBlock) Reset()

func (*PrimitiveBlock) String

func (m *PrimitiveBlock) String() string

type PrimitiveGroup

type PrimitiveGroup struct {
	Nodes            []*Node      `protobuf:"bytes,1,rep,name=nodes" json:"nodes,omitempty"`
	Dense            *DenseNodes  `protobuf:"bytes,2,opt,name=dense" json:"dense,omitempty"`
	Ways             []*Way       `protobuf:"bytes,3,rep,name=ways" json:"ways,omitempty"`
	Relations        []*Relation  `protobuf:"bytes,4,rep,name=relations" json:"relations,omitempty"`
	Changesets       []*ChangeSet `protobuf:"bytes,5,rep,name=changesets" json:"changesets,omitempty"`
	XXX_unrecognized []byte       `json:"-"`
}

Group of OSMPrimitives. All primitives in a group must be the same type.

func (*PrimitiveGroup) GetChangesets

func (m *PrimitiveGroup) GetChangesets() []*ChangeSet

func (*PrimitiveGroup) GetDense

func (m *PrimitiveGroup) GetDense() *DenseNodes

func (*PrimitiveGroup) GetNodes

func (m *PrimitiveGroup) GetNodes() []*Node

func (*PrimitiveGroup) GetRelations

func (m *PrimitiveGroup) GetRelations() []*Relation

func (*PrimitiveGroup) GetWays

func (m *PrimitiveGroup) GetWays() []*Way

func (*PrimitiveGroup) ProtoMessage

func (*PrimitiveGroup) ProtoMessage()

func (*PrimitiveGroup) Reset

func (m *PrimitiveGroup) Reset()

func (*PrimitiveGroup) String

func (m *PrimitiveGroup) String() string

type Relation

type Relation struct {
	Id *int64 `protobuf:"varint,1,req,name=id" json:"id,omitempty"`
	// Parallel arrays.
	Keys []uint32 `protobuf:"varint,2,rep,packed,name=keys" json:"keys,omitempty"`
	Vals []uint32 `protobuf:"varint,3,rep,packed,name=vals" json:"vals,omitempty"`
	Info *Info    `protobuf:"bytes,4,opt,name=info" json:"info,omitempty"`
	// Parallel arrays
	RolesSid         []int32               `protobuf:"varint,8,rep,packed,name=roles_sid" json:"roles_sid,omitempty"`
	Memids           []int64               `protobuf:"zigzag64,9,rep,packed,name=memids" json:"memids,omitempty"`
	Types            []Relation_MemberType `protobuf:"varint,10,rep,packed,name=types,enum=OSMPBF.Relation_MemberType" json:"types,omitempty"`
	XXX_unrecognized []byte                `json:"-"`
}

func (*Relation) GetId

func (m *Relation) GetId() int64

func (*Relation) GetInfo

func (m *Relation) GetInfo() *Info

func (*Relation) GetKeys

func (m *Relation) GetKeys() []uint32

func (*Relation) GetMemids

func (m *Relation) GetMemids() []int64

func (*Relation) GetRolesSid

func (m *Relation) GetRolesSid() []int32

func (*Relation) GetTypes

func (m *Relation) GetTypes() []Relation_MemberType

func (*Relation) GetVals

func (m *Relation) GetVals() []uint32

func (*Relation) ProtoMessage

func (*Relation) ProtoMessage()

func (*Relation) Reset

func (m *Relation) Reset()

func (*Relation) String

func (m *Relation) String() string

type Relation_MemberType

type Relation_MemberType int32
const (
	Relation_NODE     Relation_MemberType = 0
	Relation_WAY      Relation_MemberType = 1
	Relation_RELATION Relation_MemberType = 2
)

func (Relation_MemberType) Enum

func (Relation_MemberType) String

func (x Relation_MemberType) String() string

func (*Relation_MemberType) UnmarshalJSON

func (x *Relation_MemberType) UnmarshalJSON(data []byte) error

type StringTable

type StringTable struct {
	S                []string `protobuf:"bytes,1,rep,name=s" json:"s,omitempty"`
	XXX_unrecognized []byte   `json:"-"`
}

* String table, contains the common strings in each block.

Note that we reserve index '0' as a delimiter, so the entry at that index in the table is ALWAYS blank and unused.

func (*StringTable) GetS

func (m *StringTable) GetS() []string

func (*StringTable) ProtoMessage

func (*StringTable) ProtoMessage()

func (*StringTable) Reset

func (m *StringTable) Reset()

func (*StringTable) String

func (m *StringTable) String() string

type Way

type Way struct {
	Id *int64 `protobuf:"varint,1,req,name=id" json:"id,omitempty"`
	// Parallel arrays.
	Keys             []uint32 `protobuf:"varint,2,rep,packed,name=keys" json:"keys,omitempty"`
	Vals             []uint32 `protobuf:"varint,3,rep,packed,name=vals" json:"vals,omitempty"`
	Info             *Info    `protobuf:"bytes,4,opt,name=info" json:"info,omitempty"`
	Refs             []int64  `protobuf:"zigzag64,8,rep,packed,name=refs" json:"refs,omitempty"`
	XXX_unrecognized []byte   `json:"-"`
}

func (*Way) GetId

func (m *Way) GetId() int64

func (*Way) GetInfo

func (m *Way) GetInfo() *Info

func (*Way) GetKeys

func (m *Way) GetKeys() []uint32

func (*Way) GetRefs

func (m *Way) GetRefs() []int64

func (*Way) GetVals

func (m *Way) GetVals() []uint32

func (*Way) ProtoMessage

func (*Way) ProtoMessage()

func (*Way) Reset

func (m *Way) Reset()

func (*Way) String

func (m *Way) String() string

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL