diff --git a/docs/configuration_file.md b/docs/configuration_file.md index 6bb4174f..d4cab6b8 100644 --- a/docs/configuration_file.md +++ b/docs/configuration_file.md @@ -10,13 +10,14 @@ * `type` - type of diagram, one of [`class`, `sequence`] * `glob` - list of glob patterns to match source code files for analysis * `include_relations_also_as_members` - when set to `false`, class members for relationships are rendered in UML are skipped from class definition (default: `true`) +* `generate_method_arguments` - determines whether the class diagrams methods contain full arguments (`full`), are abbreviated (`abbreviated`) or skipped (`none`) * `using_namespace` - similar to C++ `using namespace`, a `A::B` value here will render a class `A::B::C::MyClass` in the diagram as `C::MyClass` * `include` - definition of inclusion patterns: * `namespaces` - list of namespaces to include * `relationships` - list of relationships to include * `entity_types` - list of entity types to include (e.g. `class`, `enum`) * `scopes` - list of visibility scopes to include (e.g. `private`) -* `exclude` - definition of exclusion patterns: +* `exclude` - definition of excqlusion patterns: * `namespaces` - list of namespaces to exclude * `relationships` - list of relationships to exclude * `entity_types` - list of entity types to exclude (e.g. `class`, `enum`) @@ -24,3 +25,48 @@ * `plantuml` - verbatim PlantUML directives which should be added to a diagram * `before` - list of directives which will be added before the generated diagram * `after` - list of directives which will be added after the generated diagram + + +## Example complete config + +```yaml +# Directory containing the compile_commands.json file +compilation_database_dir: debug +# The directory where *.puml files will be generated +output_directory: docs/diagrams +# Set this as default for all diagrams +generate_method_arguments: none +# The map of diagrams - keys are also diagram file names +diagrams: + main_package: + # Include this diagram definition from a separate file + include!: uml/main_package_diagram.yml + config_class: + type: class + # Do not include rendered relations in the class box + include_relations_also_as_members: false + # Limiting the number of files to include can significantly + # improve the generation time + glob: + - src/common/model/*.h + - src/common/model/*.cc + - src/class_diagram/model/*.h + - src/class_diagram/model/*.cc + include: + # Only include entities from the following namespaces + namespaces: + - clanguml::common::model + - clanguml::class_diagram::model + exclude: + # Do not include private members and methods in the diagram + scopes: + - private + # Entities from this namespace will be shortened + # (can only contain one element at the moment) + using_namespace: + - clanguml::class_diagram::model + plantuml: + # Add this line to the beginning of the resulting puml file + before: + - 'title clang-uml class diagram model' +``` \ No newline at end of file