Re: [Fresco-devel] OSG-Prototype
cinap_lenrek <[email protected]> Wed, 21 Jul 2004 15:41:09 +0200
| Newsgroups | gmane.comp.video.fresco.devel |
|---|---|
| Message-ID | <[email protected]> |
Stefan Seefeld wrote: > Friedemann Gerold wrote: > >> 2nd, if the client passes server-objects to some other server-object >> we should avoid to pass corba-references. so my idea was to pass >> unique id's. >> >> this means: >> >> button.setChild(text.id()); >> window.setChild(button.id()); >> desktop.addChild(window.id()); >> >> on server-side we resolve this id's to pointers to the Impl-objects. >> then we can use internal interfaces directly without passing all thing >> over CORBA. > > > while this is indeed the idea behind the efford to encapsulate the > scene-graph > inside the server, I don't see how passing an id is any better than > passing > an object reference (in fact, where is the difference ?). CORBA-object-ref's are untrusted. iirc here is no way to check where the object on the other side is implemented without calling into such an object. a call to an CORBA-object is dangerous because you don't know where you relly call in. what happens if the client instances his own implementation and does a big sleep(100000000000); in it? The Idea is to use CORBA only for the public client-interface. If we want to do things on the server-side internally (for example connecting nodes), we can bypass CORBA by using nativ C++ method calls on this Impl-Classes. we don't need to make the whole interface public to CORBA. > Passing objects allows for some type-system to kick in directly at the > communication layer, so the server backend doesn't need to care. hm... don't get it :-/ sorry > Beside that, I agree: what should be passed around should be much more > decoupled from the scene-graph objects (the 'servants' as they are called > in CORBA slang). the client creates and collects components like windows, layouts and controls. and we need something for custom drawing. this "servants" will use osg... they will create osg-nodes and manipulating them on the osg-scene-graph. >> what level of scenegraph the client should manipulate? in my draft i >> build my own tree of hight-level objects the client can manipulate. >> is this ok? > > I believe the client should be able to construct and manipulate the > scene graph > (well, a subgraph he is authorized to access). This really boils down > to methods > such as 'begin()' and 'end()' for child iteration, > and 'insert()', 'remove()' for > tree manipulation. ok > Another point you address (and which we touched on in the last IRC) is > the > separation between graphic node and GUI model. I think everything > agrees that > the application logic is kept inside the clients, but what about the > GUI models ? > Who maintains the widget state ? (and, assuming the answer is 'the > server': > how rich should these models become ? In the 'old' fresco API they > were really > minimalist, but people complained that this API was arcane and > non-intuitive). here, the MVC come in mind... i don't know... let's find a "intiutive" gui-model ;-) > Regards, > Stefan many thanx! cinap_lenrek > _______________________________________________ > Fresco-devel mailing list > [email protected] > http://lists.fresco.org/cgi-bin/listinfo/fresco-devel > >