
Build crossings + barriers_* tables from primitives
Source:R/lnk_pipeline_crossings.R
lnk_pipeline_crossings.RdComposes the lean primitives-build for one AOI:
Usage
lnk_pipeline_crossings(
conn,
aoi,
cfg,
loaded,
schema,
snap_tolerance = 100,
pscis_table = "whse_fish.pscis_assessment_svw",
modelled_table = "fresh.modelled_stream_crossings",
dams_table = paste0(schema, ".dams")
)Arguments
- conn
A DBI connection.
- aoi
Watershed group code, e.g.
"ADMS".- cfg
An
lnk_configobject. Currently unused; reserved for future config-driven knobs (snap tolerance, edge-type exclusions).- loaded
Named list from
lnk_load_overrides(). Currently unused directly (overrides already staged bylnk_pipeline_load()); kept in the signature for pipeline consistency.- schema
Working schema name (e.g.
"working_adms"). Must be pre-created vialnk_pipeline_setup().- snap_tolerance
Maximum PSCIS snap distance in metres. Default
100(matches bcfp).- pscis_table
Source table for PSCIS assessments. Default
"whse_fish.pscis_assessment_svw"— the canonical BCDC view.- modelled_table
Source table for modelled stream crossings. Default
"fresh.modelled_stream_crossings"— populated bydata-raw/snapshot_bcfp.sh(link#137). Province-wide; the AOI filter is applied during the union.- dams_table
Source table for CABD dams. Default
paste0(schema, ".dams")— produced per-AOI bylnk_pipeline_prepare().
Details
lnk_inputs_verify()— required source tables present (PSCIS, dams, modelled_stream_crossings already loaded bydata-raw/snapshot_bcfp.sh).lnk_points_snap()— snap PSCIS assessments to FWA via lateral KNN..lnk_crossings_union()— UNION ALL of PSCIS + CABD + modelled sources into<schema>.crossings(lean column set)..lnk_crossings_apply_overrides()— apply user_pscis_barrier_statususer_modelled_crossing_fixes from staging tables loaded by
lnk_pipeline_load().
lnk_barriers_emit()— emit<schema>.crossings_lookup+ four<schema>.barriers_*tables (filtered SELECTs).
Outputs feed lnk_pipeline_access(barrier_sources = list(...)).
Required pre-loaded tables (verified by lnk_inputs_verify() up-front):
whse_fish.pscis_assessment_svw— BCDC PSCIS via Pythonbcdata bc2pg.<schema>.modelled_stream_crossings— bchamp gpkg via curl + ogr2ogr.<schema>.dams— produced bylnk_pipeline_prepare()from CABD.
All three are loaded by data-raw/snapshot_bcfp.sh (link#137) +
lnk_pipeline_prepare() for the dams step.
Output tables:
<schema>.crossings— lean union (id + source + statuses + network position + geom).<schema>.crossings_lookup— slim id + statuses projection.<schema>.barriers_anthropogenic,<schema>.barriers_pscis,<schema>.barriers_dams,<schema>.barriers_remediations— filtered SELECTs ready forlnk_pipeline_access(barrier_sources = list(...)).
See also
lnk_inputs_verify(), lnk_points_snap(), lnk_barriers_emit(),
lnk_pipeline_access()
Other pipeline:
lnk_pipeline_access(),
lnk_pipeline_break(),
lnk_pipeline_classify(),
lnk_pipeline_connect(),
lnk_pipeline_load(),
lnk_pipeline_mapping_code(),
lnk_pipeline_prepare(),
lnk_pipeline_run(),
lnk_pipeline_setup(),
lnk_pipeline_species(),
lnk_presence()
Examples
if (FALSE) { # \dontrun{
conn <- lnk_db_conn()
cfg <- lnk_config("default")
loaded <- lnk_load_overrides(cfg)
lnk_pipeline_setup(conn, schema = "working_adms")
lnk_pipeline_load(conn, "ADMS", cfg, loaded, "working_adms")
lnk_pipeline_prepare(conn, "ADMS", cfg, loaded, "working_adms",
conn_tunnel = conn) # cabd.dams loaded locally per #137
lnk_pipeline_crossings(conn, "ADMS", cfg, loaded, "working_adms")
# Inspect.
DBI::dbReadTable(conn, c("working_adms", "crossings_lookup"))
DBI::dbReadTable(conn, c("working_adms", "barriers_anthropogenic"))
} # }