34 typedef Kokkos::DualView<const ValueType*, DeviceType> input_dual_view_type;
35 typedef typename input_dual_view_type::t_dev::non_const_type out_dev_view_type;
36 typedef typename input_dual_view_type::t_host::non_const_type out_host_view_type;
38 out_dev_view_type output_view_dev
39 (
const_cast<ValueType*
> (input_dv.view_device().data ()),
40 input_dv.view_device().extent (0));
41 out_host_view_type output_view_host
42 (
const_cast<ValueType*
> (input_dv.view_host().data ()),
43 input_dv.view_host().extent (0));
45 Kokkos::DualView<ValueType*, DeviceType> output_dv(output_view_dev,output_view_host);
46 if(input_dv.need_sync_host()) output_dv.modify_device();
47 if(input_dv.need_sync_device()) output_dv.modify_host();