nexrad_decode/messages/
volume_coverage_pattern.rs1use std::io::Read;
11
12mod definitions;
13pub use definitions::*;
14
15mod header;
16pub use header::Header;
17
18mod message;
19pub use message::Message;
20
21mod elevation_data_block;
22pub use elevation_data_block::ElevationDataBlock;
23
24use crate::result::Result;
25use crate::util::deserialize;
26
27pub fn decode_volume_coverage_pattern<R: Read>(reader: &mut R) -> Result<Message> {
29 let header: Header = deserialize(reader)?;
30
31 let mut elevations: Vec<ElevationDataBlock> = Vec::new();
32 for _ in 0..header.number_of_elevation_cuts {
33 elevations.push(deserialize(reader)?);
34 }
35
36 let message = Message::new(header, elevations);
37
38 Ok(message)
39}