# t00035 - PlantUML class diagram layout hints test case ## Config ```yaml compilation_database_dir: .. output_directory: puml diagrams: t00035_class: type: class glob: - ../../tests/t00035/t00035.cc using_namespace: - clanguml::t00035 include: namespaces: - clanguml::t00035 layout: Center: - up: Top - down: Bottom - left: Left - right: Right ``` ## Source code File t00035.cc ```cpp namespace clanguml { namespace t00035 { struct Top { }; struct Left { }; struct Center { }; struct Bottom { }; struct Right { }; } // namespace t00035 } // namespace clanguml ``` ## Generated UML diagrams ![t00035_class](./t00035_class.svg "PlantUML class diagram layout hints test case") ## Generated JSON models ```json { "diagram_type": "class", "elements": [ { "bases": [], "display_name": "clanguml::t00035::Top", "id": "2241062883697294772", "is_abstract": false, "is_nested": false, "is_struct": true, "is_template": false, "is_union": false, "members": [], "methods": [], "name": "Top", "namespace": "clanguml::t00035", "source_location": { "file": "../../tests/t00035/t00035.cc", "line": 4 }, "template_parameters": [], "type": "class" }, { "bases": [], "display_name": "clanguml::t00035::Left", "id": "242562856080127946", "is_abstract": false, "is_nested": false, "is_struct": true, "is_template": false, "is_union": false, "members": [], "methods": [], "name": "Left", "namespace": "clanguml::t00035", "source_location": { "file": "../../tests/t00035/t00035.cc", "line": 6 }, "template_parameters": [], "type": "class" }, { "bases": [], "display_name": "clanguml::t00035::Center", "id": "1933304541849408421", "is_abstract": false, "is_nested": false, "is_struct": true, "is_template": false, "is_union": false, "members": [], "methods": [], "name": "Center", "namespace": "clanguml::t00035", "source_location": { "file": "../../tests/t00035/t00035.cc", "line": 8 }, "template_parameters": [], "type": "class" }, { "bases": [], "display_name": "clanguml::t00035::Bottom", "id": "1646691079607377420", "is_abstract": false, "is_nested": false, "is_struct": true, "is_template": false, "is_union": false, "members": [], "methods": [], "name": "Bottom", "namespace": "clanguml::t00035", "source_location": { "file": "../../tests/t00035/t00035.cc", "line": 10 }, "template_parameters": [], "type": "class" }, { "bases": [], "display_name": "clanguml::t00035::Right", "id": "200121820090372322", "is_abstract": false, "is_nested": false, "is_struct": true, "is_template": false, "is_union": false, "members": [], "methods": [], "name": "Right", "namespace": "clanguml::t00035", "source_location": { "file": "../../tests/t00035/t00035.cc", "line": 12 }, "template_parameters": [], "type": "class" } ], "metadata": { "clang_uml_version": "0.3.6-31-g01ef3dc", "llvm_version": "Ubuntu clang version 15.0.6", "schema_version": 1 }, "name": "t00035_class", "relationships": [], "using_namespace": "clanguml::t00035" } ```