We can separate three main layers in the CIP architecture:
- The Application layer: this is the layer that the user of the library should interact with. It contains all the tools that are exposed in the library.
- The Core Libraries layer: core C++ classes that give support to the different tools from the Application layer.
- The External Libraries layer: external libraries required by CIP. CIP relies on some of the most commonly used open source C++ libraries for medical imaging software development, such as VTK, ITK or Teem.