subroutinedraw_graphsprivate
subroutine draw_graphs(p, s, relations, jobs, keep, drawings, descriptions, failed, threads)
Lay out and draw jobs. A graph that turns out to have nothing to show gets no drawing.
Arguments
| Name | Type | Intent | Attributes | Description |
|---|---|---|---|---|
| p | type(project_t) | in | the project | |
| s | type(settings_t) | in | the settings | |
| relations | type(adjacency_t) | in | dimension(NUM_RELATIONS) | the relations |
| jobs | type(graph_job_t) | in | dimension(:) | the graphs |
| keep | logical | in | whether to give the descriptions too | |
| drawings | type(string_t) | inout | dimension(:) | the drawing of each graph |
| descriptions | type(string_t) | inout | dimension(:) | the description of each graph, with |
| failed | logical | out | dimension(:) | whether the layout of each graph failed |
| threads | integer | in | how many threads to use |
Calls
Source
Show the code
subroutine draw_graphs(p, s, relations, jobs, keep, drawings, descriptions, failed, threads)
type(project_t), intent(in) :: p !! the project
type(settings_t), intent(in) :: s !! the settings
type(adjacency_t), intent(in) :: relations(NUM_RELATIONS) !! the relations
type(graph_job_t), intent(in) :: jobs(:) !! the graphs
logical, intent(in) :: keep !! whether to give the descriptions too
type(string_t), intent(inout) :: drawings(:) !! the drawing of each graph
type(string_t), intent(inout) :: descriptions(:) !! the description of each graph, with `keep`
logical, intent(out) :: failed(:) !! whether the layout of each graph failed
integer, intent(in) :: threads !! how many threads to use
failed = .false.
call progress_start('Laying out graphs', size(jobs))
!$omp parallel num_threads(threads) default(shared)
call draw_some(p, s, relations, jobs, keep, drawings, descriptions, failed)
!$omp end parallel
call progress_finish()
end subroutine draw_graphs