Code Adapter
Any code adapter consists of two major modules:
MpCCI Coupling Manager
After the codes have been launched by the MpCCI environment the first call of the code’s user-subroutine initiates the MpCCI coupling manager. First those element group parts have to be identified, which take part in the coupling process. This information will be passed from the MpCCI configuration file to the coupling manager.
In most coupled simulations only two codes are coupled and have to exchange quantities. Between the transfer the two codes either run serial (one after the other) or in parallel (both run at the same time). The faster code has to wait for the slower one.
The coupling manager knows about the current status of its own code. Depending on this internal status and the given MpCCI configuration data the manager will either 
 | provide mesh information to the MpCCI Coupling Server (during the initialization phase) or
|  | send and receive quantity values. |

It is under responsibility of the coupling managers of all coupled codes to keep a consistent state within the running application.
MpCCI Code specific Driver Routines
Access to physical quantities of a code is strongly implementation dependent. In contrast to the general coupling manager there are code specific drivers consisting of ‘Put’ and ‘Get’ routines knowing the details of the data structures for their code.

|