On Jun 21, 2012, at 12:46 AM, Chris Foster wrote:

> On Thu, Jun 21, 2012 at 5:03 PM, Larry Gritz <[email protected]> wrote:
>> The "dynamic dispatch" is kind of ugly.
> 
> It doesn't have to be.  You just need a new iterator type which doesn't
> have the type of the underlying pixels baked into it:

...

> Ok, you can definitely convince me that supporting the cross product of
> float, half, uint8 and uint16 will do for Stefan's first cut.  Stefan:
> please do it this way so we can get something in soon (incremental
> development is A Good Thing (TM)!)

I'm ok with Stefan keeping what he has (the full cross-product) for the sake of 
his initial code review.  We can go back and fix/simplify the "over" internals 
as we reach final consensus in the coming days.  I want to get a few more 
people's opinions first.


> I'm not convinced that supporting all types is impossible or
> even that technically expensive in extra lines of code.  I still think
> we should do it.

I'm willing to keep an open mind about this, but I think we should tackle it as 
a separate issue, design reviewed and code reviewed separately, and not burden 
Stefan with solving it.

My recommendation is:

1. Have Stefan submit his pull request now.

2. In the next few days, consider the issue of restricting IBA functions to 3 
or 4 common buffer types, and rejecting the rest.  It's a small change (just 
deleting some lines from several switch statements) if we decide to go this 
route.

3. After that, if somebody (not Stefan, who has other fish to fry!) wants to 
propose or prototype a more detailed design for restoring IBA functionality to 
handle all types (common types fast with specialization, the rest slow with 
some general mechanism), we can consider the pros and cons of that method. 

--
Larry Gritz
[email protected]


_______________________________________________
Oiio-dev mailing list
[email protected]
http://lists.openimageio.org/listinfo.cgi/oiio-dev-openimageio.org

Reply via email to