some question about include file

Hi.
I were new to the Open CASCADE, and when I explored the source code I found that the include file was so strange, sometime be the .ixx, sometime be the .jxx, something be the .hxx. Why make the include file so complexity. Could anybody told me something about that?
thanks

Rob Bachrach's picture

The WOK user's guide has a description of the generated file
extensions:

.hxx - this is the user header file to be included by your C++ code

.cxx - this is the actual C++ implementation code compiled into the
OpenCASCADE library

.lxx - these are inline methods included by the .hxx file. This
keeps the implementation of inline methods out of the user header
file.

.gxx - this is the actual C++ implementation code for generic classes.
The same class will never have both a .cxx and .gxx.

.ixx - user head file for an entire package included by the package
level .cxx file

.jxx - user header file for secondary classes of a package included
by the package level .cxx file.

Note that, in general, the only include file you are directly
concerned with including in your code is the .hxx file.