Owns the backend and allocators. The pointer components alias concrete members of this same object, so instances must be declared with the TARGET attribute and must never be copied or assigned.
| Type | Visibility | Attributes | Name | Initial | |||
|---|---|---|---|---|---|---|---|
| class(base_backend_t), | public, | pointer | :: | backend | => | null() | |
| class(allocator_t), | public, | pointer | :: | allocator | => | null() | |
| type(allocator_t), | public, | pointer | :: | host_allocator | => | null() | |
| type(cuda_backend_t), | public | :: | cuda_backend | ||||
| type(cuda_allocator_t), | public | :: | cuda_allocator | ||||
| type(omptgt_backend_t), | public | :: | omptgt_backend | ||||
| type(omptgt_allocator_t), | public | :: | omptgt_allocator | ||||
| type(omp_backend_t), | public | :: | omp_backend | ||||
| type(allocator_t), | public | :: | omp_allocator |
| Type | Intent | Optional | Attributes | Name | ||
|---|---|---|---|---|---|---|
| class(backend_setup_t), | intent(inout), | target | :: | self | ||
| type(mesh_t), | intent(inout), | target | :: | mesh |