Load latest record by default when selecting level 2 product

This commit is contained in:
Dan Paulat 2022-05-29 17:39:38 -05:00
parent b9531149de
commit ccfceb6605

View file

@ -498,9 +498,18 @@ std::shared_ptr<types::RadarProductRecord>
RadarProductManagerImpl::GetLevel2ProductRecord(
std::chrono::system_clock::time_point time)
{
std::shared_ptr<types::RadarProductRecord> record;
if (!level2ProductRecords_.empty() &&
time == std::chrono::system_clock::time_point {})
{
// If a default-initialized time point is given, return the latest record
record = level2ProductRecords_.rbegin()->second;
}
else
{
// TODO: Round to minutes
std::shared_ptr<types::RadarProductRecord> record =
util::GetBoundedElementValue(level2ProductRecords_, time);
record = util::GetBoundedElementValue(level2ProductRecords_, time);
// Does the record contain the time we are looking for?
if (record != nullptr && (time < record->level2_file()->start_time() ||
@ -508,6 +517,7 @@ RadarProductManagerImpl::GetLevel2ProductRecord(
{
record = nullptr;
}
}
return record;
}