Re: order of buffer operations in DBASE process
John Rohlf (jrohlf++at++tubes)
Fri, 9 Feb 96 12:23:44 PST
>
> HI,
>
> I am observing a wrong behaviour in the following situations - may be
> due to my mistake.
>
> I have the following scene graph created in APP process:
>
>
> root
> |
> switch
> |
> ----------------
> | | |
> scene0 scene1 scene2
>
>
> I need to insert another sceneX as the X child of switch in the DBASE process.
> In order to maintain multi-process sync between the above scene order and the
> scene order in a UI, I have to do the insertion as follows:
>
> DBASE process callback:
>
> - create newSwitch and set its switch value
> - for all scenes
> - buffer remove scene from switch
> - buffer add scene to newSwitch
> - buffer insert sceneX in newSwitch
> - buffer remove switch and async delete switch from root
> - buffer add newSwitch to root
> - merge buffer
>
> I would expect newSwitch to have children in the same order as the old switch,
> but instead the order is reversed! SceneX is correctly inserted, but the
> rest of the scenes are in reverse order. Even if I don't insert any new scene,
> the order is still reversed.
>
> Anybody has any ideas on this?
>
It appears that the order of pfBuffer* commands is not properly
preserved. The order is not exactly reversed but is 0, N-1, N-2, N-3...
This archive was generated by hypermail 2.0b2
on Mon Aug 10 1998 - 17:52:23 PDT