[CsMain] Why SCF?

Denis Washington <[email protected]>
Newsgroups gmane.comp.graphics.crystalspace.general
Message-ID <[email protected]>
  Hi,

Being relatively new to CrystalSpace, I digged a bit deeper into the 
User's Manual again and came across the chapter about SCF. While having 
read it from beginning to end, I still don't have any clue about what 
this mechanism does bring to the table. I mean, what is the benefit to 
just declaring the implementing class itself and using that instead of 
an extra SCF interface?

I read something in the introduction about being able to do let SCF 
objects communicate between processes with COM and CORBA and the like, 
but why should somebody do that? It's a game engine, after all! In 99% 
of the case, a game does not have to integrate with its environment. 
(Maybe with other instances of itself running on other machines for 
multiplayer, but this should probably be the job of a network subsystem, 
not of a basic object framework.)

I also don't grasp the versioning argument. The manual says "if it 
happened that you compiled the shared library with a slightly different 
version of [concrete class] (that, say, had one member variable fewer) 
you will end up with a SIGSEGV crash." Isn't that what the d-pointer 
idiom [1] is for? I see no reason how SCF solves this better.

So, why SCF?

Regards,
Denis

[1] http://jatshergill.com/blog/?p=212

------------------------------------------------------------------------------
Download new Adobe(R) Flash(R) Builder(TM) 4
The new Adobe(R) Flex(R) 4 and Flash(R) Builder(TM) 4 (formerly 
Flex(R) Builder(TM)) enable the development of rich applications that run
across multiple browsers and platforms. Download your free trials today!
http://p.sf.net/sfu/adobe-dev2dev

_______________________________________________
Crystal-main mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/crystal-main
Unsubscribe: mailto:[email protected]?subject=unsubscribe
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.