mark_leafNode Subroutine

private subroutine mark_leafNode(me, node_pos)

Small helping routine to keep track of leaf nodes.

Todo

HK: Originally this operation was inlined in create_children in a few places. Need to check for performance impact? Readability was not hurt too much by this, but it was changed into a flag and final decision, which in my opinion did not improve the readability as the reader has to track down the location where the final decision is taken, and introduces an additional if. It might be that the compiler is smart enough on both variants but anyway, I would prefer such a small routine if you think inlining is too burdensome. We should have an eye on the performance, though.

Arguments

Type IntentOptional Attributes Name
type(sdr_protoTree_type), intent(inout) :: me

Property bit mask to set the leaf bit in

integer, intent(in) :: node_pos

Calls

proc~~mark_leafnode~~CallsGraph proc~mark_leafnode mark_leafNode sdr_set_nodeprop_bit sdr_set_nodeprop_bit proc~mark_leafnode->sdr_set_nodeprop_bit

Called by

proc~~mark_leafnode~~CalledByGraph proc~mark_leafnode mark_leafNode proc~create_children~2 create_children proc~create_children~2->proc~mark_leafnode proc~sdr_build_prototree sdr_build_protoTree proc~sdr_build_prototree->proc~create_children~2 program~seeder seeder program~seeder->proc~sdr_build_prototree