| 423 | template <typename Device, typename T> |
| 424 | struct SelectFunctorBase { |
| 425 | void operator()(const Device& d, typename TTypes<T>::Flat out, |
| 426 | typename TTypes<bool>::ConstFlat cond_flat, |
| 427 | typename TTypes<T>::ConstFlat then_flat, |
| 428 | typename TTypes<T>::ConstFlat else_flat) { |
| 429 | Assign(d, out, cond_flat.select(then_flat, else_flat)); |
| 430 | } |
| 431 | }; |
| 432 | |
| 433 | template <typename T> |