Archived

This forum has been archived. Please start a new discussion on GitHub.

problem aboiut stream hierarchy

I am studying Ice's source code. I have noticed that there are the following class hierarchy about steam:
1)
::IceInternal::Buffer
::IceInternal::BasicStream

::IceInternal::BasicInputStream/::IceInternal::BasicOutputStream

2)
::Ice::InputStream/::Ice::OutputStream
::Ice::InputStreamI/::Ice::OutputStreamI

but strangely, in the real code of Ice, only ::IceInternal::Buffer/::IceInternal::BasicStream are used and the other classes don't be really used! why ?

Comments

  • marc
    marc Florida
    The IceInternal classes are highly optimized for our generated stubs and skeletons. They don't follow the regular Ice language mapping rules (for example, they are stack allocated, and not reference counted like all other Ice classes). They should not be used for user code, as they are Ice internal classes only, and might change without notice. Instead, user code should use the documented stream classes in the Ice namespace.
  • marc wrote:
    ...They should not be used for user code, as they are Ice internal classes only, and might change without notice. Instead, user code should use the documented stream classes in the Ice namespace.

    Thanks. I know that they are just used internally in Ice. I am just interested in the implementation of Ice and now studying Ice source code.