canvas icon indicating copy to clipboard operation
canvas copied to clipboard

Shared image

Open 197g opened this issue 1 year ago • 0 comments

Implementing two new buffers in texel which interact through the existing Texel type:

  • CellBuffer, keeping its data in a shared Rc and supporting concurrent modification.
  • AtomicBuffer, keeping its data in a shared Arc and supporting parallel modification in a manner that is potentially wait-free if the underlying platform primitives allow it. The effect of modifications is only specified if the user avoids aliasing but it is always sound.

Unfortunately the Image and derived layout-imbued buffers heavily depend on as_slice() -> &[P] which neither of these new types can provide. Even RawImage, the underlying private primitive, depends on traits that offer these methods as all byte-access is done through a direct byte slice for efficiency. Since I don't have a concrete idea on how to best approach this conflict, let's just put that for another time. This also includes lifting the types in canvas where it could be used for the shader / conversion code.

197g avatar Apr 06 '24 19:04 197g