Return node index for primary node_
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| type(onnx_node_type), | intent(in) | :: | nodes(:) |
Parsed ONNX nodes |
||
| integer, | intent(in) | :: | num_nodes |
Number of valid nodes and target layer id |
||
| integer, | intent(in) | :: | layer_id |
Number of valid nodes and target layer id |
Index of the found primary node, or 0 if not found
function find_primary_node_for_layer_id(nodes, num_nodes, layer_id) & result(node_index) !! Return node index for primary node_<id>, or 0 if not found. implicit none ! Arguments type(onnx_node_type), intent(in) :: nodes(:) !! Parsed ONNX nodes integer, intent(in) :: num_nodes, layer_id !! Number of valid nodes and target layer id integer :: node_index !! Index of the found primary node, or 0 if not found ! Local variables integer :: i, id_tmp !! Loop index and parsed node id candidate logical :: is_primary !! Whether current node matches primary pattern node_index = 0 do i = 1, num_nodes call parse_primary_layer_id(nodes(i)%name, id_tmp, is_primary) if(is_primary .and. id_tmp .eq. layer_id)then node_index = i return end if end do end function find_primary_node_for_layer_id