Re: pfDBase question
John Rohlf (jrohlf++at++tubes)
Mon, 12 Feb 96 10:05:53 PST
>
>
> In Performer 2.0 the man pages of pfDBase mention the following:
>
> > If a database function has been specified by pfDBaseFunc, it must call
> > pfDBase to carry out default IRIS Performer database processing. pfDBase
> > should only be called from within the DBASE callback in the DBASE process
> > just like pfCull and pfDraw should only be called in the pfChannel CULL
> > and DRAW callbacks (pfChanTravFunc) respectively. If a database function
> > has not been specified or is NULL, IRIS Performer automatically calls
> > pfDBase from pfFrame.
>
> Now suppose that my DBASE callback function takes more than a frame to complete.
> Lets say 20 frames as an example. This could be possible when loading a big terrain tile. This will have the consequence that the pfDBase
> function will also be called only every 20 frames instead of every frame.
> ( I know it is a bit unrealistic to say the my DBASE callback will allways
> take 20 frames to complete but lets assume that for this example ).
>
> I would like to know what are the consequences on the "default IRIS Performer
> database processing" when this arises. Does this means that minor changes to
> the scene graph that may have been made in the APP process will be also delayed until pfDBase is called?
>
> What is the exact role of the pfDBase function beside carrying user
> specified pfBuffer requests?
The default DBASE processing is to free()/afree() all memory
that was pfDeleted/pfAsyncDeleted so the time-critical APP_CULL_DRAW
pipeline is not impacted. Unless you are really tight on memory
I don't see any problems with DBASE going away for a long time.
This archive was generated by hypermail 2.0b2
on Mon Aug 10 1998 - 17:52:24 PDT