> Patrik Stridvall <[EMAIL PROTECTED]> writes:
>
> > I have said it before and I say it again, the device
> > driver interface is wrongly designed since fails to
> > realize that there are two fundamentally different
> > kinds of drivers. This is the _teoretical_ reason.
>
> If they are so fundamentally different, why do you need to leave the
> possibility of passing both types of coordinates to all drivers?
Primarily for transitional reasons. I'm not sure if it makes sense
to have drivers doing both at all. Future will tell, but we
need it until when.
> They are *not* fundamentally different at all; drivers take logical
> coordinates, and do the mapping in the way most appropriate to the
> driver. This may mean not doing anything, doing software conversion,
Sure but the point is that there are one kind of drivers that
do nothing (metafile) and one kind that do software conversions.
That _is_ the fundamental difference.
> someday maybe using the graphics accelerator to do part of the job,
> etc.
Indeed, but a driver the uses a graphics accelerator for mapping
is not an extension of an existing driver but a _new_ driver
of the type that takes logical coordinates. Sure a lot
of code can probably be shared but that doesn't mean it
isn't fundamentally a new driver.
> > In short, I think there are plenty of reasons both to do
> > things differently than we do now as well as reasons to
> > do things like I have done in my patch.
>
> In short your reasons are:
You forgot:
It allows sharing of code between drivers,
which will be aven more important when we
support world transforms. See below.
> it's easier to maintain (which I strongly
> disagree with),
You haven't really said why except for pointing out some potential
problem that have obvious solutions.
I think this is the main point of our disagreement.
However I can't argue against "I strongly disagree with"
without good explaination.
I still think you don't see the forest because
of all the trees but I can't explain it better
than I have done. Please specify your problems.
> and it's faster (which is not proven at all).
I ask again:
How are you going to support world transform
which uses float without having normal application
paying the price of this? Specifially be able
to run without FPU.
Are you going to bloat the X11 driver with that code?
It will probably look really nice and cosy. NOT!
Why not share the code in a translation layer to
avoid that and as a side effect allow other drivers
can use it?
> > PS. Do not claim that lack of optimizations is not
> > an issue. We have all seen the sucky benchmarks.
> > Sure blaiming X is convienient but it isn't the
> > whole story.
>
> Fine; come back when you have benchmarks demonstrating the large
> performance gains brought by your solution.
I will see what I can do.
> Theoretical optimizations
> do not mean anything.
On that point at least we agree.