Block-Structured AMR Software Framework
Loading...
Searching...
No Matches
AMReX_FabDataType.H
Go to the documentation of this file.
1#ifndef AMREX_FAB_DATA_TYPE_H_
2#define AMREX_FAB_DATA_TYPE_H_
3#include <AMReX_Config.H>
4
5#include <AMReX_Concepts.H>
6#include <AMReX_TypeTraits.H>
7
8namespace amrex {
9
10template <typename T> struct FabDataType {};
11//
12template <MultiFabLike T>
13struct FabDataType<T>
14{
15 using fab_type = typename T::fab_type;
16 using value_type = typename T::value_type;
17};
18
19template <typename T>
21struct FabDataType<T>
22{
23 using fab_type = typename T::value_type::fab_type;
24 using value_type = typename T::value_type::value_type;
25};
26
27}
28
29#endif
Checks if a type is amrex::MultiFab-like (i.e., FabArray<FAB>, where FAB is a BaseFabType).
Definition AMReX_Concepts.H:26
Definition AMReX_Amr.cpp:50
typename T::value_type value_type
Definition AMReX_FabDataType.H:16
typename T::fab_type fab_type
Definition AMReX_FabDataType.H:15
Definition AMReX_FabDataType.H:10