Examples
========

To understand how settings from all levels are merged we can use the following layout for common, user and project levels:

 > common_settings/
    > waivers.xml

    > preferences.ini

    > eclipse.ini

    > run_sim.launch

 > user_settings/
    > preferences.ini

    > run_compile.launch

 > project/
    > .dvt/
 	   > ...........
      
      > waivers.xml

DVT is invoked using the following command:

.. code-block::

 dvt.sh -heap_size 4096m

For the above example DVT will start using the flags specified in the common level *eclipse.ini* but the memory allocation threshold will be the one specified in the command (4096 MB) because the command line arguments have precedence.

The DVT session will contain the *run_sim* run configuration and also the *run_compile* run configuration because these are accumulated from all levels.

Workspace preferences will result from merging the *preferences.ini* from both common and user levels but if there are any conflicts the user level preferences will have precedence. Non-conflicting preferences are accumulated from both levels.

When operating on the opened project, the compilation problems will be waived using the accumulated waivers from common level and project level (project/.dvt/waivers.xml).

