-
Notifications
You must be signed in to change notification settings - Fork 197
Image::Buffer*: Interface & naming #211
Copy link
Copy link
Closed
Description
Thijs is yelling in my ear and won't let me go home until I write this up...
So he ran into a few understanding hiccups on figuring out MRtrix3's image access classes, and got me wondering about whether things could be improved a little bit. Let's enumerate these for the sake of responses:
- Naming of Image::Buffer; I'm not a big fan of having Image::Buffer then Image::Buffer*, as it appears as though the former is a base class of the latter, which isn't the case; it's a different mechanism for providing access to image data. Maybe Image::Buffer should in fact be Image::BufferDisk; that way it's explicit both that it provides access to image files, and that it lives alongside e.g. BufferScratch rather than above/below?
- Naming of Image::Buffer (again): a 'buffer' could be thought of as a block of data; in our case, image intensities. But our Image::Buffer* also contains header information. So maybe these should instead be called Image::Image*?
- I'm sure I've discussed this before: Having a single class that is not templated, but will operate on any type of underlying Image::Buffer* and any data type. I still don't see any way to make it possible (at least not without an absurd amount of code branching), but he's pleading.
Reactions are currently unavailable