dbschemaextra

package
v0.9.0 Latest Latest
Warning

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

Go to latest
Published: Dec 28, 2024 License: GPL-2.0 Imports: 2 Imported by: 0

Documentation

Overview

Package dbschemaextra defines the Mobsql SchemaExtra struct that Mobroute uses. This struct is used in Mobsql initializing in apirtinit.RTInitialize and contains global views & computed tables that build upon the core GTFS tables.

Index

Constants

This section is empty.

Variables

View Source
var MobsqlSchemaExtra = mobsql.SchemaExtra{
	InitExec: pragmas,
	Views: []mobsql.View{
		{Name: "_vstopparent", Doc: "Mapping of stops to their parent stops", SQLCreateStatement: SQL_vstopparent},
		{Name: "_vconn", Doc: "CSA timetable", SQLCreateStatement: SQL_vconn},
		{Name: "_vconnverbose", Doc: "CSA timetable (with verbose joins)", SQLCreateStatement: SQL_vconnverbose},
		{Name: "_vcaltoservice", Doc: "Maps calendar dates individually to valid service id", SQLCreateStatement: SQL_vcaltoservice},
		{Name: "_vtransferstbl", Doc: "Transfers table added with from/to idu (parents)", SQLCreateStatement: SQL_vtransferstbl},
		{Name: "_vtransfersgen", Doc: "Transfers table generated from stops self-join", SQLCreateStatement: SQL_vtransfersgen},
		{Name: "_vtransfersimplicit ", Doc: "Implicit transfers ", SQLCreateStatement: SQL_vtransfersimplicit},
	},
	TablesComputed: []mobsql.ComputedTable{
		{

			SQLSelectView: `_vconn`,
			Doc:           `Core timetable`,
			CacheOnTables: []string{"stop_times", "trips", "stops", "routes"},
			TableSpec: mobsql.TableSpec{
				Table: "_ctconn",
				Indexes: [][]string{

					{"feed_id", "service_id", "from_stop_time"},

					{"feed_id", "from_stop_parent_uid", "from_stop_time"},
				},
				Columns: []mobsql.LoadColumn{
					{Column: "feed_id", DType: mobsql.DTypeInt, Required: true},
					{Column: "trip_id", DType: mobsql.DTypeText, Required: true},
					{Column: "service_id", DType: mobsql.DTypeText, Required: true},
					{Column: "from_stop_id", DType: mobsql.DTypeText, Required: true},
					{Column: "from_stop_parent_id", DType: mobsql.DTypeText, Required: true},
					{Column: "from_stop_parent_uid", DType: mobsql.DTypeText, Required: true},
					{Column: "from_stop_time", DType: mobsql.DTypeInt, Required: true},
					{Column: "from_stop_sequence", DType: mobsql.DTypeInt, Required: true},
					{Column: "to_stop_id", DType: mobsql.DTypeText, Required: true},
					{Column: "to_stop_parent_id", DType: mobsql.DTypeText, Required: true},
					{Column: "to_stop_parent_uid", DType: mobsql.DTypeText, Required: true},
					{Column: "to_stop_time", DType: mobsql.DTypeInt, Required: true},
					{Column: "to_stop_sequence", DType: mobsql.DTypeInt, Required: true},
				},
			},
		},
		{
			SQLSelectView: "_vcaltoservice",
			Doc:           "Maps each calendar day to its services",
			FeedPair:      false,
			CacheOnTables: []string{"stops"},
			TableSpec: mobsql.TableSpec{
				Table: "_ctcaltoservice",
				Indexes: [][]string{

					{"feed_id", "service_id", "service_date"},

					{"feed_id", "service_date"},
				},
				Columns: []mobsql.LoadColumn{
					{Column: "feed_id", DType: mobsql.DTypeInt, Required: true},
					{Column: "service_date", DType: mobsql.DTypeInt, Required: true},
					{Column: "service_id", DType: mobsql.DTypeText, Required: true},
				},
			},
		},
		{
			SQLSelectView: "_vtransfersgen",
			SQLInit:       SQL_vtransfersgen_init,
			SQLDeinit:     SQL_vtransfersgen_deinit,
			Doc:           "Generated transfers based on distances of stops",
			FeedPair:      true,
			CacheOnTables: []string{"stops"},
			TableSpec: mobsql.TableSpec{
				Table: "_cttransfersgen",
				Columns: []mobsql.LoadColumn{
					{Column: "feed_id", DType: mobsql.DTypeInt, Required: true},
					{Column: "feed_id_pair", DType: mobsql.DTypeInt, Required: true},
					{Column: "from_stop_id", DType: mobsql.DTypeText, Required: true},
					{Column: "to_stop_id", DType: mobsql.DTypeText, Required: true},
					{Column: "from_stop_parent_id", DType: mobsql.DTypeText, Required: true},
					{Column: "to_stop_parent_id", DType: mobsql.DTypeText, Required: true},
					{Column: "from_stop_parent_uid", DType: mobsql.DTypeText, Required: true},
					{Column: "to_stop_parent_uid", DType: mobsql.DTypeText, Required: true},
					{Column: "dist_km", DType: mobsql.DTypeReal},
				},
			},
		},
	},
}
View Source
var SQL_vcaltoservice string
View Source
var SQL_vconn string
View Source
var SQL_vconnverbose string
View Source
var SQL_vstopparent string
View Source
var SQL_vtransfersgen string
View Source
var SQL_vtransfersgen_deinit string
View Source
var SQL_vtransfersgen_init string
View Source
var SQL_vtransfersimplicit string
View Source
var SQL_vtransferstbl string

Functions

This section is empty.

Types

This section is empty.

Jump to

Keyboard shortcuts

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