25 using Layout = FieldEntryLayout;
28 MUDA_GENERIC
auto layout()
const MUDA_NOEXCEPT {
return m_layout; }
29 MUDA_GENERIC
auto innermost_array_size()
const MUDA_NOEXCEPT
31 return m_innermost_array_size;
34 MUDA_GENERIC
FieldEntryLayoutInfo(Layout layout, uint32_t innermost_array_size = 32) MUDA_NOEXCEPT
36 m_innermost_array_size(layout == Layout::AoSoA ? innermost_array_size : 0)
38 MUDA_ASSERT(layout != Layout::RuntimeLayout,
39 "RuntimeLayout is not allowed to use when constructing FieldEntryLayoutInfo, because it's meaningless."
40 "RuntimeLayout is only used in template argument.");
42 MUDA_ASSERT((innermost_array_size & (innermost_array_size - 1)) == 0,
43 "innermost_array_size must be power of 2");
49 Layout m_layout = Layout::AoSoA;
50 uint32_t m_innermost_array_size = 32;
Definition field_entry_layout.h:24