Skip to content
  • Kenneth Moreland's avatar
    Fix issue with const types in Thrust array management · f7789f0e
    Kenneth Moreland authored
    Previously, there was a declaration ConstArrayPortalFromThrust<const T>
    in ArrayManagerExecutionThrustDevice. This proved problematic because
    values read from the array in the worklet were typed as const T rather
    than simply T. Any Vec or Matrix built from that type would then fail
    because they are not meant to work with a const value (which means they
    have to be set on construction and never changed.
    
    Instead, declare ConstArrayPortalFromThrust<T> and internally set all
    the Thrust pointers to have type const T. Also declare other thrust
    pointers used as method parameters to have const T rather than T. This
    should work as conversion from T to const T should be fine, but not the
    other way around.
    f7789f0e