From: Richard R. <sf...@ol...> - 2004-09-02 18:16:13
|
[...] > > The second proposed change is specific to joysticks: I suggest= =20 > >that we not initialize the joysticks until and unless the application=20 > >has defined a joystick callback. This is what OpenGLUT does, and I=20 > >think it's a good idea. It costs one variable in "fgState" and a check= =20 > >in the joystick callback definition function; it saves us a rather=20 > >lengthy function call on initialization in the cases where the=20 > >application does not care about joysticks. The main reason that I implemented that in OpenGLUT was to shut up warnings about missing joysticks when running, e.g., the shapes demo. Programs that don't use a resource shouldn't get uppity about the resource not being available. > > The third proposed change is to make "fg" functions that are=20 > >invoked only from the file in which they are defined "fgh" and declare= =20 > >them static. I don't see this having any impact on performance and I=20 > >see it reducing the namespace size. I also see it making the code=20 > >simpler to maintain because when we see a static function we know it=20 > >isn't being referred to from somewhere else. If the commits are done at fine granularity, I should catch any that you make {static} that we missed in OpenGLUT. But if they go in in one or two large batches, I'd appreciate hearing about any that you notice that OpenGLUT missed. [...] > > - Remove the "freeglut_assert_ready" and=20 > >"freeglut_assert_window" invocations from places where the code can do= =20 > >something reasonable even if the assertion would fail I think that we discussed this some last year on the freeglut lists. The issue that I have (mentioned recently in openglut-devel, so I'll just cut to the chase) is whether assert() is the right mechanism. In many cases in freeglut (and OpenGLUT) I think that it is not. This is not quite the same issue as wehther a reasonable continuation exists. --=20 "I probably don't know what I'm talking about." http://www.olib.org/~rkr/ |