Level 3 interface updates

This commit is contained in:
Dan Paulat 2022-04-06 00:06:18 -05:00
parent c7b5a659ab
commit 98531f6b56
6 changed files with 35 additions and 8 deletions

View file

@ -108,6 +108,22 @@ size_t DigitalRadialDataArrayPacket::data_size() const
return p->dataSize_;
}
float DigitalRadialDataArrayPacket::start_angle(uint16_t r) const
{
return p->radial_[r].startAngle_ * 0.1f;
}
float DigitalRadialDataArrayPacket::delta_angle(uint16_t r) const
{
return p->radial_[r].deltaAngle_ * 0.1f;
}
const std::vector<uint8_t>&
DigitalRadialDataArrayPacket::level(uint16_t r) const
{
return p->radial_[r].level_;
}
bool DigitalRadialDataArrayPacket::Parse(std::istream& is)
{
bool blockValid = true;
@ -143,6 +159,13 @@ bool DigitalRadialDataArrayPacket::Parse(std::istream& is)
<< logPrefix_ << "Invalid packet code: " << p->packetCode_;
blockValid = false;
}
if (p->indexOfFirstRangeBin_ < 0 || p->indexOfFirstRangeBin_ > 230)
{
BOOST_LOG_TRIVIAL(warning)
<< logPrefix_
<< "Invalid index of first range bin: " << p->indexOfFirstRangeBin_;
blockValid = false;
}
if (p->numberOfRangeBins_ < 0 || p->numberOfRangeBins_ > 1840)
{
BOOST_LOG_TRIVIAL(warning)

View file

@ -104,14 +104,14 @@ int16_t ProductDescriptionBlock::block_divider() const
return p->blockDivider_;
}
int32_t ProductDescriptionBlock::latitude_of_radar() const
float ProductDescriptionBlock::latitude_of_radar() const
{
return p->latitudeOfRadar_;
return p->latitudeOfRadar_ * 0.001f;
}
int32_t ProductDescriptionBlock::longitude_of_radar() const
float ProductDescriptionBlock::longitude_of_radar() const
{
return p->longitudeOfRadar_;
return p->longitudeOfRadar_ * 0.001f;
}
int16_t ProductDescriptionBlock::height_of_radar() const

View file

@ -58,7 +58,7 @@ uint16_t ProductSymbologyBlock::number_of_layers() const
return p->numberOfLayers_;
}
const std::vector<std::shared_ptr<Packet>>&
std::vector<std::shared_ptr<Packet>>
ProductSymbologyBlock::packet_list(uint16_t i) const
{
return p->layerList_[i];