On Mon, Mar 03, 2008 at 05:27:46PM -0500, Reed Hedges wrote: > I was under the impression that, for the most part, you are always going > to be working through Wrapper objects. Is this true?
The ultimate purpose of the wrappers is support marshaling for cross-language and cross-host method calls. Since C++ doesn't have a built in interception facility, you have to insert some stub code in between the caller and the target. One way to do this would be remote objects like we had in s4, but that doesn't handle the cross-language/cross-thread cases very well. Instead, s5 has very lightweight wrappers which manage access to the underlying object. So yes, in normal code you almost always want to be working through the wrapper classes, since they make everything else work (marshaling, reference counting, promises). I'm willing to entertain naming schemes other than "-Wrapper", I just don't want it to be the stem name for the simple reason that due to the semantics of C++ it would be ambigious whether you are working with a smart pointer or a copy of the actual object. Possible alternatives: VobjectWrapper VobjectHandle VobjectStub VobjectPtr VobjectRef -- [ Peter Amstutz ][ [EMAIL PROTECTED] [EMAIL PROTECTED] [Lead Programmer][Interreality Project][Virtual Reality for the Internet] [ VOS: Next Generation Internet Communication][ http://interreality.org ] [ http://interreality.org/~tetron ][ pgpkey: pgpkeys.mit.edu 18C21DF7 ]
signature.asc
Description: Digital signature
_______________________________________________ vos-d mailing list vos-d@interreality.org http://www.interreality.org/cgi-bin/mailman/listinfo/vos-d