pub(crate) fn zero_if_data(ifdata_vec: &mut Vec<IfData>) {
    for ifdata in ifdata_vec {
        if let Some(mut decoded_ifdata) = ifdata::A2mlVector::load_from_ifdata(ifdata) {
            if let Some(canape_ext) = &mut decoded_ifdata.canape_ext {
                if let Some (link_map) = &mut canape_ext.link_map {
                    // remove address and data type information, but keep the symbol name
                    link_map.address = 0;
                    link_map.datatype = 0;
                    link_map.bit_offset = 0;
                    link_map.datatype_valid = 0;

                    decoded_ifdata.store_to_ifdata(ifdata);
                }
            } else if let Some(asap1b_ccp) = &mut decoded_ifdata.asap1b_ccp {
                if let Some(dp_blob) = &mut asap1b_ccp.dp_blob {
                    dp_blob.address_extension = 0;
                    dp_blob.base_address = 0;
                }
            }
        }
    }
}
// zero out incorrect information in IF_DATA for MEASUREMENTs / CHARACTERISTICs / AXIS_PTS that were not found during update
zero out incorrect information in IF_DATA for MEASUREMENTs / CHARACTERISTICs / AXIS_PTS that were not found during update
zero out incorrect information in IF_DATA for MEASUREMENTs / CHARACTERISTICs / AXIS_PTS that were not found during update
pub(crate) fn zero_if_data(ifdata_vec: &mut Vec<IfData>) {
    for ifdata in ifdata_vec {
        if let Some(mut decoded_ifdata) = ifdata::A2mlVector::load_from_ifdata(ifdata) {
            if let Some(canape_ext) = &mut decoded_ifdata.canape_ext {
                if let Some (link_map) = &mut canape_ext.link_map {
                    // remove address and data type information, but keep the symbol name
                    link_map.address = 0;
                    link_map.datatype = 0;
                    link_map.bit_offset = 0;
                    link_map.datatype_valid = 0;
                    decoded_ifdata.store_to_ifdata(ifdata);
                }
            } else if let Some(asap1b_ccp) = &mut decoded_ifdata.asap1b_ccp {
                if let Some(dp_blob) = &mut asap1b_ccp.dp_blob {
                    dp_blob.address_extension = 0;
                    dp_blob.base_address = 0;
                }
            }
        }
    }
}
pub ( crate ) fn zero_if_data ( ifdata_vec : & mut Vec < IfData > ) { for ifdata in ifdata_vec { if let Some ( mut decoded_ifdata ) = ifdata :: A2mlVector :: load_from_ifdata ( ifdata ) { if let Some ( canape_ext ) = & mut decoded_ifdata . canape_ext { if let Some ( link_map ) = & mut canape_ext . link_map { // remove address and data type information, but keep the symbol name link_map . address = 0 ; link_map . datatype = 0 ; link_map . bit_offset = 0 ; link_map . datatype_valid = 0 ; decoded_ifdata . store_to_ifdata ( ifdata ) ; } } else if let Some ( asap1b_ccp ) = & mut decoded_ifdata . asap1b_ccp { if let Some ( dp_blob ) = & mut asap1b_ccp . dp_blob { dp_blob . address_extension = 0 ; dp_blob . base_address = 0 ; } } } } }
zero out incorrect information in IF_DATA for MEASUREMENTs / CHARACTERISTICs / AXIS_PTS that were not found during update
zero out incorrect information in IF_DATA for MEASUREMENTs / CHARACTERISTICs / AXIS_PTS that were not found during update
ifdata_vec
&mut Vec<IfData>