Change addStorageBuffer to addStorageBufferLoad/Store/LoadStore
Change the addStorageBuffer so that the caller can choose the access
mode matching the shader's buffer declaration (readonly, writeonly or
read-write). Backends such as Vulkan and D3D can use this to pick
tighter barriers or bind read-only buffers as SRVs.
Also refactor the common parts.
Task-number: QTBUG-146226
Change-Id: Ia1755e8046a85ac72624f9bffe21575f2c21ad4e
Reviewed-by: Paul Olav Tvete <paul.tvete@qt.io>
Reviewed-by: Andy Nichols <andy.nichols@qt.io>
Reviewed-by: Laszlo Agocs <laszlo.agocs@qt.io>