summaryrefslogtreecommitdiff
path: root/lib/Travel/Routing/DE/HAFAS/Connection/Section.pm
diff options
context:
space:
mode:
authorBirte Kristina Friesel <derf@finalrewind.org>2023-11-17 22:23:40 +0100
committerBirte Kristina Friesel <derf@finalrewind.org>2023-11-17 22:23:40 +0100
commit06715210605df16181cf43c7c60cd39678a95c01 (patch)
treea0afbc4ae79b667fb550b22ebce0620180ac36dd /lib/Travel/Routing/DE/HAFAS/Connection/Section.pm
parent692c8d22b3e55fe0b8dbf7defcada9f8d31f0a8e (diff)
Section: parse load data
Diffstat (limited to 'lib/Travel/Routing/DE/HAFAS/Connection/Section.pm')
-rw-r--r--lib/Travel/Routing/DE/HAFAS/Connection/Section.pm15
1 files changed, 14 insertions, 1 deletions
diff --git a/lib/Travel/Routing/DE/HAFAS/Connection/Section.pm b/lib/Travel/Routing/DE/HAFAS/Connection/Section.pm
index 50e3ff1..375398b 100644
--- a/lib/Travel/Routing/DE/HAFAS/Connection/Section.pm
+++ b/lib/Travel/Routing/DE/HAFAS/Connection/Section.pm
@@ -72,7 +72,12 @@ sub new {
}
}
- # TODO load
+ my $tco = {};
+ for my $tco_id ( @{ $sec->{jny}{dTrnCmpSX}{tcocX} // [] } ) {
+ my $tco_kv = $opt{common}{tcocL}[$tco_id];
+ $tco->{ $tco_kv->{c} } = $tco_kv->{r};
+ }
+
# TODO operator
my $ref = {
@@ -89,6 +94,7 @@ sub new {
arr_platform => $sec->{arr}{aplatfR} // $sec->{arr}{aPlatfS},
dep_cancelled => $sec->{dep}{dCncl},
arr_cancelled => $sec->{arr}{aCncl},
+ load => $tco,
messages => \@messages,
};
@@ -286,6 +292,13 @@ The line identifier may be a single number such as "11" (underground train line
U 11), a single word such as "AIR" or a combination (e.g. "SB16"). May also
provide line numbers of IC/ICE services.
+=item $sec->load
+
+Maximum expected occupancy along this section.
+Returns a hashref with keys FIRST and SECOND; each value ranges from 1
+(low occupancy) to 4 (fully booked).
+Returns undef if occupancy data is not available.
+
=item $section->messages
List of Travel::Status::DE::HAFAS::Message(3pm) objects associated with this