Nodes of different colours represent the following:
Solid arrows point from a procedure to one which it calls. Dashed
arrows point from an interface to procedures which implement that interface.
This could include the module procedures in a generic interface or the
implementation in a submodule of an interface in a parent module.
Where possible, edges connecting nodes are
given different colours to make them easier to distinguish in
large graphs.
Source Code
subroutine test_get_total(this)class(MpiTestMethod),intent(inout)::thistype(DistributedMeter)::distributedtype(DistributedReal64)::distributed_totaldistributed=DistributedMeter(MpiTimerGauge())select case(this%getProcessRank())case(0)call distributed%add_cycle(1.0_REAL64)call distributed%add_cycle(3.0_REAL64)case(1)call distributed%add_cycle(2.0_REAL64)end select call distributed%reduce(this%getMpiCommunicator(),0._REAL64)distributed_total=distributed%get_stats_total()if(this%getProcessRank()==0)then@assertEqual(6.0,distributed_total%total)@assertEqual(2.0,distributed_total%min)@assertEqual(4.0,distributed_total%max)@assertEqual(1,distributed_total%min_pe)@assertEqual(0,distributed_total%max_pe)@assertEqual(2,distributed_total%num_pes)end if end subroutine test_get_total