flowparser_sflow/counter_records/
virt_node.rs1use nom::IResult;
2use nom::number::complete::{be_u32, be_u64};
3use serde::{Deserialize, Serialize};
4
5#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize)]
6pub struct VirtNode {
7 pub mhz: u32,
8 pub cpus: u32,
9 pub memory: u64,
10 pub memory_free: u64,
11 pub num_domains: u32,
12}
13
14pub(crate) fn parse_virt_node(input: &[u8]) -> IResult<&[u8], VirtNode> {
15 let (input, mhz) = be_u32(input)?;
16 let (input, cpus) = be_u32(input)?;
17 let (input, memory) = be_u64(input)?;
18 let (input, memory_free) = be_u64(input)?;
19 let (input, num_domains) = be_u32(input)?;
20
21 Ok((
22 input,
23 VirtNode {
24 mhz,
25 cpus,
26 memory,
27 memory_free,
28 num_domains,
29 },
30 ))
31}